Upload
victor-balabanov
View
1.333
Download
3
Embed Size (px)
DESCRIPTION
Презентация, подготовленная для выступления на XII международной научно-технической конференции «Системный анализ и информационные технологии», НТУУ «КПИ», Киев, 25—29 мая 2010 г.
Citation preview
«Эволюционный подход к оптимизациираскроя рулонных материалов»
Виктор Балабанов аспирант кафедры «Автоматизированные системы управления»
Донецкий национальный технический университет
XII международная научно-техническая конференция«Системный анализ и информационные технологии»
НТУУ «КПИ», Киев, 25—29 мая 2010 г.
Продольный раскрой рулонов
• Используются специализированные линии продольной резки, также называемые слиттерами:
• Все резы выполняются от края до края, параллельно боковой кромке исходной полосы.
Оптимизация продольного раскроя
X 7
Заказы:
Материал:
W = 11
w2 = 3
X 5w1 = 4
X 11w3 = 2
Тривиальноерешение:
7 рулонов
14% потерь
Простая задача
Структура допустимого решения задачи
X 2 X 0 X 0
X 2 X 0 X 0
X 1 X 2 X 0
X 0 X 3 X 0
X 0 X 2 X 2
X 0 X 0 X 5
X 0 X 0 X 4
(2; 0; 0)
(2; 0; 0)
(1; 2; 0)
(0; 3; 0)
(0; 2; 2)
(0; 0; 5)
(0; 0; 4)
Перечень израскройныхкарт (1—7) —план раскроя
1
2
3
4
5
6
7
Задача рационального раскроя
• Относится к NP-полным задачам дискретной оптимизации комбинаторного типа;
• Впервые формализована в терминах целочисленного линейного программирования Л. В. Канторовичем в 1939 г.
∑=k
kxZ min
∑ ≥k
ikik dxa
+Ζ∈kx
{ }mi ,,1∈ { }Pk ,,1∈
Методы решения
• Точные (на основе общей схемы метода ветвей и границ, метод отсечений, динамическое программирование);
• Приближенные эвристические (отложенная генерация столбцов, последовательные эвристические процедуры, конструктивные эвристики);
• Приближенные метаэвристические (имитация отжига, поиск с запретами, GRASP, эволюционные, муравьиные и роевые алгоритмы).
Особенности рассматриваемой задачи
• Необходимо учитывать конструкцию дисковых ножниц:
Повышение технологичности планов раскроя
План раскроя I План раскроя II
1
1
2
3
I II
рулоны 6 6
потери 4,5% 4,5%
переналадки 3 1
Сравнение планов
Многокритериальная задача
• Первый критерий Z1: минимизировать потери материала в отход;
• Второй критерий Z2: за счет многократного использования раскройных карт сократить общее число уникальных карт в плане раскроя;
• Может быть сформулирована как задача целочисленного нелинейного программирования;
• Для упрощения решения возможно сведение к однокритериальной задаче посредством скаляризации:
2211* ZCZCZ +=
Математическая формулировка
;min1 ∑∑ ∑
−=
k i jjjkiik waWTZ ∑ ∑
=
k iikTZ δmin2
=случае противном в,0
способу по кроится рулон если,1 kiTik
>
=
∑∑случае противном в,0
0 если,1i ik
iik
TTδ
jk i
ijkik lLaT ≥∑∑
( );, 21 ZZZ =
{ }mi ,,1∈ { }nj ,,1∈ { }Kk ,,1∈
Эволюционные алгоритмы
• Предложены в середине 1960-х годов и реализуют некоторые базовые идеи эволюционной теории Дарвина, заимствуется соответствующая терминология;
• Решения оптимизационной задаче представляются в виде последовательностей фиксированной или переменной длины, часто используются иерархические структуры;
• На каждой итерации алгоритм работает с одним или несколькими решениями;
• Целевая функция определяет «приспособленность» решений;
• Существуют различные модификации: ЭП, ЭС, ГА, ГП.
Генетический алгоритм
инициализировать начальную популяцию
начало
отсортировать хромосомы по приспособленности
селекция останов
конец
скрещивание
мутация
сформировать новую популяцию
А
А
выдать решения
Б
Б
да
нет
Выбор способа представления решений
картараскроя
ген план раскроя
хромосома
...
X 1 X 1 X 2 X 1 X 1 X 2
ген 2ген 1
карта 2карта 1 карта 6X 0 X 2 X 1
(1; 1; 2)ген 3
Аналогия:
План раскроя
Хромосома
(1; 1; 2) (1; 1; 2)ген 6
(0; 2; 1)...
Инициализация начальной популяции
• Поиск ведется на ограниченном множестве раскройных карт, удовлетворяющих заданному набору требований;
• Для генерации раскройной карты необходимо решить задачу рюкзачного типа:
• Из полученных в результате решения вспомогательной задачи раскройных карт последовательно составляется план раскроя;
• План раскроя преобразуется в хромосому, которая затем добавляется в начальную популяцию.
∑=j
jj xwZ max'
∑ ≤j
ijj Wxw
Скрещивание
• Имитируется половое размножение особей-эукариот;• Реализовано в виде модифицированного одноточечного
кроссовера:
Хромосомы-родители:
Хромосомы-потомки:
(1; 1; 2) (1; 1; 2) (1; 1; 2) (0; 2; 1)(1; 1; 2) (1; 1; 2)
(2; 1; 0) (2; 1; 0) (1; 2; 0) (0; 0; 5)(0; 3; 1) (0; 0; 5)
(1; 1; 2) (1; 1; 2) (1; 1; 2) (0; 0; 5)(1; 1; 2) (0; 0; 5)
(2; 1; 0) (2; 1; 0) (1; 2; 0) (0; 2; 1)(0; 3; 1) (1; 1; 2)
Мутация
• Случайным образом изменяется структура хромосомы;• Реализована как удаление случайно выбранного гена с
последующим восстановлением целостности хромосомы:
До мутации:
После мутации:
Восстанавливаем целостность:
(1; 1; 2) (1; 1; 2) (1; 1; 2) (0; 2; 1)(1; 1; 2) (1; 1; 2)
(1; 1; 2) (1; 1; 2) (1; 1; 2) (0; 3; 1)(1; 1; 2) (1; 1; 2)
(1; 1; 2) (1; 1; 2) (1; 1; 2) (1; 1; 2) (1; 1; 2) ...
Программная реализация
• Java, Swing, JFreeChart, XML
Тестирование
• Тестовые задачи формировались с учетом промышленных объемов выпуска электросварных труб;
• Реализованный подход позволяет находить планы раскроя, удовлетворяющие требованиям реального производства;
• Время, затраченное на поиск решения, обычно находится в пределах одной-двух минут для Intel(R) Core(TM)2 Duo T5800 @ 2.00 GHZ и 2 GB RAM;
• Эффективность гибридного генетического алгоритма в значительной степени зависит от качества раскройных карт, генерируемых при помощи вспомогательной процедуры.
Направления дальнейших исследований
• Реализация генетического алгоритма для поиска Парето-оптимальных решений многокритериальной задачи;
• Разработка полноценного пользовательского интерфейса;• Внедрение системы планирования на ДМЗ;• Релиз свободно распространяемой программной
библиотеки с открытым исходным кодом, снабженной документацией и примерами;
• Предложенный подход может быть использован для решения родственных задач рациональной упаковки и размещения, календарного планирования и т.д.