УДК 658.512.6
ИССЛЕДОВАНИЕ И РАЗРАБОТКА МЕТОДОВ РАЗМЕЩЕНИЯ ЭЛЕМЕНТОВ НА ОСНОВЕ ЭВОЛЮЦИОННОЙ ОПТИМИЗАЦИИ В САПР МАШИНОСТРОИТЕЛЬНОГО ПРОИЗВОДСТВА
© 2003 г. Ю.О. Чернышев, А.С. Сергеев
Известно, что технический прогресс в машиностроении во многом определяет развитие экономики страны. Как отмечено в [1], одним из этапов проектирования и оптимизации производственных систем является разработка планировочного решения участка или цеха, в процессе которого возникает необходимость оптимизировать размещение оборудования. Отметим, что если данную задачу рассматривать аналогично задаче размещения элементов при конструкторском проектировании (этап, определяющий качество последующей трассировки), то в задаче размещения оборудования под «деревом», соединяющим выводы элементов, можно понимать технологические маршруты прохождения изделий по размещаемым объектам, а под «весом» ребра - массу изделия, время прохода по маршруту и т.д. Таким образом, аналогично [2] задача размещения состоит в отыскании оптимального значения введенной целевой функции F(P) на множестве перестановок Р при имеющихся множествах элементов А={а^} и позиций П=Р }.
Разработка генетического метода размещения. В настоящее время все больший интерес представляет исследование возможности применения для решения комбинаторных оптимизационных задач методов эволюционной оптимизации, использующих механизмы натуральной селекции и генетики. Основные положения и термины теории генетических алгоритмов и их отличительные особенности описаны, например, в [2, 3].
При реализации генетического алгоритма размещения объектов используется графовая модель, где вершины представляют размещаемые объекты, ребрам приписаны веса, в общем случае представляющие стоимость прохода потока изделий между единицами оборудования. Отметим, что для задачи размещения оборудования эффективным способом представления графа является список технологических циклов, пример которого и вариант размещения показаны на рис. 1.
__8(3)
5(1)
^ 2(3)
Рис. 1. Пример графа, представляющего размещение оборудования на участке при трех технологических маршрутах с заданными массами изделий т: 1-2-3-5-3 (т = 5), 2-4-3 (т = 3), 1-2-7-6 (т = 2). Суммарная величина материального потока (значение ЦФ) составляет 47. В скобках показаны номера, соответствующие ребрам технологических циклов
Отметим, что справедливо
Утверждение. Если степень вершины графа нечетная, то существует технологический маршрут, в котором она либо начальная, либо конечная.
На рис. 1 такими вершинами являются вершины 2 и 6, на рис. 2 вершины 2 и 4.
Рис. 2. Пример размещения объектов в матричном пространстве (курсивом показаны координаты позиций) при следующих технологических циклах: 1-7-9-7-1, 1-4-1-4.2-3-2,1-8-1-8-7-8-7, 3-5-9-5-9-5-3, 4-6-4-6-4-6-5-6, 7-6-7-6-7-6-8-6-8-6-8-6. При единичной массе изделий значение ЦФ равно 55
Математическую модель задачи размещения можно в соответствии с [3] представить следующим образом: найти минимум целевой функции (ЦФ)
F = Z Km Z fii +1 = min =
m=1 i =1.2...tm-1
(1)
где М - число технологических циклов; Кт - общая масса изделия по маршруту т (т = 1,...,М); /ц+1 - весовая функция прохода изделия от объекта / к ¡+1 по маршруту т (в общем случае будем предполагать ее равной расстоянию между объектами), 1т - число объектов в маршруте т. В примере на рис. 1 значение ЦФ Ж = 47.
Для реализации генетического алгоритма основной является методика представления решения в виде хромосомы - индивидуума популяции, представляющего вариант решения. Наиболее простым и универсальным является способ кодирования, при котором установлено взаимно-однозначное соответствие между множеством позиций и множеством порядковых
номеров генов хромосомы. Для случая линейного размещения на рис. 1 хромосома будет иметь вид < 1, 2, 3, 5, 4, 7, 6 >.
Отметим также, что помимо линейного размещения объектов, методы которого описаны в [4], актуальной является задача размещения объектов в двумерном пространстве т х п , где каждый элемент матрицы может иметь координаты ¿, ], при этом будем полагать, что 0 < г < т, 0 <] <п. Номер позиции гена в хромосоме ц в данном случае связан с координатами матричного пространства соотношениями, аналогичными приведенным в [5]
¿=[(Ч-1)!к], ]=(ц-1)той к,
где г - номер строки, ] - номер столбца, к - число позиций в строке. Пример размещения показан на рис. 2, он может быть представлен следующей хромосомой: < 3, 2, 4, 5, 6,1, 9, 8, 7 >.
Вместе с тем следует заметить, что наряду с использованием числовых хромосом для кодирования могут быть использованы векторные хромосомы, где каждый ген может представлять значения координат соответствующей позиции, номер позиции соответствует номеру размещаемого объекта. Варианту размещения на рис. 2, таким образом, соответствует следующая хромосома: < 12, 01, 00, 02,10,11, 22, 21, 20 >.
Следует заметить, что, как отмечено в [6], большинство генетических методов представляют решение в виде одной хромосомы, что в общем случае исключает применение такой генетической операции, как комбинирование целыми хромосомами. В то же время в ряде случаев при использовании генетических операторов возможно появление нелегальных решений, связанных с возникновением повторяющихся генов в хромосоме. Пусть в популяции есть два решения, представленные парой хромосом Н11, Н12 и Н21, Н22
Н11: 7,1,4,10,15,2,5,8,3 Н12:1,2,8,5,2,4,6,2,1
Н21: 2,7,1,4,6,1,3,11,8 Н22: 6,2,5,1,4,3,7,1,9
Декодирование может быть осуществлено следующим образом [6]. Просуммируем попарно значения гомологичных генов в парах хромосом и сформируем результирующие хромосомы Н1=Н11+Н12, Н2=Н21+Н22:
1 2 3 4 5 6 7 8 9
Н1= 8 3 12 15 17 6 11 10 4
1 2 3 4 5 6 7 8 9
Н2=
8 9 6 5 10 4 10 12 17
ется (т.е. в 1-ю позицию размещаются элементы 2 и 6 с минимальными значениями генов в хромосомах Н1 и Н2, во 2-ю позицию - 9 и 4 и т.д.). Отметим, что в общем случае нумерация позиций для размещения объектов может задаваться различными способами. Очевидным достоинством предлагаемой методики кодирования является возможность исключения нелегальных решений (повторяющиеся гены в хромосомах).
Первоначальным этапом работы генетического алгоритма является формирование начального множества допустимых решений - стартовой популяции. Для отмеченных выше методов кодирования популяция хромосом формируется с помощью следующих алгоритмов. Алгоритм для числовой хромосомы сформулируем следующим образом: =1; /значение гена и номер хромо -
т3: ¿=0; сомы устанавливаются мини-
мальными/
/выбирается произвольная позиция в хромосоме из п генов/
/если гену в данной позиции ц хромосомы г уже присвоено значение, возврат на произвольный выбор позиции в хромосоме/
/если гену в данной позиции не присвоено значение, присваивается значение М
m2: q=random(n);
if(ckrom[i][q]i0) goto m2;
ckrom[i][q]=t;
¿=1+1; /наращивание номера хромосо-
мы/
¿/(¿<рор) /если не вся популяция просмот-
goto т2; рена, возврат на выбор произ-
вольной позиции в хромосоме г и присвоения ей значения й
t=t+1; /наращивание значения гена/
¿/(Кп) /если значение гена t меньше чис-
goto т3; ла размещаемых объектов п, воз-
врат на присвоение значения t произвольно выбранным генам в хромосомах/
В случае векторной хромосомы формирование популяции хромосом производится с помощью следующего алгоритма:
Упорядочиваем размещаемые элементы, номера которых показаны сверху, по возрастанию значений генов в хромосомах Н1 и Н2 и строим две хромосомы Е1 и Е2
Е1=<2,9,6,1,8,7,3,4,5> Е2=<6,4,3,1,2,5,7,8,9>
Таким образом, сформированы два варианта размещения. Порядковый номер элемента в хромосоме соответствует номеру позиции, в которую он размеща-
1=0;
ml:
x=random(X); y=random(Y);
i=0; t=0;
m:if(ckrom[i][t]=x)
{if(ckrom[i][t+1]=y) goto ml};
t=t+2;if(t<n*2)
goto m;
/обнуление счетчика числа генов/
/задание произвольных координат х, у из максимально допустимых значений X, У/
/установление минимального номера хромосомы/
/проверка наличия координат х, у в хромосомах путем последовательного просмотра двух смежных генов/
т2: ц =гапйот(п); /выбор произвольной позиции из п генов /
if (chrom[i][2*q])-£0 goto m2;
chrom[i][2*q]=x; chrom[i][2*q+1]=y;
i=i+1; if(i<pop) goto m2;
1=1+1;
/если генам в данной позиции уже присвоено значение, возврат на выбор позиции/
/если генам в данной позиции не присвоено значение, то присваиваются значения х, у/
/наращивание номера хромосомы /
/если число просмотренных хромосом меньше размера популяции, возврат на выбор произвольных позиций/
/наращивание счетчика числа генов - объектов/
if(l<n)goto т1; /если не все объекты имеют координаты в хромосомах, возврат на выбор произвольных координат/
Отметим, что при реализации генетического алгоритма основными этапами, реализуемыми после формирования начальной популяции, являются: этап селекции (использовался равновероятный выбор пары индивидуумов для операции кроссинговера), этап кроссинговера (использовались стандартный одноточечный кроссинговер и универсальный кроссинговер), этап мутации и инверсии (в популяции родителей и потомков замена двух генов и инвертирование отрезка хромосомы с заданной вероятностью), этап отбора (использовался элитный отбор индивидуумов в популяцию для следующей генерации после оценки популяции родителей и потомков с помощью ЦФ (1)). Отметим, что пошаговое описание и возможность параллельной реализации описаны в [7].
Результаты экспериментальной реализации. Для проведения серии экспериментальных исследований по размещению объектов на производственном участке использовалось 4 тестовых примера, содержащих соответственно 7, 9, 15, 16 единиц оборудования. Норма мутации составляет 0,05, норма кроссинговера 80 %. Для 2, 3, 4 тестов расстояние между смежными позициями и массы изделий равны 1.
Списки технологических циклов для тестов имеют следующий вид.
Тест 1 (в скобках показаны массы изделий) 8-1-2-3-5-3-8 (5); 8-2-4-3-8 (3); 8-1-2-7-3-8(2); 8-3-6-3-2-1-8 (2); 8-1-2-4-3-5-3-8 (1); 8-2-7-3-4-3-8 (1); 8-2-5-3-7-3-8 (2). Тест 2
1 - 7 - 9 - 7 -1; 1 - 4 -1 - 4 - 2 - 3 - 2; 1 - 8 -1 - 8 - 7 - 8 - 7; 3 - 5 - 9 - 5 - 9 - 5 - 3; 4 - 6 - 4 - 6 - 4 - 6 - 5 - 6; 7 - 6 - 7 - 6 - 7 - 6 - 8 - 6 - 8 - 6 - 8 - 6. Тест 3
1 - 5 - 6 - 9 - 6 - 5 - 13; 2 - 7 - 2 - 11;
2 - 8 - 7 - 8 - 7; 2 - 8 - 3 - 8 -3;
2 -12 - 2 -12 - 2 - 9; 3 - 10 - 3 - 10 - 5 - 10 - 5;
3 -11 -10 -11 - 6; 3 - 11 - 4 - 11 - 4 - 11.
Тест 4
1 - 14 - 3 - 8 - 4 - 6; 1 -11 -12 - 2 - 3;
1 - 12 - 10 - 2 - 8 - 14; 1 -15 -13 - 5 - 2;
4 - 2 - 9 - 4 - 10 - 6 - 2; 2 -16 - 6 - 5 -16 - 3; 3 - 13 - 14 - 12; 3 -11 -15 - 7 - 4 - 11;
5 - 7 - 9 - 11; 7 - 10.
Приведем основные результаты, полученные с помощью генетического алгоритма (оптимальные и один из множества полученных квазиоптимальных).
Тест 1. Оптимальное размещение 8 объектов при фиксированном положении 8-го объекта представляется следующими хромосомами (ЦФ = 1780 при расстоянии между позициями 10)
Числовая Векторная
8,1, 2, 3, 5, 7, 4, 6 01, 02, 03, 06, 04, 07, 05, 00
8,1, 2, 3, 5, 4, 7, 6 01, 02, 03, 05, 04, 07, 06, 00
8,1, 2, 4, 3, 5, 7, 6 01, 02, 04, 03, 05, 07, 06, 00
Тест 2. Оптимальное размещение 9 объектов в матричном пространстве 3х3 представляется следующими хромосомами (ЦФ = 49)
Числовая Векторная
1, 8, 7, 4, 6, 9, 2, 3, 5 00, 20, 21,10, 22,11, 02, 01,12
Квазиоптимальное размещение (ЦФ = 51)
Числовая Векторная
1, 7, 9, 8, 6, 5, 2, 4, 3 02,10, 20, 00, 21,11,12, 01, 22
2, 8, 3, 4, 6, 5,1, 7, 9 20, 22, 02, 21, 01,11,10,12, 00
Тест 3. Оптимальное размещение 15 объектов в матричном пространстве 5х3 представляется следующими хромосомами (ЦФ = 44) Числовая
13,1,14, 5, 6, 9,10,11, 4, 3, 2, 12, 8, 7,15 Векторная
40,12, 21, 32, 30, 20, 01,11,10, 31, 22, 02, 41, 00, 42 02, 30, 32, 20,12,11, 41, 31,10, 22, 21, 40, 01, 00, 42
Квазиоптимальное размещение (ЦФ = 45): Числовая
1, 3, 8, 5,10, 7, 6,11, 2, 9, 4,12,13,15,14
Векторная
02, 31, 22, 20,11,10, 42, 32, 30,12, 21, 41, 01, 00, 40 Тест 4. Оптимальное размещение 16 объектов в
матричном пространстве 4х4 представляется следующей векторной хромосомой (ЦФ = 65): 23,11, 02, 21, 00,10, 30,12, 31, 20, 32, 22, 03,13, 33, 01 Квазиоптимальное размещение (ЦФ = 66):
23,11, 02, 21, 01,10, 30,12, 31, 20, 32, 22, 03,13, 33, 00
Отметим, что при использовании метода узловых координат (тест 1), силонаправленного метода (тесты
2 и 3) и метода парных перестановок (тест 4) были получены варианты размещения с оптимальным и квазиоптимальным значением ЦФ для соответствующих тестов: 1780, 55, 58, 65.
Также заметим, что данные об исследовании частоты сходимости генетического алгоритма к оптимальным и квазиоптимальным значениям для 1, 2, 3
Зависимость частоты сходимости генетического алгоритма к оптимальным и квазиоптимальным значениям для задач размещения объектов
Тип кодирования
Размер попул. Числовое Векторное 2 хромосомами
№ теста Кроссинг. Простой одноточ. Кроссинг. Кроссинг. Кроссинг. Кроссинг.
Универс. Пр. однот. Универс. Универс.
50 1 1 1 1 1
1 100 1 1 1 1 1
150 1 1 1 1 1
50 3/7 (52-49) 3/6 (51-49) 0(53-51) 1/4 (51-49) 2/5 (51-49)
2 100 2/6 (51-49) 2/5 (51-49) 4/5 (51-49) 1/6 (51-49) 2/5 (51-49)
150 4/6 (51-49) 3/5 (51-49) 4/5 (51-49) 5/6 (51-49) 1 (49)
50 0 (51-48) 0 (53-47) 0 (52-47) 0 (53-47) 1/6 (51-44)
3 100 0 (50-46) 0 (50-46) 1/6 (51-44) 1/6 (52-44) 1/5 (49-44)
150 1/7 (49-44) 1/5 (48-44) 1/7 (50-44) 2/6 (47-44) 1/4 (48-44)
тестов, полученные на основе экспериментальных результатов, показаны в таблице для размеров популяции 50, 100, 150 хромосом. Приведены отношения числа экспериментов, при которых достигнут оптимальный результат, а в скобках показан интервал между наилучшим и наихудшим значениями ЦФ, полученными при проведении серии испытаний.
Полученные оптимальные и квазиоптимальные результаты, с одной стороны, превосходят результаты известных методов, а с другой стороны, генетический алгоритм позволяет получать достаточно большое разнообразие вариантов решения, что является одной из основных отличительных особенностей и дает возможность выбрать вариант, оптимальный для конкретных условий. В настоящее время проводятся исследования по применению разработанных методов для решения задач размещения производственного оборудования реальных размерностей на предприятиях.
Диабет - одно из наиболее распространенных и тяжелых заболеваний, настигших человечество на рубеже двух тысячелетий. Осознание этой проблемы на всех уровнях и в различных сферах человеческой деятельности потребовало предпринять серьезные меры по диагностике, предупреждению и лечению диабета. Наступление на диабет человечество ведет широким фронтом: исследование различных аспектов болезни и разработка новых технологий лечения; пропаганда здорового образа жизни (режимов работы, отдыха, питания); создание (на государственных
Литература
1. Проектирование автоматизированных участков и цехов / Под ред. Ю.М. Соломенцева М., 2000.
2. Лебедев Б.К. Разработка теории и принципов поисковой адаптации для решения оптимизационных задач топологического синтеза: Дис. ... д-ра техн. наук. Таганрог, 2001.
3. Курейчик В.М. Генетические алгоритмы. Таганрог, 1998.
4. Методика размещения оборудования / ОАО «Ростсель-маш». Ростов н/Д, 2000.
5. Луценко В.Н. Генетический алгоритм для решения транспортной задачи // Изв. ТРТУ. 1996. № 3.
6. Лебедев О.Б. Исследование и разработка генетических алгоритмов формирования топологии СБИС повышенной плотности: Дис. ... канд. техн. наук. Таганрог, 1997.
7. Чернышев Ю.О., Бочаров О.С., Сергеев А. С. Применение методов эволюционной оптимизации для решения задачи размещения элементов // Тр. 56-й науч. сессии, посвященной дню радио. М., 2001. Т. 1. С. 184 - 186.
г.
уровнях) систем поддержки больных сахарным диабетом (выпуск специальных продуктов питания, лекарственных и технических средств, организация клиник, разработка системы льгот и др.); разработка технических средств и технологий диагностики и лечения больных.
По данной теме написано множество популярных и научных статей, анализ которых позволяет сделать вывод, что проблема из медицинской становится технической и технологической. Однако исследования по обоим указанным направлениям в настоящее время
Ростовская государственная академия сельскохозяйственного машиностроения 23 декабря 2002
УДК 62-50
КИБЕРНЕТИЧЕСКИЙ ПОДХОД К РЕШЕНИЮ ПРОБЛЕМЫ ЛЕЧЕНИЯ
БОЛЬНЫХ ДИАБЕТОМ
© 2003 г. Н.Н. Лябах, Н.Н. Лябах-мл.