Разработка гибридного модифицированного алгоритма на примере решения тестовых задач
Гибридный модифицированный эволюционный алгоритм и перспективы его применения для решения задач многокритериальной оптимизации. Оценка эффективности многоточечности и полигамности, составляющими основу предложенного смешанного эволюционного метода.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 28.04.2017 |
Размер файла | 202,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
Научный журнал КубГАУ, №75(01), 2012 года
УДК 519.62
РАЗРАБОТКА ГИБРИДНОГО МОДИФИЦИРОВАННОГО АЛГОРИТМА НА ПРИМЕРЕ РЕШЕНИЯ ТЕСТОВЫХ ЗАДАЧ
Сушков Сергей Иванович
д.т.н., профессор
Воронежская государственная
лесотехническая академия,
Воронеж, Россия
В статье приведены результаты экспериментов по оценке эффективности многоточечности и полигамности, составляющими основу предложенного смешанного эволюционного метода, в сравнении с известными генетическими методами
Ключевые слова: ГЕНЕТИЧЕСКИЙ АЛГОРИТМ, ЭВОЛЮЦИОННЫЕ МЕТОДЫ, ТЕСТОВЫЕ ЗАДАЧИ, ОЦЕНКА КАЧЕСТВА UDC 519.6
Генетические алгоритмы (ГА) выражают эволюцию популяции хромосом в направлении от начального поколения к окрестностям экстремума. Обоснование этого положения содержится в основной теореме генетического подхода - теореме схем (иначе называемой schemata theorem или теорема шаблонов) [1].
Ранее в работах [2, 3] рассматривался разработанный автором гибридный модифицированный эволюционный алгоритм и перспективы его применения для решения задач многокритериальной оптимизации. В этой статье приведены результаты экспериментов по оценке эффективности многоточечности и полигамности, составляющими основу предложенного смешанного эволюционного метода, в сравнении с известными генетическими методами. Для исследования эффективности ГА предложено несколько вариантов тестовых функций. Известен набор тестовых функций К. ДеДжонга, в котором имеются одно- и многоэкстремальные функции с различным рельефом, а также ряд других наборов [4].
В процессе управления сложными техническими и организационно-техническими системами необходимо постоянно принимать непростые решения, связанные с учетом многих критериев качества и ограничений на ресурсы. Если такие решения принимать с использованием только интуиции и опыта руководителя, то будет достаточно сложно сделать оптимальный выбор. В этой связи необходимо разрабатывать и внедрять формализованные методы поддержки принятия решений.
Формальные математические модели принятия решений в настоящее время все более полно отражают сложность реальных практических проблем, что, с одной стороны, делает их более адекватными реальным системам, а с другой приводит к необходимости решать все более сложные задачи оптимизации. Основные свойства реальных практических задач оптимизации - наличие многих критериев, существенных ограничений, разношкальных переменных и алгоритмическое задание функций делают невозможным применение традиционных методов. Выходом из такой ситуации является использование адаптивных стохастических алгоритмов, успешно преодолевающих указанные трудности.
Одним из наиболее часто применяемых в такой ситуации подходов являются эволюционные алгоритмы, представляющие собой стохастические оптимизационные процедуры, имитирующие процессы естественной эволюции, в частности ГА. Алгоритмическое задание функций и разношкальность переменных не представляют дополнительных трудностей для ГА, которые работают с бинаризованными представлениями решений и не требуют информации о свойствах целевых функций. Однако детальный анализ литературы показал [1-6], что при реализации ГА, возникает ряд трудно разрешимых недостатков, основными из которых являются:
- достаточно высокая ресурсоемкость ГА;
- предварительная сходимость алгоритмов в локальном оптимуме, в общем случае далеком от глобального;
- среди полученных с помощью ГА решений часто встречается большое количество непаретовских точек [2].
Таким образом, совершенствование существующих и разработка новых эффективных адаптивных поисковых алгоритмов многокритериальной оптимизации является на сегодняшний день актуальной научной задачей.
Для решения указанных проблем в работе предлагается разработать гибридный эволюционный алгоритм, сочетающий в себе применение модифицированных генетических операторов (ГО), схем селекции и архитектур генетического поиска (ГП) [3].
Функционирование сложных технических систем (ТС) происходит в динамически изменяющихся условиях как объективной, так и субъективной природы.
К числу основных тестовых задач для проверки отдельных аспектов эффективности разрабатываемых методов относятся задачи маршрутизации транспортных средств с временными окнами, задача двумерной упаковки, задача синтеза топологии и распределения трафика в вычислительных сетях и др.
Большинство предложенных наборов включает задачи непрерывной оптимизации сравнительно малого размера.
Одной из основных тестовых задач отражающих особенности задач пространственно-временного синтеза, является задача синтеза расписаний - JSSP (Job Shop Scheduling Problem) [1, 4].
К исходным данным задачи JSSP относятся:
Q - число стадий обслуживания каждой работы;
А = {A1,A2,...An} - множество работ;
M ={M1,M2,...Mm} - множество исполнителей (машин, единиц техники и т.п.);
P = [Pij] - матрица производительностей машин, где Pij - затраты времени на выполнение работы i на машине j;
C= (C1,C2,...Cm) - вектор цен, где Cj - цена за единицу времени работы машины Mj;
T = (T1,T2,...Tn) - ограничения на время окончания работ, где Ti - предельное время для завершения работы i;
Q - штраф, добавляемый к общим затратам Z при нарушении какой-либо работой соответствующего ей временного ограничения.
Требуется составить расписание, при котором минимизируются затраты на выполнение всех работ с учетом штрафов.
Приведены результаты экспериментов по оценке эффективности многоточечности и полигамности, составляющими основу предложенного гибридного эволюционного алгоритма, в сравнении с известными генетическими методами. В качестве тестовой примем задачу JSSP. Для сравнительного анализа результатов тестирования кроме разработанного алгоритма (ГМЭА) примем к рассмотрению следующие методы: CGA (Classic Genetic Algorithm), HCM (Heuristics Combination Method), PSO (поведение толпы), ASO(колония муравьев), VEGA (Vector Evaluated Genetic Algorithm), FFGA (Fonseca and Fleming's Multiobjective Genetic Algorithm), NPGA (Niched Pareto Genetic Algorithm), SPEA (Strength Pareto Evolutionary Algorithm).
Выполненное исследование потенциала рекомбинации позволяет сделать вывод о наличии оптимальных значений длин фрагментов L, на которые разделяются хромосомы при кроссовере. Для подтверждения этого вывода было проведено экспериментальное исследование зависимости функций полезности от L на примере задачи JSSP.
Ранее отмечено, что снижение эффективности генетического поиска происходит из-за явления преждевременной стагнации. Это явление исследовалось на применении методов HCM и предложенного гибридного алгоритма к задаче синтеза расписаний со следующими исходными данными: число стадий обслуживания работ q=4 стадии, число работ n=105, число машин m=15. Результаты двух вариантов решения задачи при применении каждого из сравниваемых методов приведены в табл. 1, где N - число разрывов хромосом при кроссовере (отметим, что длина хромосомы в данной задаче равна =420), Evals- число оценок целевой функции.
Таблица 1 - Решение задачи JSSP
Evals |
270 |
20т |
30т |
40т |
50т |
75т |
100т |
125т |
|
N=20 |
22570 |
22293 |
22121 |
21963 |
21901 |
21834 |
21821 |
21811 |
|
N=20 |
23498 |
22147 |
22073 |
21970 |
21850 |
21798 |
21789 |
21781 |
|
N=1 |
22570 |
22145 |
22126 |
22118 |
22118 |
22118 |
22118 |
22118 |
|
N=1 |
23498 |
22134 |
22119 |
22100 |
22099 |
22083 |
22072 |
22072 |
Результаты показывают, что при многоточечном кроссовере вероятность преждевременной стагнации уменьшается, соответственно удается заметно ближе подойти к точке экстремума.
На рис. 1 представлена зависимость коэффициента разнообразия генов r (доля генов, имеющих неодинаковые значения в хромосомах родителей в очередном акте кроссовера) от номера поколения.
Рис. 1 Иллюстрация вырождения популяции с ростом числа поколений
эволюционный алгоритм гибридный модифицированный
На рисунке светлыми точками обозначены значения r, полученные в некоторых случайно выбранных актах кроссовера при применении разработанного метода, а темными точками - аналогичные значения, полученные при применении одноточечного кроссовера (СGA). Рисунок иллюстрирует заметно меньшую предрасположенность разработанного алгоритма к ранней стагнации.
В [5] приводится теоретическое обоснование наличия оптимальных значений длин фрагментов L в смешанном эволюционном методе. Для подтверждения теоретических результатов были проведены эксперименты по определению оптимальных значений L.
На рис. 2 представлены результаты решения задачи синтеза многостадийных расписаний с 4 стадиями, 200 работами и 15 машинами с помощью разработанного метода. Точки соответствуют отдельным вариантам решения, кривая отображает усредненную зависимость целевой функции от размера фрагмента L.
Рис. 2 Зависимость результатов решения задачи VRPTW от длины фрагментов L
Полученные результаты позволяют сделать вывод: длина фрагментов L влияет на эффективность поиска. Для разработанного алгоритма в задаче JSSP оптимальные значения L находятся в диапазоне {5, 40} при общей длине хромосомы, равной 800. Следовательно, однородный и одноточечный кроссоверы не относятся к лучшим вариантам ГА.
Аналогичные результаты были получены при решении других тестовых задач. Рис. 2 иллюстрирует результаты решения задачи маршрутизации транспортных средств с временными окнами (VRPTW), в которой хромосомы содержат по 40 генов.
На рис. 3 показаны результаты решения задачи синтеза топологии и распределения трафика (СТРТ) в вычислительной сети с хромосомами длиной в 276 генов. В обоих случаях использовался метод ГМЭА.
Рис. 3 Зависимость результатов решения задачи СТРТ от длины фрагментов L
Интерес представляет сравнение разработанного ГМЭА с методами PSO и ACO [6]. Результаты такого сравнения приведены на рис. 4.
Рис. 4 Сравнение результатов решения задачи синтеза расписаний различными генетическими методами
Где Delta есть разность между полученным и наилучшим известным результатом решения тестовой задачи синтеза многостадийных расписаний с 105 работами. Эти результаты свидетельствуют о преимуществе разработанного метода перед другими сравниваемыми методами.
Оценка эффективности разработанного алгоритма проводилась на примере следующей разновидности тестовой задачи синтеза расписаний JSSP: задано:
1) Множество работ A={A1, A2,…,An}, где каждая работа Ai последовательно проходит q стадий обслуживания;
2) На каждой стадии имеется mk машин , общее число машин ;
3) Для обслуживания работы Аi на стадии k, выбирается одна из mk машин;
4) Одновременно на одной машине может обслуживаться не более одной работы, начатое обслуживание не прерывается;
5) Все работы распределены по типам и, если соседние во времени исполнения работы, обслуживаемые на j-й машине, относятся к разным типам, то j-я машина должен пройти переналадку;
6) Задана матрица производительностей P, элемент Pij равен времени обслуживания i-й работы на j-й машине;
7) Для каждой машины задана матрица переналадок E, элемент которой Eir равен времени переналадки машины при переходе с обслуживания работы i-го типа на обслуживание работы r-го типа;
8) Заданы цены единицы времени обслуживания и переналадки каждой машины (соответственно Cj и Rj);
9) Заданы ограничения на сроки выполнения каждой i-й работы: «мягкие» Di и «жесткие» Ti ограничения, причем Ti>Di, из-за нарушения сроков налагаются штрафы G1 и G2, соответственно, G2 >>G1.
Требуется получить расписание, минимизирующее общие затраты, складывающееся из штрафов, затрат на обслуживание всех работ на всех стадиях и затрат на переналадки всех машин.
В экспериментах принято: число работ 94, число машин 15, размер популяции 200. Усредненные по нескольким вариантам расчета зависимости целевой функции F(X) от числа evals обращений к процедуре ее вычисления показаны на рис. 5.
Рис. 5 Сравнительные результаты поиска разными методами
Эксперименты показали, что разработанный ГМЭА обеспечивает результат более точный по сравнению с результатами применения неадаптивных генетических алгоритмов в среднем на 7-10%.
Вывод. Проведенные исследования показали существенное преимущество разработанного алгоритма перед существующими методами, а так же перспективность применения метагенетического подхода, сочетающего ГА и классические методы оптимизации.
Список литературы:
1. Норенков И.П., Арутюнян Н.М. Эволюционные методы в задачах выбора проектных решений // Наука и образование электронное издание №9, 2007
2. Яковлев К.А., Муратов А.В. Разработка модифицированного эволюционного алгоритма решения задач многокритериальной оптимизации на всех этапах жизненного цикла парка транспортно-технологических машин // Вестник Воронежского государственного технического университета ? 2010.? Т.6. ? №7. ? С. 33-38
3. Яковлев К.А. Решение задачи многоцелевой оптимизации подвижности лесотехнических машин // Вестник Воронежского государственного технического университета ? 2010.? Т.6. ? №7. ? С. 64-67
4. Genetic Algorithms (Evolutionary Algorithms): Repository of Test Functions. - http://www.cs.uwyo.edu/~wspears/functs.html.
5. Гладков Л.А. Генетические алгоритмы / Гладков Л.А., Курейчик В.В., Курейчик. - М.: ФИЗМАТЛИТ, 2006. - 243 с.
6. Osyczka A., Kundu S. A new method to solve generalized multicriteria optimization problems using the simple genetic algorithm // Structural Optimization. 1995. Vol. 10. P. 94-99
Размещено на Allbest.ru
...Подобные документы
Оптимизация показателей эффективности функционирования технологического контура системы управления космическим аппаратом, исследование свойств его показателей. Настройка нейронной сети, гибридизация генетического алгоритма с алгоритмами локального поиска.
дипломная работа [4,5 M], добавлен 02.06.2011"Рой частиц" как наиболее простой метод эволюционного программирования, основанный на идеи о возможности решения задач оптимизации с помощью моделирования поведения групп животных. Схема работы алгоритма, составление кода программы и блок-схемы.
курсовая работа [38,5 K], добавлен 18.05.2013Оптимизация решения задачи с помощью алгоритма отжига. Анализ теории оптимизации как целевой функции. Метод градиентного спуска. Переменные и описание алгоритма отжига. Представление задачи коммивояжера через граф. Сведение задачи к переменным и решение.
курсовая работа [784,0 K], добавлен 21.05.2015Средства формализации процесса определения спецификаций. Назначение языка (PSL) и анализатора определения задач (PSA). Разработка алгоритма решения задачи, критерии оценки его сложности. Локальный и глобальный уровни повышения эффективности алгоритмов.
контрольная работа [144,9 K], добавлен 26.10.2010Характеристика параметрических методов решения задач линейного программирования: методы внутренней и внешней точки, комбинированные методы. Алгоритм метода барьерных поверхностей и штрафных функций, применяемых для решения задач большой размерности.
контрольная работа [59,8 K], добавлен 30.10.2014Общая характеристика прикладных программ, предназначенных для проведения табличных расчетов. Выделение параметров программного обеспечения, необходимого для решения финансовых задач. Разработка алгоритма решения поставленной задачи средствами MS Excel.
контрольная работа [2,6 M], добавлен 18.01.2016Задачи, решаемые методом динамического программирования. Основные этапы нахождения деревянного алгоритма решения задачи. Выполнение алгоритма Прима. Построение Эйлерового цикла. Решение задач средствами Excel. Алгоритм основной программы - Derevo.
курсовая работа [586,3 K], добавлен 04.04.2015Характеристика этапов решения задач на электронных вычислительных системах. Разработка алгоритма и основы программирования. Язык Ассемблера, предназначенный для представления в удобочитаемой символической форме программ, записанных на машинном языке.
контрольная работа [60,5 K], добавлен 06.02.2011Классы задач P и NP, их сводимость. Примеры NP-полных и NP-трудных задач. Сущность метода поиска с возвратом. Алгоритмы решения классических задач комбинаторного поиска. Решение задачи о восьми ферзях. Поиск оптимального решения методом ветвей и границ.
презентация [441,5 K], добавлен 19.10.2014Транспортная задача как одна из самых распространенных специальных задач линейного программирования: понятие, основное назначение. Формальное описание метода минимального элемента. Характеристика этапов разработки алгоритма решения поставленной задачи.
курсовая работа [713,3 K], добавлен 19.10.2012Анализ метода линейного программирования для решения оптимизационных управленческих задач. Графический метод решения задачи линейного программирования. Проверка оптимального решения в среде MS Excel с использованием программной надстройки "Поиск решения".
курсовая работа [2,2 M], добавлен 29.05.2015Основные принципы функционирования ПК. Определение конфигурации компьютера с требуемыми характеристиками. Характеристики основных компонентов современного ПК. Описание алгоритма решения задачи с использованием MS Excel. Блок-схема алгоритма решения задач.
курсовая работа [3,5 M], добавлен 20.12.2010Сущность задач оптимизации и методы их решения с ориентацией на современные средства компьютерной техники. Область допустимых решений. Структура оптимизационной модели. Проверка правильности нахождения точек координат методом половинного деления.
курсовая работа [2,4 M], добавлен 25.04.2015Особенности метода неопределенных множителей Лагранжа, градиентного метода и метода перебора и динамического программирования. Конструирование алгоритма решения задачи. Структурная схема алгоритма сценария диалога и описание его программной реализации.
курсовая работа [1010,4 K], добавлен 10.08.2014Математическое описание численных методов решения уравнения, построение графика функции. Cтруктурная схема алгоритма с использованием метода дихотомии. Использование численных методов решения дифференциальных уравнений, составление листинга программы.
курсовая работа [984,2 K], добавлен 19.12.2009Методы решения задач параметрической оптимизации. Решение однокритериальных задач с параметром в целевой функции и в ограничениях. Решение многокритериальной задачи методом свертки критериев, методом главного критерия, методом последовательных уступок.
курсовая работа [1,5 M], добавлен 14.07.2012Описание вычислительной техники, характеристика операционных систем и языков программирования. Сравнительный анализ аналогов и прототипов. Разработка алгоритма решения задачи. Выбор средств и методов решения задач. Проектирование программного обеспечения.
отчет по практике [1,0 M], добавлен 23.03.2015Разработка алгоритма как конструктивный компонент программирования, не зависящий от особенностей синтаксиса языков программирования и специфики функционирования конкретных ЭВМ. Алгоритм - операциональный подход к программированию. Экономичность алгоритма.
учебное пособие [346,8 K], добавлен 09.02.2009Разработка технологии обработки информации, а также структуры и формы представления данных. Подбор алгоритма и программы решения задачи. Определение конфигурации технических средств. Специфика процесса тестирования и оценки надежности программы.
курсовая работа [959,1 K], добавлен 12.12.2011Численные решения задач методом Коши, Эйлера, Эйлера (модифицированный метод), Рунге Кутта. Алгоритм, форма подпрограммы и листинг программы. Решение задачи в MathCad. Подпрограмма общего решения, поиск максимальных значений. Геометрический смысл задачи.
курсовая работа [691,4 K], добавлен 17.05.2011