УДК 005.932 В.А. Чеканин, А.В. Чеканин ИССЛЕДОВАНИЕ ГЕНЕТИЧЕСКИХ МЕТОДОВ ОПТИМИЗАЦИИ РАСПРЕДЕЛЕНИЯ ПРЯМОУГОЛЬНЫХ РЕСУРСОВ Владислав Александрович Чеканин, к.т.н., доцент кафедры сопротивления материалов ФГБОУ ВПО МГТУ «СТАНКИН» Вадковский пер., д. 3а, Москва, 127994, Россия Тел.: (916)881-1759, E-mail: [email protected] Александр Васильевич Чеканин, д.т.н., профессор, заведующий кафедрой сопротивления материалов ФГБОУ ВПО МГТУ «СТАНКИН» Вадковский пер., д. 3а, Москва, 127994, Россия Тел.: (916)308-4898, E-mail: [email protected] Аннотация В статье исследованы вопросы эффективности применения классического генетического алгоритма и мультиметодного генетического алгоритма, используемых при поиске решения задачи оптимального распределения двухмерных прямоугольных ресурсов. Описаны разработанные для мультиметодного генетического алгоритма эвристики размещения. Приведены результаты проведенного вычислительного эксперимента на тестовых задачах двухмерной упаковки, подтверждающие эффективность реализованного авторами мультиметодного генетического алгоритма. Ключевые слова: рациональное использование ресурсов, задача ортогональной упаковки, математические методы, генетические алгоритмы V.A. Chekanin, A.V. Chekanin RESEARCHING OF GENETIC METHODS TO OPTIMIZE THE ALLOCATION OF RECTANGULAR RESOURCES Candidate of Science (PhD) in technology Vladislav A. Chekanin, lecturer Moscow State University of Technology «STANKIN», Vadkovsky lane, 3a, Moscow, 127994, Russia Phone: 916-881-1759; E-mail: [email protected] 798 Doctor of Engineering Alexander V. Chekanin, professor, head of department of strength of materials Moscow State University of Technology «STANKIN», Vadkovsky lane, 3a, Moscow, 127994, Russia Phone: 916-308-4898; E-mail: [email protected] Abstract The article is devoted to researching of an effectiveness of applying of the classical genetic algorithm and of the multimethodical genetic algorithm which uses in searching for the optimal decision of the two-dimensional rectangular packing problem. New heuristics developed by authors for the multimethodical genetic algorithm are described. The computational experiment with the standard rectangular two-dimensional packing problems, showing the effectiveness of realized by authors muthimetodical genetic algorithm is given. Key words: rational planning of recourses, orthogonal packing problem, mathematical methods, genetic algorithms Введение Среди задач комбинаторной оптимизации выделяют класс неполиномиально сложных (NP-полных) задач, для решения которых не существует эффективных методов. Эффективным подходом к решению таких задач является применение эволюционных алгоритмов, в частности, генетических алгоритмов. В настоящей работе рассматривается применение генетических алгоритмов для оптимизации решения NP-полной задачи оптимального распределения двумерных прямоугольных ресурсов (также эта задача известна как задача двухмерной ортогональной упаковки) [5]. Задача двухмерной ортогональной упаковки описывается следующим образом: имеются набор N прямоугольных контейнеров с габаритами Wi ; Li , i 1, N и набор n прямоугольных предметов w j ; l j , j 1, n . Необходимо разместить все объекты в минимальном числе контейнеров при выполнении следующих условий: 1) ребра упакованных в контейнере прямоугольных объектов параллельны ребрам контейнера; 2) упакованные объекты не пересекаются друг с другом; 3) упакованные объекты не пересекаются с границами контейнера. Классический генетический алгоритм В качестве алгоритма оптимизации решения задачи оптимального распределения ресурсов может быть использован генетический алгоритм 799 (ГА). ГА представляет собой математическую модель эволюции популяции искусственных особей, основанную на механизмах селекции и генетики [2]. Идея ГА, состоит в организации эволюционного процесса по аналогии с живой природой. Целью этого процесса является получение оптимального решения. В теории генетических алгоритмов используется следующая терминология: хромосома – закодированное решение задачи, популяция – подмножество альтернативных решений. Принципиальная блок-схема классического варианта ГА представлена на рис. 1. Рис. 1. Блок-схема генетического алгоритма Поиск решения с помощью ГА выполняется до тех пор, пока не будет выполнен критерий останова. В отличие от других методов оптимизации, ГА, как правило, анализируют одновременно различные области пространства решений и поэтому они более приспособлены к нахождению новых областей с лучшими значениями целевой функции. Для работы ГА выбирается множество натуральных параметров оптимизационной проблемы, которое кодируется в виде последовательности 800 конечной длины в некотором алфавите. При решении задачи упаковки решение может быть закодировано строкой натуральных чисел, содержащей порядок подачи объектов к размещению. В настоящей работе исследуется эффективность генетического алгоритма со следующими параметрами: начальная популяция решения инициализируется случайным образом, используются генетические операторы скрещивания (вероятность выполнения – 0,9), инверсии (0,7), мутации (0,1). Мультиметодный генетический алгоритм (МГА) Использование строки решения, в которой закодирована последовательность подачи объектов к размещению не всегда оказывается эффективной, особенно при увеличении числа размещаемых объектов. В настоящей работе реализована мультиметодная технология, разработанная профессором Норенковым И.П. [3]. Мультиметодный генетический алгоритм использует набор хромосом, закодированных последовательностью алгоритмов решения задачи, называемые эвристиками. При решении задачи упаковки эвристики представляет собой алгоритмы выбора объектов для их подачи к размещению. Размер хромосомы в реализованном МГА равен числу размещаемых объектов. Для решения задач ортогональной упаковки объектов на основе МГА разработаны следующие эвристики: 1) WF (Width Fit): выбор первого подходящего объекта с максимальной шириной для размещения в определенной области контейнера; 2) SF (Square Fit): выбор первого подходящего объекта с максимальной площадью для размещения в определенной области контейнера; 3) NWF (Next Width Fit): поиск наиболее походящей области контейнера для размещения первого из списка упорядоченных по ширине неразмещенных объектов; 4) NSW (Next Square Fit): поиск наиболее походящей области контейнера для размещения первого из списка упорядоченных по площади неразмещенных объектов. Для решения задачи упаковки на основе МГА предлагается в качестве исходного набора решений использовать начальную популяцию решений, которая содержит набор хромосом, состоящий из трех частей: хромосомы, содержащие только определенные эвристики; хромосомы, содержащие только определенные эвристики для объектов, повернутых на 90; хромосомы, содержащие произвольный набор эвристик. 801 Вычислительный эксперимент Тестирование ГА и МГА проводилось при решении тестовых задач двухмерной контейнерной упаковки из библиотеки OR-library [1] для наборов двумерных прямоугольных объектов, взятых из задач Fekete и Schepers [4] с известными точными нижними границами решения. Задачи решались с использованием равработанного авторами прикладном программном обеспечении Packer, функционирующем на платформе Microsoft Win32. Эксперименты проводились на персональной ЭВМ (ЦП – AMD 1.79 ГГЦ, ОЗУ – 896 МБ). В ходе тестирования была проведена серия из 100 экспериментов для 21 задачи упаковки с объемом выборки в 40, 50, 100, 150, 250, 500 и 1000 объектов. Диапазоны изменения размеров объектов в тестовых задачах трех типов с различным процентным соотношений классов размещаемых объектов приведены в таблицах 1-2. Таблица 1. Геометрические параметры размещаемых объектов Класс объектов 1 2 3 4 Характеристики объектов Широкие Длинные Большие Маленькие Интервал распределения длины объектов [1, 50] [75, 100] [50, 100] [1, 50] Интервал распределения ширины объектов [75, 100] [1, 50] [50, 100] [1, 50] Таблица 2. Типы решаемых тестовых задач Тип задач 1 2 3 Соотношение классов размещаемых объектов, % Класс 1 Класс 2 Класс 3 Класс 4 20 20 20 40 15 15 15 55 10 10 10 70 Показателем качества размещения объектов служит относительное отклонение от нижней границы, которое рассчитывается по формуле S (*p ) % 100% , где S – целевая функция решения (число заполненных n объектами контейнеров), (*p ) – нижняя граница задачи (минимально возможное число заполненных контейнеров), n – число размещенных объектов. 802 В таблице 3 приведены результаты проведенного вычислительного эксперимента. В таблицу сведены значение целевой функции S найденного решения, показатель качества размещения объектов и время решения задачи . В ходе вычислительного эксперимента исследовались ГА и МГА со следующими параметрами: размер популяции – 25, время поиска решения ограничено 300 с, максимальная глубина поиска – 1000 поколений. Таблица 3. Результаты тестирования разработанных алгоритмов Алгоритм Тестовые задачи ngcutfs ГА МГА Число Задача , с (*p ) S S объектов Задачи 1-го типа 1_11 40 10 12 5,00 12 5,00 1,10 1_41 50 14 15 2,00 0,00 1,62 14 1_71 100 24 26 2,00 26 2,00 2,25 1_101 150 36 39 2,00 1,33 4,62 38 1_131 250 58 62 1,60 1,20 25,87 61 1_161 500 123 130 1,40 1,00 102,20 128 1_191 1000 241 254 1,30 0,90 300,00 250 2.19 2,03 Среднее отклонение, % Задачи 2-го типа 2_11 40 11 12 2,50 0,00 0,98 11 2_41 50 9 11 4,00 2,00 0,81 10 2_71 100 23 25 2,00 1,00 4,40 24 2_101 150 31 34 2,00 1,33 9,54 33 2_131 250 53 57 1,60 57 1,60 17,34 2_161 500 99 103 0,80 103 0,80 48,30 2_191 1000 205 213 0,80 0,70 210,18 212 1.96 1,56 Среднее отклонение, % Задачи 3-го типа 3_11 40 7 7 0,00 7 0,00 0,60 3_41 50 10 12 4,00 2,00 1,48 11 3_71 100 15 17 2,00 1,00 4,34 16 3_101 150 21 22 0,67 22 0,67 4,96 3_131 250 39 42 1,20 0,80 24,23 41 3_161 500 77 80 0,60 80 0,60 98,64 3_191 1000 153 158 0,50 0,40 300,00 157 1,28 1,02 Среднее отклонение, % 803 Поскольку время работы ГА в большей мере определяется глубиной поколений эволюции популяции решений, то время его работы принципиально не отличается от времени работы МГА, поэтому в таблице 3 приведено время работы только МГА. Проведенные эксперименты показали, что среди 21 решенной тестовой задачи результаты работы ГА и МГА одинаковы для семи задач, а для 14 тестовых задач МГА обеспечивает получение лучших по сравнению с ГА решений (значения целевой функции для этих задач в таблице выделены жирным шрифтом). Выводы Проведенные вычислительные эксперименты показали высокую эффективность реализованного МГА с предложенными эвристиками при решении NP-полной задачи ортогональной упаковки объектов. Поскольку эффективность работы МГА определяется набором используемых эвристик, то перспективным направлением дальнейших исследований является разработка и исследование новых эвристик размещения. Высокая эффективность МГА по сравнению с классическим ГА позволяет также сделать следующий вывод: создание новых схем и вариаций ГА является важным направлением исследования алгоритмов оптимизации решения многокритериальных задач. СПИСОК ЛИТЕРАТУРЫ 1. Библиотека OR-library наборов объектов из задач Fekete и Schepers [Электронный ресурс]. URL: http://people.brunel.ac.uk/~mastjjb/jeb/info.html (дата обращения: 18 марта 2012 года). 2. Гладков Л.А., Курейчик В.В., Курейчик В.М. Генетические алгоритмы / Под ред. В.М. Курейчика. – 2-е изд., испр. и доп. – М.: ФИЗМАТЛИТ, 2006. – 320 с. 3. Норенков И.П. Эвристики и их комбинации в генетических методах дискретной оптимизации // Информационные технологии. – 1999. – №1. – С. 2-7. 4. Beasley J.E. A population heuristic for constrained two-dimensional nonguillotine cutting // EJOR. – 2004. – Vol. 156. – P. 601-627. 5. Gary, M., Johnson, D. Computers intractability: a guide to the theory of NPcompleteness. San Francisco: W.H. Freeman, 1979. – 338 p. 804