SlideShare a Scribd company logo
1 of 20
Download to read offline
«Эволюционный подход к оптимизации
раскроя рулонных материалов»


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



                  XII международная научно-техническая конференция
                  «Системный анализ и информационные технологии»
                                НТУУ «КПИ», Киев, 25—29 мая 2010 г.
Продольный раскрой рулонов

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




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

Простая задача          Тривиальное
                        решение:
Материал:
                          7 рулонов
  W = 11
                          14% потерь
Заказы:
  w1 = 4         X5

  w2 = 3         X7

  w3 = 2         X 11
Структура допустимого решения задачи

               1           X2   X0   X0   (2; 0; 0)


               2           X2   X0   X0   (2; 0; 0)


Перечень из    3           X1   X2   X0   (1; 2; 0)
раскройных
               4           X0   X3   X0   (0; 3; 0)
карт (1—7) —
план раскроя
               5           X0   X2   X2   (0; 2; 2)


               6           X0   X0   X5   (0; 0; 5)


               7           X0   X0   X4   (0; 0; 4)
Задача рационального раскроя

• Относится к NP-полным задачам дискретной оптимизации
  комбинаторного типа;
• Впервые формализована в терминах целочисленного
  линейного программирования Л. В. Канторовичем в 1939 г.

                    Z = min ∑ xk
                                    k

                     ∑a
                      k
                           ik   xk ≥ d i

                          xk ∈ Ζ +
               i ∈ { ,  , m} k ∈ { ,  , P}
                    1              1
Методы решения

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

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

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

• Необходимо учитывать конструкцию дисковых ножниц:
Повышение технологичности планов раскроя

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



1                                          Сравнение планов
                                                         I       II
2
                                               рулоны        6        6
3                                               потери 4,5% 4,5%
                                           переналадки       3        1
                     1
Многокритериальная задача

• Первый критерий Z1: минимизировать потери материала в
  отход;
• Второй критерий Z2: за счет многократного использования
  раскройных карт сократить общее число уникальных карт
  в плане раскроя;
• Может быть сформулирована как задача целочисленного
  нелинейного программирования;
• Для упрощения решения возможно сведение к
  однокритериальной задаче посредством скаляризации:

                  Z * = C1Z1 + C2 Z 2
Математическая формулировка

                                                                        
Z = (Z1 , Z 2 ); Z1 = min ∑∑ Tik 
                                 Wi − ∑ a jk w j ; Z 2 = min ∑ δ  ∑ Tik 
                                                  
                          k i         j                      k    i     

                             ∑∑ T
                               k   i
                                       ik   a jk Li ≥ l j

                   1, если рулон i кроится по способу k
             Tik = 
                   0, в противном случае

                           1, если ∑i Tik > 0
                               
                 δ  ∑ Tik  = 
                    i      0, в противном случае
                               

                  i ∈ { ,  , m} j ∈ { ,  , n} k ∈ { ,  , K }
                       1              1              1
Эволюционные алгоритмы

• Предложены в середине 1960-х годов и реализуют
  некоторые базовые идеи эволюционной теории Дарвина,
  заимствуется соответствующая терминология;
• Решения оптимизационной задаче представляются в виде
  последовательностей фиксированной или переменной
  длины, часто используются иерархические структуры;
• На каждой итерации алгоритм работает с одним или
  несколькими решениями;
• Целевая функция определяет «приспособленность»
  решений;
• Существуют различные модификации: ЭП, ЭС, ГА, ГП.
Генетический алгоритм
            начало                    А


       инициализировать
                                   мутация
     начальную популяцию
Б
    отсортировать хромосомы   сформировать новую
      по приспособленности        популяцию

                                               нет
           селекция                останов           Б
                                          да
                                    выдать
         скрещивание
                                   решения


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

            карта                              план
Аналогия:                        ген                         хромосома
            раскроя                            раскроя

План раскроя

                                                   ...
      X1        X1   X2          X1        X1     X2       X0        X2   X1
       карта 1                    карта 2                    карта 6

Хромосома
       (1; 1; 2)     (1; 1; 2)        (1; 1; 2)    ...   (0; 2; 1)
        ген 1         ген 2            ген 3              ген 6
Инициализация начальной популяции

• Поиск ведется на ограниченном множестве раскройных
  карт, удовлетворяющих заданному набору требований;
• Для генерации раскройной карты необходимо решить
  задачу рюкзачного типа:
                     Z ' = max ∑ w j x j
                                   j

                      ∑w x
                       j
                           j   j   ≤ Wi
• Из полученных в результате решения вспомогательной
  задачи раскройных карт последовательно составляется
  план раскроя;
• План раскроя преобразуется в хромосому, которая затем
  добавляется в начальную популяцию.
Скрещивание

• Имитируется половое размножение особей-эукариот;
• Реализовано в виде модифицированного одноточечного
  кроссовера:
Хромосомы-родители:
  (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)
Мутация

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

До мутации:
  (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)
Программная реализация

• Java, Swing, JFreeChart, XML
Тестирование

• Тестовые задачи формировались с учетом промышленных
  объемов выпуска электросварных труб;
• Реализованный подход позволяет находить планы раскроя,
  удовлетворяющие требованиям реального производства;
• Время, затраченное на поиск решения, обычно находится в
  пределах одной-двух минут для Intel(R) Core(TM)2 Duo
  T5800 @ 2.00 GHZ и 2 GB RAM;
• Эффективность гибридного генетического алгоритма в
  значительной степени зависит от качества раскройных
  карт, генерируемых при помощи вспомогательной
  процедуры.
Направления дальнейших исследований

• Реализация генетического алгоритма для поиска Парето-
  оптимальных решений многокритериальной задачи;
• Разработка полноценного пользовательского интерфейса;
• Внедрение системы планирования на ДМЗ;
• Релиз свободно распространяемой программной
  библиотеки с открытым исходным кодом, снабженной
  документацией и примерами;
• Предложенный подход может быть использован для
  решения родственных задач рациональной упаковки и
  размещения, календарного планирования и т.д.
Спасибо за внимание!




Связь: e-mail    →   vankina@ukr.net
        блог     →   http://chasingthedegree.blogspot.com/

More Related Content

What's hot

20111002 circuit complexity_seminar_lecture03_kulikov
20111002 circuit complexity_seminar_lecture03_kulikov20111002 circuit complexity_seminar_lecture03_kulikov
20111002 circuit complexity_seminar_lecture03_kulikovComputer Science Club
 
Лекция 8 Основы 3D обработки
Лекция 8 Основы 3D обработкиЛекция 8 Основы 3D обработки
Лекция 8 Основы 3D обработкиVictor Kulikov
 
Применение нейронных сетей и генетических алгоритмов при торговле на бирже.
Применение нейронных сетей и генетических алгоритмов при торговле на бирже. Применение нейронных сетей и генетических алгоритмов при торговле на бирже.
Применение нейронных сетей и генетических алгоритмов при торговле на бирже. Pavel Tsukanov
 
ЭЛЕМЕНТЫ ИСКУСТВЕННОГО ИНТЕЛЛЕКТА ПРИ ПРОГРАММИРОВАНИИ. (http://tuladev.net/e...
ЭЛЕМЕНТЫ ИСКУСТВЕННОГО ИНТЕЛЛЕКТА ПРИ ПРОГРАММИРОВАНИИ. (http://tuladev.net/e...ЭЛЕМЕНТЫ ИСКУСТВЕННОГО ИНТЕЛЛЕКТА ПРИ ПРОГРАММИРОВАНИИ. (http://tuladev.net/e...
ЭЛЕМЕНТЫ ИСКУСТВЕННОГО ИНТЕЛЛЕКТА ПРИ ПРОГРАММИРОВАНИИ. (http://tuladev.net/e...Pavel Tsukanov
 
Лекция 3 Сегментация
Лекция 3 СегментацияЛекция 3 Сегментация
Лекция 3 СегментацияVictor Kulikov
 
Лекция 07 Обработка видео
Лекция 07 Обработка видеоЛекция 07 Обработка видео
Лекция 07 Обработка видеоVictor Kulikov
 
Советский суперкомпьютер К-340А и секретные вычисления
Советский суперкомпьютер К-340А и секретные вычисленияСоветский суперкомпьютер К-340А и секретные вычисления
Советский суперкомпьютер К-340А и секретные вычисленияPositive Hack Days
 
Решение систем линейных уравнений: трехдиагональные, симметричные и положител...
Решение систем линейных уравнений: трехдиагональные, симметричные и положител...Решение систем линейных уравнений: трехдиагональные, симметричные и положител...
Решение систем линейных уравнений: трехдиагональные, симметричные и положител...Theoretical mechanics department
 
CV2011 Lecture 12. Action recognition
CV2011 Lecture 12. Action recognitionCV2011 Lecture 12. Action recognition
CV2011 Lecture 12. Action recognitionAnton Konushin
 
CV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic videoCV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic videoAnton Konushin
 
TMPA-2013 Dmitry Zaitsev
TMPA-2013 Dmitry ZaitsevTMPA-2013 Dmitry Zaitsev
TMPA-2013 Dmitry ZaitsevIosif Itkin
 
CV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time visionCV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time visionAnton Konushin
 
Итерационные методы решения СЛАУ
Итерационные методы решения СЛАУИтерационные методы решения СЛАУ
Итерационные методы решения СЛАУTheoretical mechanics department
 
Probabilistic Verification in Computational Systems Design
Probabilistic Verification in Computational Systems DesignProbabilistic Verification in Computational Systems Design
Probabilistic Verification in Computational Systems DesignIosif Itkin
 
Лекция №3. Свойства и моделирование стандартных схем программ. Предмет "Теори...
Лекция №3. Свойства и моделирование стандартных схем программ. Предмет "Теори...Лекция №3. Свойства и моделирование стандартных схем программ. Предмет "Теори...
Лекция №3. Свойства и моделирование стандартных схем программ. Предмет "Теори...Nikolay Grebenshikov
 
20130302 np algorithms_kulikov_lecture04-05_sat
20130302 np algorithms_kulikov_lecture04-05_sat20130302 np algorithms_kulikov_lecture04-05_sat
20130302 np algorithms_kulikov_lecture04-05_satComputer Science Club
 
A Method of Reducing Computational Complexity in Verification of Programming ...
A Method of Reducing Computational Complexity in Verification of Programming ...A Method of Reducing Computational Complexity in Verification of Programming ...
A Method of Reducing Computational Complexity in Verification of Programming ...Iosif Itkin
 
Решение краевых задач методом конечных элементов
Решение краевых задач методом конечных элементовРешение краевых задач методом конечных элементов
Решение краевых задач методом конечных элементовTheoretical mechanics department
 
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL Models
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL ModelsTMPA-2013 Chupilko: Verification of Correct Behaviour of HDL Models
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL ModelsIosif Itkin
 

What's hot (20)

20111002 circuit complexity_seminar_lecture03_kulikov
20111002 circuit complexity_seminar_lecture03_kulikov20111002 circuit complexity_seminar_lecture03_kulikov
20111002 circuit complexity_seminar_lecture03_kulikov
 
Лекция 8 Основы 3D обработки
Лекция 8 Основы 3D обработкиЛекция 8 Основы 3D обработки
Лекция 8 Основы 3D обработки
 
Применение нейронных сетей и генетических алгоритмов при торговле на бирже.
Применение нейронных сетей и генетических алгоритмов при торговле на бирже. Применение нейронных сетей и генетических алгоритмов при торговле на бирже.
Применение нейронных сетей и генетических алгоритмов при торговле на бирже.
 
ЭЛЕМЕНТЫ ИСКУСТВЕННОГО ИНТЕЛЛЕКТА ПРИ ПРОГРАММИРОВАНИИ. (http://tuladev.net/e...
ЭЛЕМЕНТЫ ИСКУСТВЕННОГО ИНТЕЛЛЕКТА ПРИ ПРОГРАММИРОВАНИИ. (http://tuladev.net/e...ЭЛЕМЕНТЫ ИСКУСТВЕННОГО ИНТЕЛЛЕКТА ПРИ ПРОГРАММИРОВАНИИ. (http://tuladev.net/e...
ЭЛЕМЕНТЫ ИСКУСТВЕННОГО ИНТЕЛЛЕКТА ПРИ ПРОГРАММИРОВАНИИ. (http://tuladev.net/e...
 
L06 detection
L06 detectionL06 detection
L06 detection
 
Лекция 3 Сегментация
Лекция 3 СегментацияЛекция 3 Сегментация
Лекция 3 Сегментация
 
Лекция 07 Обработка видео
Лекция 07 Обработка видеоЛекция 07 Обработка видео
Лекция 07 Обработка видео
 
Советский суперкомпьютер К-340А и секретные вычисления
Советский суперкомпьютер К-340А и секретные вычисленияСоветский суперкомпьютер К-340А и секретные вычисления
Советский суперкомпьютер К-340А и секретные вычисления
 
Решение систем линейных уравнений: трехдиагональные, симметричные и положител...
Решение систем линейных уравнений: трехдиагональные, симметричные и положител...Решение систем линейных уравнений: трехдиагональные, симметричные и положител...
Решение систем линейных уравнений: трехдиагональные, симметричные и положител...
 
CV2011 Lecture 12. Action recognition
CV2011 Lecture 12. Action recognitionCV2011 Lecture 12. Action recognition
CV2011 Lecture 12. Action recognition
 
CV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic videoCV2011 Lecture 11. Basic video
CV2011 Lecture 11. Basic video
 
TMPA-2013 Dmitry Zaitsev
TMPA-2013 Dmitry ZaitsevTMPA-2013 Dmitry Zaitsev
TMPA-2013 Dmitry Zaitsev
 
CV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time visionCV2011 Lecture 13. Real-time vision
CV2011 Lecture 13. Real-time vision
 
Итерационные методы решения СЛАУ
Итерационные методы решения СЛАУИтерационные методы решения СЛАУ
Итерационные методы решения СЛАУ
 
Probabilistic Verification in Computational Systems Design
Probabilistic Verification in Computational Systems DesignProbabilistic Verification in Computational Systems Design
Probabilistic Verification in Computational Systems Design
 
Лекция №3. Свойства и моделирование стандартных схем программ. Предмет "Теори...
Лекция №3. Свойства и моделирование стандартных схем программ. Предмет "Теори...Лекция №3. Свойства и моделирование стандартных схем программ. Предмет "Теори...
Лекция №3. Свойства и моделирование стандартных схем программ. Предмет "Теори...
 
20130302 np algorithms_kulikov_lecture04-05_sat
20130302 np algorithms_kulikov_lecture04-05_sat20130302 np algorithms_kulikov_lecture04-05_sat
20130302 np algorithms_kulikov_lecture04-05_sat
 
A Method of Reducing Computational Complexity in Verification of Programming ...
A Method of Reducing Computational Complexity in Verification of Programming ...A Method of Reducing Computational Complexity in Verification of Programming ...
A Method of Reducing Computational Complexity in Verification of Programming ...
 
Решение краевых задач методом конечных элементов
Решение краевых задач методом конечных элементовРешение краевых задач методом конечных элементов
Решение краевых задач методом конечных элементов
 
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL Models
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL ModelsTMPA-2013 Chupilko: Verification of Correct Behaviour of HDL Models
TMPA-2013 Chupilko: Verification of Correct Behaviour of HDL Models
 

Viewers also liked

Архитектура OpenStack
Архитектура OpenStackАрхитектура OpenStack
Архитектура OpenStackMirantis
 
OpenStack семинар - введение
OpenStack семинар - введениеOpenStack семинар - введение
OpenStack семинар - введениеMirantis
 
Что такое OpenStack
Что такое OpenStackЧто такое OpenStack
Что такое OpenStackIlya Alekseyev
 
Демо установки OpenStack с помощью devstack
Демо установки OpenStack с помощью devstackДемо установки OpenStack с помощью devstack
Демо установки OpenStack с помощью devstackMirantis
 
Каталог выставки ИНФОРМАТИКА В ЖИЗНИ США, 1987 год
Каталог выставки ИНФОРМАТИКА В ЖИЗНИ США, 1987 годКаталог выставки ИНФОРМАТИКА В ЖИЗНИ США, 1987 год
Каталог выставки ИНФОРМАТИКА В ЖИЗНИ США, 1987 годAlexey Kondrashov
 
Scale11x : Virtualization with Xen and XCP
Scale11x : Virtualization with Xen and XCP Scale11x : Virtualization with Xen and XCP
Scale11x : Virtualization with Xen and XCP The Linux Foundation
 
Securing your cloud with Xen's advanced security features
Securing your cloud with Xen's advanced security featuresSecuring your cloud with Xen's advanced security features
Securing your cloud with Xen's advanced security featuresThe Linux Foundation
 

Viewers also liked (7)

Архитектура OpenStack
Архитектура OpenStackАрхитектура OpenStack
Архитектура OpenStack
 
OpenStack семинар - введение
OpenStack семинар - введениеOpenStack семинар - введение
OpenStack семинар - введение
 
Что такое OpenStack
Что такое OpenStackЧто такое OpenStack
Что такое OpenStack
 
Демо установки OpenStack с помощью devstack
Демо установки OpenStack с помощью devstackДемо установки OpenStack с помощью devstack
Демо установки OpenStack с помощью devstack
 
Каталог выставки ИНФОРМАТИКА В ЖИЗНИ США, 1987 год
Каталог выставки ИНФОРМАТИКА В ЖИЗНИ США, 1987 годКаталог выставки ИНФОРМАТИКА В ЖИЗНИ США, 1987 год
Каталог выставки ИНФОРМАТИКА В ЖИЗНИ США, 1987 год
 
Scale11x : Virtualization with Xen and XCP
Scale11x : Virtualization with Xen and XCP Scale11x : Virtualization with Xen and XCP
Scale11x : Virtualization with Xen and XCP
 
Securing your cloud with Xen's advanced security features
Securing your cloud with Xen's advanced security featuresSecuring your cloud with Xen's advanced security features
Securing your cloud with Xen's advanced security features
 

Similar to Эволюционный подход к оптимизации раскроя рулонных материалов

Эволюционные методы оптимизации раскроя рулонных материалов (семинар в совете)
Эволюционные методы оптимизации раскроя рулонных материалов (семинар в совете)Эволюционные методы оптимизации раскроя рулонных материалов (семинар в совете)
Эволюционные методы оптимизации раскроя рулонных материалов (семинар в совете)Victor Balabanov
 
Доклад на семинаре в лаборатории алгоритмической биологии АУ
Доклад на семинаре в лаборатории алгоритмической биологии АУДоклад на семинаре в лаборатории алгоритмической биологии АУ
Доклад на семинаре в лаборатории алгоритмической биологии АУFedor Tsarev
 
CV2011-2. Lecture 12. Face models.
CV2011-2. Lecture 12.  Face models.CV2011-2. Lecture 12.  Face models.
CV2011-2. Lecture 12. Face models.Anton Konushin
 
Построение рациональных планов продольного раскроя рулонных материалов на осн...
Построение рациональных планов продольного раскроя рулонных материалов на осн...Построение рациональных планов продольного раскроя рулонных материалов на осн...
Построение рациональных планов продольного раскроя рулонных материалов на осн...Victor Balabanov
 
К.В. Воронцов "Нейронные сети (продолжение)"
К.В. Воронцов "Нейронные сети (продолжение)"К.В. Воронцов "Нейронные сети (продолжение)"
К.В. Воронцов "Нейронные сети (продолжение)"Yandex
 
Глобальная дискретная оптимизация при помощи разрезов графов
Глобальная дискретная оптимизация при помощи разрезов графовГлобальная дискретная оптимизация при помощи разрезов графов
Глобальная дискретная оптимизация при помощи разрезов графовromovpa
 
CV2011-2. Lecture 05. Video segmentation.
CV2011-2. Lecture 05.  Video segmentation.CV2011-2. Lecture 05.  Video segmentation.
CV2011-2. Lecture 05. Video segmentation.Anton Konushin
 
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.Anton Konushin
 
презентация с авторским шаблоном и заметками Levinaga
презентация с авторским шаблоном и заметками Levinagaпрезентация с авторским шаблоном и заметками Levinaga
презентация с авторским шаблоном и заметками LevinagaGalnalevina
 
презентация с авторским шаблоном и заметками Levinaga
презентация с авторским шаблоном и заметками Levinagaпрезентация с авторским шаблоном и заметками Levinaga
презентация с авторским шаблоном и заметками LevinagaGalnalevina
 
презентация к лекции по параметрическим колебаниям
презентация к лекции по параметрическим колебаниямпрезентация к лекции по параметрическим колебаниям
презентация к лекции по параметрическим колебаниямGalnalevina
 
презентация к лекции по параметрическим колебаниям
презентация к лекции по параметрическим колебаниямпрезентация к лекции по параметрическим колебаниям
презентация к лекции по параметрическим колебаниямlevinaga
 
ОПК № 3 – Машинное представление целых чисел, символов, строк
ОПК № 3 – Машинное представление целых чисел, символов, строкОПК № 3 – Машинное представление целых чисел, символов, строк
ОПК № 3 – Машинное представление целых чисел, символов, строкVladimir Parfinenko
 
20091108 algorithmsfornphardproblems kulikov_lecture08
20091108 algorithmsfornphardproblems kulikov_lecture0820091108 algorithmsfornphardproblems kulikov_lecture08
20091108 algorithmsfornphardproblems kulikov_lecture08Computer Science Club
 
презентация к лекции по параметрическим колебаниям
презентация к лекции по параметрическим колебаниямпрезентация к лекции по параметрическим колебаниям
презентация к лекции по параметрическим колебаниямGalnalevina
 
презентация с авторским шаблоном и заметками Levinaga
презентация с авторским шаблоном и заметками Levinagaпрезентация с авторским шаблоном и заметками Levinaga
презентация с авторским шаблоном и заметками LevinagaGalnalevina
 

Similar to Эволюционный подход к оптимизации раскроя рулонных материалов (20)

Семинар
СеминарСеминар
Семинар
 
Эволюционные методы оптимизации раскроя рулонных материалов (семинар в совете)
Эволюционные методы оптимизации раскроя рулонных материалов (семинар в совете)Эволюционные методы оптимизации раскроя рулонных материалов (семинар в совете)
Эволюционные методы оптимизации раскроя рулонных материалов (семинар в совете)
 
Доклад на семинаре в лаборатории алгоритмической биологии АУ
Доклад на семинаре в лаборатории алгоритмической биологии АУДоклад на семинаре в лаборатории алгоритмической биологии АУ
Доклад на семинаре в лаборатории алгоритмической биологии АУ
 
CV2011-2. Lecture 12. Face models.
CV2011-2. Lecture 12.  Face models.CV2011-2. Lecture 12.  Face models.
CV2011-2. Lecture 12. Face models.
 
Построение рациональных планов продольного раскроя рулонных материалов на осн...
Построение рациональных планов продольного раскроя рулонных материалов на осн...Построение рациональных планов продольного раскроя рулонных материалов на осн...
Построение рациональных планов продольного раскроя рулонных материалов на осн...
 
К.В. Воронцов "Нейронные сети (продолжение)"
К.В. Воронцов "Нейронные сети (продолжение)"К.В. Воронцов "Нейронные сети (продолжение)"
К.В. Воронцов "Нейронные сети (продолжение)"
 
817996.pptx
817996.pptx817996.pptx
817996.pptx
 
Lection02
Lection02Lection02
Lection02
 
Глобальная дискретная оптимизация при помощи разрезов графов
Глобальная дискретная оптимизация при помощи разрезов графовГлобальная дискретная оптимизация при помощи разрезов графов
Глобальная дискретная оптимизация при помощи разрезов графов
 
CV2011-2. Lecture 05. Video segmentation.
CV2011-2. Lecture 05.  Video segmentation.CV2011-2. Lecture 05.  Video segmentation.
CV2011-2. Lecture 05. Video segmentation.
 
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
CV2015. Лекция 4. Классификация изображений и введение в машинное обучение.
 
презентация с авторским шаблоном и заметками Levinaga
презентация с авторским шаблоном и заметками Levinagaпрезентация с авторским шаблоном и заметками Levinaga
презентация с авторским шаблоном и заметками Levinaga
 
презентация с авторским шаблоном и заметками Levinaga
презентация с авторским шаблоном и заметками Levinagaпрезентация с авторским шаблоном и заметками Levinaga
презентация с авторским шаблоном и заметками Levinaga
 
презентация к лекции по параметрическим колебаниям
презентация к лекции по параметрическим колебаниямпрезентация к лекции по параметрическим колебаниям
презентация к лекции по параметрическим колебаниям
 
презентация к лекции по параметрическим колебаниям
презентация к лекции по параметрическим колебаниямпрезентация к лекции по параметрическим колебаниям
презентация к лекции по параметрическим колебаниям
 
2020 03-31-lection
2020 03-31-lection2020 03-31-lection
2020 03-31-lection
 
ОПК № 3 – Машинное представление целых чисел, символов, строк
ОПК № 3 – Машинное представление целых чисел, символов, строкОПК № 3 – Машинное представление целых чисел, символов, строк
ОПК № 3 – Машинное представление целых чисел, символов, строк
 
20091108 algorithmsfornphardproblems kulikov_lecture08
20091108 algorithmsfornphardproblems kulikov_lecture0820091108 algorithmsfornphardproblems kulikov_lecture08
20091108 algorithmsfornphardproblems kulikov_lecture08
 
презентация к лекции по параметрическим колебаниям
презентация к лекции по параметрическим колебаниямпрезентация к лекции по параметрическим колебаниям
презентация к лекции по параметрическим колебаниям
 
презентация с авторским шаблоном и заметками Levinaga
презентация с авторским шаблоном и заметками Levinagaпрезентация с авторским шаблоном и заметками Levinaga
презентация с авторским шаблоном и заметками Levinaga
 

Эволюционный подход к оптимизации раскроя рулонных материалов

  • 1. «Эволюционный подход к оптимизации раскроя рулонных материалов» Виктор Балабанов аспирант кафедры «Автоматизированные системы управления» Донецкий национальный технический университет XII международная научно-техническая конференция «Системный анализ и информационные технологии» НТУУ «КПИ», Киев, 25—29 мая 2010 г.
  • 2. Продольный раскрой рулонов • Используются специализированные линии продольной резки, также называемые слиттерами: • Все резы выполняются от края до края, параллельно боковой кромке исходной полосы.
  • 3. Оптимизация продольного раскроя Простая задача Тривиальное решение: Материал: 7 рулонов W = 11 14% потерь Заказы: w1 = 4 X5 w2 = 3 X7 w3 = 2 X 11
  • 4. Структура допустимого решения задачи 1 X2 X0 X0 (2; 0; 0) 2 X2 X0 X0 (2; 0; 0) Перечень из 3 X1 X2 X0 (1; 2; 0) раскройных 4 X0 X3 X0 (0; 3; 0) карт (1—7) — план раскроя 5 X0 X2 X2 (0; 2; 2) 6 X0 X0 X5 (0; 0; 5) 7 X0 X0 X4 (0; 0; 4)
  • 5. Задача рационального раскроя • Относится к NP-полным задачам дискретной оптимизации комбинаторного типа; • Впервые формализована в терминах целочисленного линейного программирования Л. В. Канторовичем в 1939 г. Z = min ∑ xk k ∑a k ik xk ≥ d i xk ∈ Ζ + i ∈ { ,  , m} k ∈ { ,  , P} 1 1
  • 6. Методы решения • Точные (на основе общей схемы метода ветвей и границ, метод отсечений, динамическое программирование); • Приближенные эвристические (отложенная генерация столбцов, последовательные эвристические процедуры, конструктивные эвристики); • Приближенные метаэвристические (имитация отжига, поиск с запретами, GRASP, эволюционные, муравьиные и роевые алгоритмы).
  • 7. Особенности рассматриваемой задачи • Необходимо учитывать конструкцию дисковых ножниц:
  • 8. Повышение технологичности планов раскроя План раскроя I План раскроя II 1 Сравнение планов I II 2 рулоны 6 6 3 потери 4,5% 4,5% переналадки 3 1 1
  • 9. Многокритериальная задача • Первый критерий Z1: минимизировать потери материала в отход; • Второй критерий Z2: за счет многократного использования раскройных карт сократить общее число уникальных карт в плане раскроя; • Может быть сформулирована как задача целочисленного нелинейного программирования; • Для упрощения решения возможно сведение к однокритериальной задаче посредством скаляризации: Z * = C1Z1 + C2 Z 2
  • 10. Математическая формулировка     Z = (Z1 , Z 2 ); Z1 = min ∑∑ Tik  Wi − ∑ a jk w j ; Z 2 = min ∑ δ  ∑ Tik   k i  j  k  i  ∑∑ T k i ik a jk Li ≥ l j 1, если рулон i кроится по способу k Tik =  0, в противном случае   1, если ∑i Tik > 0  δ  ∑ Tik  =   i  0, в противном случае  i ∈ { ,  , m} j ∈ { ,  , n} k ∈ { ,  , K } 1 1 1
  • 11. Эволюционные алгоритмы • Предложены в середине 1960-х годов и реализуют некоторые базовые идеи эволюционной теории Дарвина, заимствуется соответствующая терминология; • Решения оптимизационной задаче представляются в виде последовательностей фиксированной или переменной длины, часто используются иерархические структуры; • На каждой итерации алгоритм работает с одним или несколькими решениями; • Целевая функция определяет «приспособленность» решений; • Существуют различные модификации: ЭП, ЭС, ГА, ГП.
  • 12. Генетический алгоритм начало А инициализировать мутация начальную популяцию Б отсортировать хромосомы сформировать новую по приспособленности популяцию нет селекция останов Б да выдать скрещивание решения А конец
  • 13. Выбор способа представления решений карта план Аналогия: ген хромосома раскроя раскроя План раскроя ... X1 X1 X2 X1 X1 X2 X0 X2 X1 карта 1 карта 2 карта 6 Хромосома (1; 1; 2) (1; 1; 2) (1; 1; 2) ... (0; 2; 1) ген 1 ген 2 ген 3 ген 6
  • 14. Инициализация начальной популяции • Поиск ведется на ограниченном множестве раскройных карт, удовлетворяющих заданному набору требований; • Для генерации раскройной карты необходимо решить задачу рюкзачного типа: Z ' = max ∑ w j x j j ∑w x j j j ≤ Wi • Из полученных в результате решения вспомогательной задачи раскройных карт последовательно составляется план раскроя; • План раскроя преобразуется в хромосому, которая затем добавляется в начальную популяцию.
  • 15. Скрещивание • Имитируется половое размножение особей-эукариот; • Реализовано в виде модифицированного одноточечного кроссовера: Хромосомы-родители: (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)
  • 16. Мутация • Случайным образом изменяется структура хромосомы; • Реализована как удаление случайно выбранного гена с последующим восстановлением целостности хромосомы: До мутации: (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)
  • 18. Тестирование • Тестовые задачи формировались с учетом промышленных объемов выпуска электросварных труб; • Реализованный подход позволяет находить планы раскроя, удовлетворяющие требованиям реального производства; • Время, затраченное на поиск решения, обычно находится в пределах одной-двух минут для Intel(R) Core(TM)2 Duo T5800 @ 2.00 GHZ и 2 GB RAM; • Эффективность гибридного генетического алгоритма в значительной степени зависит от качества раскройных карт, генерируемых при помощи вспомогательной процедуры.
  • 19. Направления дальнейших исследований • Реализация генетического алгоритма для поиска Парето- оптимальных решений многокритериальной задачи; • Разработка полноценного пользовательского интерфейса; • Внедрение системы планирования на ДМЗ; • Релиз свободно распространяемой программной библиотеки с открытым исходным кодом, снабженной документацией и примерами; • Предложенный подход может быть использован для решения родственных задач рациональной упаковки и размещения, календарного планирования и т.д.
  • 20. Спасибо за внимание! Связь: e-mail → vankina@ukr.net блог → http://chasingthedegree.blogspot.com/