Об одном подходе к реализации генетического алгоритма...

25
«Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя» Виктор Балабанов аспирант кафедры «Автоматизированные системы управления» Донецкий национальный технический университет IV международная научно-практическая конференция молодых учёных «Современная информационная Украина: информатика, экономика, философия» ГУИиИИ, Донецк, 1314 мая 2010 г.

Upload: victor-balabanov

Post on 24-Jun-2015

877 views

Category:

Technology


4 download

DESCRIPTION

Презентация, подготовленная для выступления на IV международной научно-практической конференции молодых учёных «Современная информационная Украина: информатика, экономика, философия», ГУИиИИ, Донецк, 13—14 мая 2010 г.

TRANSCRIPT

Page 1: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

«Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя»

Виктор Балабанов аспирант кафедры «Автоматизированные системы управления»

Донецкий национальный технический университет

IV международная научно-практическая конференция молодых учёных«Современная информационная Украина: информатика, экономика, философия»

ГУИиИИ, Донецк, 13—14 мая 2010 г.

Page 2: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Электросварные прямошовные трубы

• отличаются размерами, толщиной стенки, профилем

квадратная овальная плоскоовальная(один из видов)

Page 3: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Технология производства сварных труб

• в качестве исходного материала используется стальная холоднокатаная и горячекатаная полоса в рулонах шириной от 500 до 2350 мм и весом до 20 т

• рулоны раскраиваются на узкую ленту заданной ширины• плоская лента сворачивается в цилиндрическую трубную

заготовку (формовка)• кромки сформованной трубной заготовки сближаются

между собой и свариваются в сварочном узле• труба калибруется по диаметру и режется на мерные

длины, также возможны различные варианты отделки (отжиг, правка, зачистка торцов и т.д.)

Page 4: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Технологическая схема производства

1 — размотка рулона; 2 — сварка концов двух рулонов; 3 — накопление петли; 4 — зачистка поверхности ленты; 5 — обрезка кромок; 6 — формовка; 7 — сварка сформованной трубы; 8 — резка на мерные длины; 9 — контроль качества шва; 10 — отжиг; 11 — правка; 12 — холодная прокатка; 13 — волочение; 14 — гидравлическое испытание; 15 — резка на мерные длины; 16 — зачистка торцов.

Page 5: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Упрощенная функциональная модель

Склад

пересчет от массы партии труб к длине ленты

раскрой рулонов

составление плана раскроя

производство и отделка трубы

Отдел продаж

заказпартии труб

задание на выпуск партии труб

перечень рулонов

рулоны

план раскроя

лента

готовая труба

отгрузка партии труб

Цех

Page 6: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Постановка задачи

Проблема: значительная материалоемкость производства

Способы решения:• совершенствование технологии в целом*

• улучшение работы отдельных агрегатов линии*

• рациональное использование исходного материала

* — требуются значительные капиталовложения, следует учитывать износ оборудования, уровень организации производства, текущую экономическую конъюнктуру и т.д.

Page 7: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Продольный раскрой рулонов

• Используются специализированные линии продольной резки, также называемые слиттерами

• Все резы выполняются от края до края, параллельно боковой кромке исходной полосы.

Page 8: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Оптимизация продольного раскроя

Тривиальное решение (используется в настоящий момент): последовательно заполняем площадь рулона лентой, не превышая его ширины.

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

Page 9: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Структура допустимого решения задачи

Продолжаем формировать план, включая в раскрой новые рулоны, пока все заказы на ленту не будут выполнены:

Раскройная карта: задает способ раскроя рулона (ширину и количество полос каждого вида)

План раскроя: перечень всех используемых раскройных карт

Page 10: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Задача рационального раскроя

• относится к NP-полным задачам дискретной оптимизации комбинаторного типа

• впервые формализована в терминах целочисленного линейного программирования Л. В. Канторовичем в 1939 г.

∑=k

kxZ min

∑ ≥k

ikik dxa

+Ζ∈kx

{ }mi ,,1∈ { }Pk ,,1∈

Page 11: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Методы решения

• Точные (на основе общей схемы метода ветвей и границ, метод отсечений, динамическое программирование);

• Приближенные эвристические (отложенная генерация столбцов, последовательные эвристические процедуры, конструктивные эвристики);

• Приближенные метаэвристические (имитация отжига, поиск с запретами, GRASP, эволюционные, муравьиные и роевые алгоритмы).

Page 12: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Особенности рассматриваемой задачи

• необходимо учитывать конструкцию дисковых ножниц

Page 13: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Повышение технологичности планов раскроя

X 11

X 7

X 5

Заказы:

План раскроя I План раскроя II

1

1

2

3

Материал:

X 6

Page 14: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Многокритериальная задача

• Первый критерий Z1: минимизировать потери материала в отход;

• Второй критерий Z2: за счет многократного использования раскройных карт сократить общее число уникальных карт в плане раскроя;

• Может быть сформулирована как задача целочисленного нелинейного программирования;

• Для упрощения решения возможно сведение к однокритериальной задаче посредством скаляризации:

2211* ZCZCZ +=

Page 15: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Математическая формулировка

;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∈

Page 16: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Эволюционные алгоритмы

• Предложены в середине 1960-х годов и реализуют некоторые базовые идеи эволюционной теории Дарвина, заимствуется соответствующая терминология.

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

• На каждой итерации алгоритм работает с одним или несколькими решениями.

• Целевая функция определяет «приспособленность» решений.

• Существуют различные модификации: ЭП, ЭС, ГА, ГП.

Page 17: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Генетический алгоритм

инициализировать начальную популяцию

начало

отсортировать хромосомы по приспособленности

селекция останов

конец

скрещивание

мутация

сформировать новую популяцию

А

А

выдать решения

Б

Б

да

нет

Page 18: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Выбор способа представления решений

план раскроя состоит из раскройных карт (р.к.)

хромосома состоит из генов

раскройная карта

ген план раскроя

хромосома

(1; 1; 2) (1; 1; 2) (0; 2; 1)

...

X 1 X 1 X 2 X 1 X 1 X 2 X 2 X 1

ген 2ген 1 ген 6

...

р.к. 2р.к. 1 р.к. 6

Page 19: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Инициализация начальной популяции

• Для генерации раскройной карты необходимо решить задачу рюкзачного типа

• Из полученных в результате решения вспомогательной задачи раскройных карт последовательно составляется план раскроя

• План раскроя преобразуется в хромосому, которая затем добавляется в начальную популяцию

∑=j

jj xwZ max'

∑ ≤j

ijj Wxw

Page 20: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Скрещивание

• Имитируется половое размножение особей-эукариот• Реализовано в виде одноточечного кроссовера

(2; 1; 0) (2; 1; 0) (1; 2; 0) (0; 3; 1) (0; 0; 5) (0; 0; 5)

(1; 1; 2) (1; 1; 2) (1; 1; 2) (1; 1; 2) (1; 1; 2) (0; 2; 1)

(2; 1; 0) (2; 1; 0) (1; 2; 0) (0; 3; 1) (1; 1; 2) (0; 2; 1)

(1; 1; 2) (1; 1; 2) (1; 1; 2) (1; 1; 2) (0; 0; 5) (0; 0; 5)

Хромосомы-родители:

Хромосомы-потомки:

Page 21: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Мутация

• Случайным образом изменяется структура хромосомы• Реализована как удаление случайно выбранного гена с

последующим восстановлением целостности хромосомы

(1; 1; 2) (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)

До мутации:

После мутации:

(1; 1; 2) (1; 1; 2) (1; 1; 2) (1; 1; 2) (1; 1; 2) (0; 3; 1)

Восстанавливаем целостность:

Page 22: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Программная реализация

• Java, Swing, JFreeChart, XML

Page 23: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Тестирование

• Тестовые задачи формировались с учетом промышленных объемов выпуска электросварных труб

• Реализованный подход позволяет находить планы раскроя, удовлетворяющие требованиям реального производства

• Время, затраченное на поиск решения, обычно находится в пределах одной-двух минут для Intel(R) Core(TM)2 Duo T5800 @ 2.00 GHZ и 2 GB RAM

• Эффективность гибридного генетического алгоритма в значительной степени зависит от качества раскройных карт, генерируемых при помощи вспомогательной процедуры

Page 24: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Направления дальнейших исследований

• Реализация генетического алгоритма для поиска Парето-оптимальных решений многокритериальной задачи

• Разработка полноценного пользовательского интерфейса• Внедрение системы планирования на ДМЗ• Релиз свободно распространяемой программной

библиотеки с открытым исходным кодом, снабженной документацией и примерами

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

Page 25: Об одном подходе к реализации генетического алгоритма для решения сложных задач рационального раскроя

Спасибо за внимание!

e-mail → [email protected]блог → http://chasingthedegree.blogspot.com/

Связь: