Разработка и исследование вероятностных эволюционных алгоритмов для моделирования и оптимизации сложных систем
Диссертация - Менеджмент
Другие диссертации по предмету Менеджмент
»горитма) компоненты вектора вероятностей .
.Пункты 2-5 повторяются раз.
.За решение задачи принимается вектор , определяемый из условия ( при повторении п. 4).
Начальное распределение вероятностей единичных значений компонент вектора - определяется на основе априорной информации о решаемой задаче. Если такая информация отсутствует, используется равновероятностное распределение, т.е. .
Пункт 5 соответствует получению апостериорного распределения вероятностей по результатам испытаний п. 2 и п. 3.
В [1] предложены следующие алгоритмы пересчета вектора вероятностей единичных компонент: СПА, МСПА1, МСПА2:
СПА :
.
МСПА1 :
,
.
МСПА2 :
,
.
Первоначально метод был реализован для задачи условной псевдобулевой оптимизации, поэтому для безусловной оптимизации метод модифицирован так, что решение ищется во множестве . Множество . Общая схема (обозначим МИВЕР2) имеет вид:
.Задаются начальные значения компонент вектора вероятностей , .
.Случайным образом (в соответствии с распределением вероятностей ), независимо выбираются векторов и соответствующие значения по правилу .
.Вычисляются соответствующие значения функционала .
.Из условий и находятся векторы и . Значения и запоминаются. По правилу: , для ;
;
,
где и - число единичных компонент векторов и соответственно, определяются векторы и , которые тоже запоминаются.
5.По результатам п. 4 изменяются (в соответствии с правилом конкретного алгоритма (СПА, МСПА1, МСПА2)) компоненты вектора вероятностей .
.Пункты 2-5 повторяются раз.
.За решение задачи принимается вектор , определяемый из условия ( при повторении п. 4).
СПА :
, где .
МСПА1 и МСПА2меняются аналогично.
1.3.2Исследование работоспособности на тестовых задачах
Методы МИВЕР1 и МИВЕР2 был программно реализованы. Исследование алгоритмов СПА, МСПА1 и МСПА2 проводилось на тестовых функциях: функция Растригина (первоначально бинаризуется) и многоэкстремальная псевдобулевая функция.
Задача 1. Дискретная функция Растригина:
, .
.
Задача 2. Задача псевдобулевой оптимизации:
, . .
Для исследования эффективности использовались показатели надежности и среднее число итераций. Показатели вычислялись по статистике набранной из 100 запусков алгоритмов. Для всех алгоритмов . Работа МИВЕР1 и МИВЕР2 сравнена с ГА. Результаты исследования эффективности представлены ниже. Результаты работы алгоритмов с наилучшими настройками представлены в таблице 2.
Задача 1.
ГА.
Надежность алгоритма (%):Среднее число итераций до определения минимума:
МИВЕР1.
Надежность алгоритма (%):Среднее число итераций до определения минимума:
МИВЕР2.
Алгоритм не находит глобальный оптимум задачи.
Задача 2.
ГА.
Надежность алгоритма (%):Среднее число итераций до определения минимума:
МИВЕР1.
Надежность алгоритма (%):Среднее число итераций до определения минимума:
МИВЕР2.
Надежность алгоритма (%):Среднее число итераций до определения минимума:
Таблица 2. Сравнительный анализ эффективности МИВЕР и ГА.
ГАМИВЕР1МИВЕР2Надеж-ностьСр. число итер.Надеж-ностьСр. число итер.Надеж-ностьСр. число итер.Задача 192326142--Задача 2982868347460
Из таблицы 2 видно, что ГА превосходит МИВЕР и по трудоемкости, и по надежности (МИВЕР2 не решил задачу 2).
1.4Основные идеи вероятностного генетического алгоритма и исследование его работоспособности на тестовых функциях
Нетрудно понять, что ГА накапливают и обрабатывают некоторую статистическую информацию о пространстве поиска, однако эта статистика в явном виде отсутствует. Можно предложить следующий способ представления накопленной генетическими алгоритмами статистики - на текущей итерации в соответствие популяции решений ставить вектор вероятностей
,(3)
где - вероятность присвоения i-ой компоненте вектора решения значения 1, k - номер итерации.
Для изучения работы алгоритмов изменения компонент вектора вероятностей будем представлять в виде графиков. Ниже представлены примеры типичного поведения компонент для алгоритмов МИВЕР (рис. 5) и ГА (рис. 6).
Рис. 5. Пример изменения вероятностей в МИВЕР.
Рис. 6. Пример изменения вероятностей в ГА.
Из графиков видно, что в МИВЕР вероятности меняются линейно (в СПА, МСПА1 и МСПА2 поощряющие добавки прибавляются либо вычитаются), в ГА - нелинейно, т.к. новая популяция может значительно отличаться от предыдущей. Однако, в предельном случае (мутация отсутствует, пропорциональная селекция) изменение вероятностей близко линейному.
Когда какая-либо компонента вектора вероятностей сходится к 0 или 1, поиск по этой компоненте прекращается, что может привести к захвату локальным минимумом. В ГА поиск не прекращается, т.к. оператор мутации выкидывает решения в новые регионы поискового пространства. Мутация вызывает скачкообразные изменения (скачки тем больше, чем выше мутация) компонент вектора вероятности даже после того, как компонента сходится к 0 или 1, что придает ГА глобальные свойства. Очевидно, вероятности в МИВЕРе тоже не должны обращаться в 0 или 1, иначе алгоритм станет локальным. Нелинейное изменение вероятностей в ГА позволяет алгори