Научная статья на тему 'Параллельный итерационный кластерный анализ на основе алгоритма Forel'

Параллельный итерационный кластерный анализ на основе алгоритма Forel Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
411
59
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КЛАСТЕРНЫЙ АНАЛИЗ / CLUSTER ANALYSIS / ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯ / PARALLEL COMPUTING / ВЫЧИСЛИТЕЛЬНЫЙ ЭКСПЕРИМЕНТ / COMPUTATIONAL EXPERIMENT / КОМПЛЕКСНАЯ ДЕТАЛЬ / COMPLEX PART

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Янчуковский Владислав Николаевич, Сосинская Софья Семеновна

Рассматривается параллельная реализация алгоритма кластерного анализа FOREL. В качестве исходных данных для эксперимента выбран набор втулок, обрабатываемых на револьверных станках. Была поставлена задача разбить этот набор втулок на кластеры, соответствующие комплексным деталям, и проанализировать результаты, полученные в обычном и параллельном режимах.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Янчуковский Владислав Николаевич, Сосинская Софья Семеновна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

PARALLEL ITERATIVE CLUSTER ANALYSIS BASED ON FOREL ALGORITHM

The article deals with parallel realization of cluster analysis algorithm FOREL. Set of bushings machined by a turret lathe is used as source data. Source data is used for distinguishing clusters equal to complex parts. Outcome of computational experiment in series and parallel mode is analyzed.

Текст научной работы на тему «Параллельный итерационный кластерный анализ на основе алгоритма Forel»

R = RP

1--

%W

0,5

(8)

Анализ (8) и (1) показывает, что для снижения величины законтурного разрушения необходимо уменьшать ЛНС, количество скважин в группе, веере, диаметр заряда ВВ. В случае бурения скважин в пределах контура рудного тела величина разубоживания будет равна

Япл =

2R

2R + m

100 %,

(9)

где m - мощность рудного тела (т « к).

Для обеспечения нарушения законтура, не превышающего 0,5 м, в породах с размером от-

й

дельности 0,05-0,40 м, при Rp = 0,8м, = 2,7 по-

лучим для маломощных рудных тел

h(n +1)2 3(n +1)2 -13 '

W =

(10)

Использование приведенной методики и параметров БВР на рудниках ОАО «ППГХО» позволило доказать ее эффективность в плане обеспечения заданной степени дробления и снижения разу-боживания руд с 50-60 до 30-40 %. Учитывая большой объем (77 %) рудных тел мощностью до 2,6 м на месторождениях Стрельцовского рудного поля, внедрение подэтажно -камерной системы разработки позволит увеличить производитель-

ность добычи руд при низком разубоживании. Эффективность использования данной системы разработки будет определяться комплексно. Кроме параметров БВР необходимо определить рациональную высоту подэтажа, допустимую мощность рудного тела, геометрические параметры междукамерных и внутриблоковых целиков, технологию и параметры закладочных работ.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Тюпин В. Н. Повышение эффективности геотехнологии с использованием энергии взрыва при деформировании трещиноватых напряженных массивов горных пород : дис. ... докт. техн. наук. М. : ВНИПИПТ. 2002. 267 с.

2. Мосинец В. Н., Абрамов А. В. Разрушение трещиноватых и нарушенных горных пород. М. : Недра. 1982. 248 с.

3. Вовк А. А., Смирнов А. Г., Благодаренко Ю. А. О двух составляющих поля напряжений вблизи заряда ВВ // ФТПРПИ. 1976. № 6. С. 28-31.

4. Кутузов Б. Н., Тюпин В. Н. Определение размера зоны регулируемого дробления при взрыве заряда в трещиноватом массиве // Изв. ВУЗов. Горный журнал. 1974. № 8. С. 30-35

5. Тюпин В. Н. Методика расчета параметров БВР при подэтажно-камерной отбойке // Техн. прогресс в атом. пром. Сер.: ГМП. 1989. Вып. 7. С. 3-5.

УДК 004.75 Янчуковский Владислав Николаевич,

аспирант, Иркутский государственный технический университет, тел. 89501397468, e-mail: V.Yanchukovsky@gmail.com Сосинская Софья Семеновна,

к. т. н., доцент, Иркутский государственный технический университет, e-mail: sosinskaya@mail.ru

ПАРАЛЛЕЛЬНЫЙ ИТЕРАЦИОННЫЙ КЛАСТЕРНЫЙ АНАЛИЗ

НА ОСНОВЕ АЛГОРИТМА FOREL

V.N. Yanchukovsky, S.S. Sosinskaya

PARALLEL ITERATIVE CLUSTER ANALYSIS BASED ON FOREL ALGORITHM

h

Аннотация. Рассматривается параллельная реализация алгоритма кластерного анализа FOREL. В качестве исходных данных для эксперимента выбран набор втулок, обрабатываемых на револьверных станках. Была поставлена задача разбить этот набор втулок на кластеры, соответствующие комплексным деталям, и проанализировать результаты, полученные в обычном и параллельном режимах.

Ключевые слова: кластерный анализ, параллельные вычисления, вычислительный эксперимент, комплексная деталь.

Abstract. The article deals with parallel realization of cluster analysis algorithm FOREL. Set of bushings machined by a turret lathe is used as source data. Source data is used for distinguishing clusters equal to complex parts. Outcome of computational experiment in series and parallel mode is analyzed.

Keywords: cluster analysis, parallel computing, computational experiment, complex part.

Введение

В статьях [1, 2] рассматривались алгоритмы кластерного анализа, входящие в пакеты системы Matlab, а также строились параллельные схемы этих алгоритмов. При этом в схемы алгоритмов вносились определенные корректировки при распараллеливании, не затрагивающие сути исходных алгоритмов. Поскольку за многие годы существования этих алгоритмов в составе среды Matlab они могли быть не раз оптимизированы разработчиками для лучшего функционирования именно в этой среде, этот фактор мог сказаться на полученных результатах.

Для обеспечения большего контроля над реализацией параллельной схемы, а также увеличения разнообразия алгоритмов кластерного анализа, содержащихся в MATLAB, решено реализовать алгоритм FOREL [3]. Такой выбор осуществлен по нескольким причинам: во-первых, в свое время данный алгоритм кластерного анализа считался достаточно эффективным; во-вторых, в последние 20 лет в области исследований кластерного анализа в России наблюдался некоторый застой по сравнению с иностранными исследованиями в этой области, и алгоритмы, разработанные во времена СССР, незаслуженно обходили стороной.

Также была поставлена задача формирования комплексной детали из деталей, обрабатываемых на одной группе станков. Под комплексной деталью понимается реальная или условная (искусственно созданная) деталь, содержащая в своей конструкции все основные элементы (поверхности), характерные для деталей данной группы, и являющаяся её конструктивно-технологическим представителем [4].

В качестве исходных данных для эксперимента выбран набор втулок, обрабатываемых на револьверных станках. На исследование были взяты 34 втулки, каждая втулка характеризуется шестью признаками: максимальный диаметр, высота, количество внешних диаметров, количество внутренних диаметров, количество конических поверхностей и количество резьб [4].

Все эти детали обрабатываются на револьверном станке с применением групповой наладки. Была поставлена задача разбить этот набор втулок на кластеры, соответствующие комплексным деталям, и проанализировать результаты, полученные в обычном и параллельном режимах. Полученные кластеры позволят более эффективно формировать комплексную деталь. Помимо этого, на основании предыдущих исследований, известно

количество классов, характерных для исходного набора данных, - 6, что упрощает оценку точности алгоритма кластерного анализа [1, 2].

Алгоритм FOREL

Алгоритм получил свое название в результате сокращения «ФОРмальный ЭЛемент». Данный алгоритм является примером эвристического ди-визимного алгоритма кластерного анализа, который сначала объединяет все объекты в один кластер, а затем разделяет этот кластер до тех пор, пока каждый объект не окажется в своем собственном кластере. В основе работы алгоритма FOREL лежит использование гипотезы компактности: близким в содержательном смысле объектам в геометрическом пространстве признаков соответствуют обособленные множества точек, так называемые «сгустки». Если расстояние между центром п -го таксона и точкой к этого таксона обозначить 8пк, то сумма расстояний между центром и всеми точками к этого таксона будет равна:

Ь

Р = Е Япк, (1)

к=1

где:

• Рп - расстояние между центром п -го таксона и всеми точками этого таксона;

• ^пк - расстояние между центром п -го

таксона и точкой к этого таксона.

Сумма таких внутренних расстояний для всех п таксонов равна:

N

Р = Е Рп . (2)

п=1

Целью работы алгоритма РОКЕЬ является нахождение такого разбиения множества объектов на п кластеров, чтобы величина Р была минимальной. Работа алгоритма заключается в перемещении гиперсферы определенного радиуса в геометрическом пространстве до получения устойчивого центра тяжести наблюдений, попавших в эту гиперсферу. До начала работы алгоритма признаки объектов нормируются так, чтобы их значения находились между нулем и единицей [3]. Процедура алгоритма БОИБЬ является сходящейся за конечное число шагов в евклидовом пространстве любой размерности при произвольном расположении точек и любом выборе гиперсферы.

Если начальную точку, в которую переносится центр сферы, менять случайным образом, может получиться несколько вариантов разбиения на классы, из которых выбирается тот, на котором достигается минимальная величина Р .

Необходимые условия работы алгоритма БОИБЬ:

ИРКУТСКИМ государственный университет путей сообщения

• Выполнение гипотезы компактности, предполагающей, что близкие друг к другу объекты с большой вероятностью принадлежат к одному кластеру.

• Наличие линейного или метрического пространства кластеризуемых объектов.

Достоинства и недостатки алгоритма [5]:

Преимущества алгоритма:

1. Точность минимизации функционала качества (при удачном подборе параметра R -радиуса таксона).

2. Хорошая сходимость алгоритма.

3. Возможность последующих операций над центрами кластеров - они вычисляются в процессе работы алгоритма.

4. Возможность подсчета промежуточных функционалов качества, например длины цепочки локальных сгущений.

5. Возможность проверки гипотез схожести и компактности в процессе работы алгоритма.

Недостатки алгоритма следующие:

1. Относительно низкая производительность.

2. Плохая применимость алгоритма при плохой разделимости выборки на кластеры.

3. Неустойчивость алгоритма (зависимость от выбора начального объекта).

4. Необходимость априорных знаний о диаметре кластеров.

Еще одной характерной особенностью работы алгоритма является то, что генерируется один «большой» класс и несколько малых классов. Эту особенность нельзя однозначно отнести к положительным или отрицательным сторонам, поскольку все зависит от конкретной решаемой задачи [6].

При выборе способа распараллеливания в среде Matlab существует возможность использовать либо режим parfor, либо режим spmd. В основе режима parfor лежит тот же принцип, что и в цикле for: Matlab выполняет последовательность команд в теле цикла. В этом режиме код распределяется между клиентским процессом (client) и рабочими процессами (worker). Основная часть вычислений производится на workers, затем результаты вычислений отправляются на client и объединяются воедино. Режим parfor больше подходит для случаев, когда необходимо большое количество итераций для решения простой задачи. Parfor накладывает определенные ограничения на работу с данными: каждая итерация должна быть независима от остальных, - а в нашем случае каждая последующая итерация зависит от предыдущей итерации. Ввиду того, что FOREL генерирует разное число классов в разных задачах, был выбран режим spmd (single platform multiple data).

Этот режим представляет собой параллельный блок исходного кода программы. Внутри блока spmd каждый параллельный процесс имеет уникальный номер (labindex). Взаимодействие между параллельными процессами осуществляется с помощью специальных функций, чаще всего lab Send и labReсeive. Значения, возвращаемые из тела блока spmd, преобразуются в композитные объекты (Composite) в клиентской сессии. Композитные объекты содержат ссылки на значения, сохраненные в параллельных процессах. Однако сами значения хранятся только до тех пор, пока запущен параллельный режим.

Также, как уже упоминалось выше, поскольку алгоритм достигает наибольшей точности при минимальном P и возможно несколько различных результатов разбиения на классы, то окончательным режимом работы выбран итеративный метод. Суть его заключается в том, что одинаковый код с одинаковыми входными данными выполняется в двух параллельных процессах по 1000 раз, а затем из 2000 разбиений на классы алгоритм выбирает результат с минимальным значением P . Помимо этого в алгоритм введен такой параметр, как разброс значений, представляющий собой вычисляемое алгоритмом усредненное значение диаметров класса. Вычисляется данный параметр следующим образом: берется среднее арифметическое по отдельным атрибутам всех втулок, назовем его mean, затем эта величина пересчитывается по формуле:

r = mean. й ± 0,02,

m

(3)

где п - минимально допустимое количество деталей в классе, т - максимально допустимая разница между значениями признаков смежных (соседних, согласно их порядку в исходных данных) втулок, значение + 0,02 повышает точность параметра, оно было установлено экспериментальным путем. В первом процессе 0,02 прибавляется к параметру разброса значений, во втором - отнимается. Использование данного параметра позволило решить проблему высокой чувствительности алгоритма к выбору объекта на первом шаге. Первым центром таксона выбирается среднее значение между центрами масс объектов, а изменение радиуса гиперсферы таксона происходит пропорционально «кучности» расположения имеющихся объектов. Под «кучностью» понимается густота (концентрация) объектов (втулок) в пределах области, которую ограничивает гиперсфера.

Общая схема параллельной реализации итерационной версии алгоритма:

1. Инициализация параллельного режима.

2. Вычисление «разброса значений».

3. Запуск двух параллельных процессов.

4. Случайный выбор текущего объекта.

5. Пометка объектов выборки, находящихся на расстоянии менее чем Rz от текущего.

6. Вычисление центра тяжести помеченных объектов, пометка этого центра в качестве нового текущего объекта.

7. Повторение шагов 3-6 до тех пор, пока новый текущий объект не совпадет с предыдущим.

8. Пометка объектов внутри сферы радиуса Rz вокруг текущего объекта как принадлежащих классу, удаление их из выборки для последующих шагов.

9. Повторение шагов 4-8, пока не будет разбита на классы вся выборка.

10. Вычисление значения P для данного распределения.

11. Если P текущее меньше P предыдущего, запоминается текущее значение.

12. Повторение шагов 4-10 тысячу раз.

13. Завершение параллельных процессов.

14. Выбирается то разбиение, которое дает наименьшее значение P.

15. Завершение параллельного режима.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

16. Вывод полученных результатов.

Для наглядного представления полученных результатов используется метод главных компонент. Это один из основных способов уменьшить размерность данных, потеряв наименьшее количество информации. Он изобретен К. Пирсоном (англ. Karl Pearson) в 1901 г. и применяется во многих областях, таких как распознавание образов, компьютерное зрение, сжатие данных и т. п. Вычисление главных компонент сводится к вычислению собственных векторов и собственных значений ковариационной матрицы исходных данных [7].

Результаты эксперимента

Эксперимент проводился на одном ПК, в параллельном режиме, запускались два параллельных процесса.

Конфигурация ПК:

1. Процессор - двухъядерный, с частотой 2,3 ГГц.

2. Оперативная память в объеме 4 Гб.

Эксперимент дал следующие результаты: Lab 1:

Elapsed time is 0.095344 seconds. Lab 2:

Elapsed time is 0.085037 seconds.

Эксперименты с алгоритмами, рассмотренными в [1, 2], показали следующие результаты (табл. 1).

Т а б л и ц а 1

Время, затрачиваемое на вычисления

Алгоритм Иерархический Субтрак-тивный k-means FCM FOREL 2000 итераций

Время выполнения 0,012 0,035 0,27 0,028 0,085

Стоит добавить, что представленные выше результаты характерны для двух параллельных процессов и одной итерации. Режим распараллеливания - spmd. С учетом того, что в данном случае проведено 2000 итераций, в то время как в предыдущих экспериментах с другими алгоритмами выполнялось по одной итерации, это говорит о достаточно высокой скорости работы алгоритма.

Для большей наглядности приведем результат затрат времени для алгоритма FOREL при 10 итерациях:

Lab 1:

Elapsed time is 0.000415 seconds.

Lab 2:

Elapsed time is 0.000616 seconds.

Данные показатели наглядно иллюстрируют то, что алгоритм FOREL выполняет все вычислительные операции намного быстрее, чем другие рассмотренные алгоритмы.

На рис. 1-4 приведены графики распределения экземпляров втулок по классам в осях главных компонент, отображающие результаты кластеризации для различных алгоритмов. Различными символами обозначены объекты кластеризации, геометрическими фигурами - получившиеся классы.

Рис. 1. График главных компонент алгоритма FCM

Рис. 2. График главных компонент алгоритма FOREL

Рис. 3. График главных компонент алгоритма k-means

и к-теап8[1]. С точки зрения разбиения на комплексные детали, иерархический алгоритм показывает более высокий уровень точности, так как комплексная деталь должна охватывать как можно большее количество входящих в нее деталей - как в классах № 2, 6 [4]. Состав оставшихся классов говорит о том, что для некоторых деталей необходима отдельная комплексная деталь.

Т а б л и ц а 2

№ Номера Номера Номера Номера

класса деталей деталей деталей деталей

в классе, в классе, в классе, в классе,

FCM FOREL k-means иерархич.

1 2, 3, 4, 5, 26, 33 2, 3, 4, 5, 26, 33 2, 3, 4, 5, 26,33 1, 2, 3, 4, 5, 8, 9, 10, 11, 26, 30, 32, 33, 34

2 1, 8, 10, 11, 30, 32, 34 I, 8, 9, 10, II, 30, 32, 34 1, 10, 32 13

3 13, 31 13, 31 12, 13, 31 12, 29

4 19, 20, 21, 19, 20, 21, 19, 20, 21, 19, 20, 21,

23 22, 23, 25, 22, 23, 25, 22, 23, 25,

27 27 27, 6, 7, 14, 15, 16, 17, 18, 28

4 19, 20, 21, 19, 20, 21, 19, 20, 21, 19, 20, 21,

23 22, 23, 25, 22, 23, 25, 22, 23, 25,

27 27 27, 6, 7, 14, 15, 16, 17, 18, 28

5 12, 22, 25, 27 12, 24, 29 8, 9, 11, 30, 34 31

6 6, 7, 14, 15, 6, 7, 14, 6, 7, 14, 24

16, 17, 18, 15, 16, 17, 15, 16, 17,

24, 29 18, 28 18, 24, 28, 29

Рис. 4. График главных компонент иерархического алгоритма

Из графиков видно, что 34 объекта в результате кластеризации были разделены алгоритмами на 6 устойчивых классов (по своей сути представляющие комплексные детали). Алгоритмы распределили детали, как показано в табл. 2.

Как видно из таблицы, порядок принадлежности деталей классам отличается. У алгоритмов БСМ, к-теап8 и БОИБЬ идентичны классы № 1, 3, 4. Также идентичны классы № 3, 6 у алгоритмов БСМ и БОИБЬ. Остальные классы немного отличаются. В целом у всех алгоритмов классы относительно схожи между собой, за исключением иерархического алгоритма. Это говорит о среднем уровне точности алгоритма БОИБЬ, поскольку его разбиение на классы близко к алгоритмам БСМ

Также можно сделать вывод, что кластеризация сильно зависит от начального приближения (выбора объекта на первом шаге), желательно повторное выполнение алгоритма для исключения ситуации «плохой» кластеризации по причине неудачного выбора начальных объектов.

Заключение

Алгоритм FOREL до сих пор не утратил своей актуальности. Этот алгоритм был реализован в среде Matlab в последовательном и параллельном режимах.

Как видно, благодаря распараллеливанию были устранены следующие недостатки алгоритма: низкая производительность и низкая точность. Применение распараллеливания и использование итераций делает этот алгоритм мощным инструментом кластерного анализа, не уступающим современным алгоритмам.

С точки зрения разбиения на комплексные

Современные технологии. Математика. Механика и машиностроение

ш

детали, алгоритм показывает среднии уровень точности - объекты были разделены на 6 устойчивых комплексных деталеи, так как комплексная деталь должна охватывать как можно большее количество входящих в нее деталей.

Помимо этого, из-за того, что алгоритм генерирует один большой класс и несколько небольших, необходимо очень подробное знание предметной области, в которой проводится анализ, и понимание, когда использование алгоритма FOREL может быть необоснованно.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Янчуковский В. Н. Использование параллельных вычислений в кластерном анализе для формирования комплексных деталей. Вестник Иркутского государственного технического университета. 2012. № 6(65). С. 25-30.

2. Янчуковский В. Н. Использование параллельных вычислений в задаче классификации в сре-

де Matlab // Винеровские чтения : тр. IV Всерос. конф. Ч. III. Иркутск: ИрГТУ, 2011. С. 49-54.

3. Загоруйко Н. Г. Прикладные методы анализа данных и знаний. Новосибирск : ИМ СО РАН, 1999. 270 с.

4. Митрофанов С. П. Научная организация машиностроительного производства. Л. : Машиностроение, 1976 г. 712 с.

5. Алгоритмы семейства FOREL [Электронный ресурс] // Википедия : Свободная энциклопедия. [сайт]. URL: http://ru.wikipedia.org/wiki/ Алгоритмы_семейства_FOREL (Дата обращения: 20.12.2012).

6. Миркин Б. Г. Методы кластер-анализа для поддержки принятия решений : обзор. Препринт WP7/2011/03. М : ГУ ВШЭ, 2011. 88 с.

7. Метод главных компонент [Электронный ресурс] // Википедия : Свободная энциклопедия [сайт]. URL: URL: http://ru.wikipedia. org/wiki/Метод_главных_компонент (Дата обращения: 20.12.2012).

УДК 62 - 336 Долотов Алексей Митрофанович,

д. т. н., профессор, зав. каф. «Прикладная механика», Иркутский государственный университет путей сообщения, тел. 89086572297, e-mail: amdolotov@mail.ru

Белоголов Юрий Игоревич, аспирант, Иркутский государственный университет путей сообщения (ИрГУПС),

тел. 89500832303, e-mail: m-pm@mechanics-pm.ru

ДИНАМИКА НАГРУЖЕНИЯ КЛАПАНА С ОБОЛОЧЕЧНО-

ПЛАСТИНЧАТЫМ СЕДЛОМ

A.M. Dolotov, Yu.I. Belogolov.

VALVE WITH SHELL-PLATE SEAT LOADING DYNAMIC

Аннотация. В статье рассматривается энергетический подход к исследованию взаимосвязи основных эксплуатационных параметров клапана. Предложено в качестве основного энергетического параметра, определяющего динамическую нагруженность оболочечного элемента, использовать кинетическую энергию подвижных частей клапана в момент контакта с золотником седла, как определяющую конструктивные особенности привода клапана, способа управления приводом и учитывающую воздействие потока рабочей среды на движущийся золотник. Нелинейный характер нагружения седла, связанный с его короблением, предлагается учитывать как энергию, необходимую для выбора отклонений формы тонкостенного седла.

Показано, что снижение максимальной динамической нагрузки, возникающей при срабатывании клапана, ведет к снижению силы герметизации, улучшению массо-габаритных характеристик клапана. Снижения максимальной динамиче-

ской нагрузки можно добиться как с помощью разгрузки привода клапана от воздействия давления рабочей среды, так и путем снижения приведенной жесткости седла. В последнем случае рекомендуется вместо оболочечного использовать оболочечно-пластинчатое седло. Рациональные размеры оболочечно-пластинчатого седла рекомендуется определять с помощью оптимизационной задачи, когда в качестве целевой функции минимизируется приведенная жесткость оболочеч-но-пластинчатого седла, а возникающие в пластинчатом и оболочечном элементах седла максимальные ударные динамические напряжения не превышают допускаемое при заданной кинетической энергии подвижных частей в момент соударения.

Для рассчитанных рациональных размеров оболочечно-пластинчатого седла следует ожидать минимизации герметизирующей силы и габаритно-массных характеристик клапана.

i Надоели баннеры? Вы всегда можете отключить рекламу.