ТСМ-№4 (Лекции ТСМ)
Описание файла
Файл "ТСМ-№4" внутри архива находится в папке "Лекции ТСМ". Документ из архива "Лекции ТСМ", который расположен в категории "". Всё это находится в предмете "теория систем моделирования (тсм)" из 9 семестр (1 семестр магистратуры), которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "лекции и семинары", в предмете "теория систем моделирования (тсм)" в общих файлах.
Онлайн просмотр документа "ТСМ-№4"
Текст из документа "ТСМ-№4"
Лекция №4
Проходы
Оператор мутации - это генетический оператор преобразования хромосомы на основе вероятностного изменения отдельного состояния отдельных генов. Для этого используется периметр - вероятность мутации.
Виды мутации
1.Однобитовая мутация
Применяется при кодировании с номером бинарного кода Грея. В хромосоме . Случайным образом выбирается число - точка мутации.
Значение бита меняется на противоположное.
2. Многобитовая мутация
Аналогична однобитовой мутации. В хромосоме выбирается несколько точек мутаций
Значения битов меняются на противоположные.
3.Одноточечная мутация
Применяется в комбинаторных и задачах на графах при кодировании вершин графа.
В хромосоме случайным образом выбирается число - точка мутации.
В хромосоме случайным образом выбираются точек мутации.
Далее происходит последовательный обмен генов, расположенных правее точек мутации друг с другом в порядке их расположения. Ген, расположенный правее последней точки мутации, переходит на место 1-го.
Пример:
P : A │ B C D │ E F │ G H
P1: A G C D B F E H
Оператор инверсии - это генетический оператор преобразования хромосомы на основе вероятностного инвертирования ее части. Для этого вводится параметр - вероятность инверсии.
Виды инверсии
1.Одноточечная инверсия
В хромосоме случайным образом выбирается точка инверсии. Новая хромосома формируется из путем инверсии сегмента, расположенного справа от .
2.Многоточечная инверсия
В хромосоме случайным образом выбирается точек инверсии , которые делят хромосому на сегментов. Новая хромосома формируется из путем инверсии сегментов с четными номерами.
Пример:
2-х точечный оператор инверсии
P: A B C │D E F │ G H
P1: A B C D E F G H
Замечания:
При реализации ГА части, используются следующие последовательности генетических операторов, что обеспечивает возможность тонкой настройки ГА, в зависимости от типа решаемой оптимизационной задачи используется БС.
{P}
кроссовер
мутация
НЕТ
Д
инверсия
АНЕТ
ДА
{Р1}
Оператор селекции (репродукции)- отбор хромосом из популяции для формирования родительского массива, которая затем, подвергаясь воздействию генетических операторов, образует поколение потомков. При этом хромосомы, имеющие более высокую степень приспособленности, получают большую возможность для воспроизводства (репродукции) потомков.
Оператор селекции включает следующие этапы:
-
Формирование функции пригодности.
-
Вычисление функции пригодности.
-
Формирование родительского массива.
Алгоритмы формирование функции пригодности
1. Задача скалярной оптимизации
Шаг 1. В популяции размером полагаем
Шаг 2. Для всех , проверяем выполнение условия:
Обозначим - количество точек , в котором выполняется условие (3).
Шаг 4. Полагаем . Если i ≤ N, то переходим к шагу 2, иначе переходим к шагу 5.
Шаг 5. STOP
Таким образом, каждой точке соответствует значение функции пригодности , которая в дальнейшем используется в операторе селекции при формулировке родительского массива.
Здесь q – параметр, влияющий на скорость сходимости ГА к оптимальному решению
2. Задача многокритериальной оптимизации.
Шаг 1. В популяции размером полагаем .
Шаг 2. Для всех , проверяем выполнение условия:
или, что то же самое:
При этом хотя бы одно из неравенств (8) – строгое.
Обозначим - количество точек , в которых выполняется условие (7).
Шаг 3. Сформируем функцию пригодности вида:
Шаг 4. Полагаем . Если , то переходим к шагу 2, иначе переходим к шагу 5.
Шаг 5. STOP.
Свойства функции пригодности вида (4)
-
Если , то . Для задачи (1) это означает, что в точке функция достигает своего минимального значения относительно текущей популяции . Другими словами точка обладает наивысшей степенью приспособленности в популяции .
-
Если , то . Это означает, что в точке функция достигает своего максимального значения относительно текущей популяции . То есть точка обладает минимальной степенью приспособленности в популяции .
Здесь q – параметр, влияющий на скорость сходимости ГА к оптимальному решению.
Свойства функции пригодности вида (9)
-
Если , то . Для задачи (1) это означает, что векторная функция достигает оптимальность по Парето значения относительно текущей популяции , и обладает наивысшей степенью приспособленности.
-
Если , то . Точка не принадлежит Парето-области. Чем больше , тем дальше от Парето-области.
Рассмотрим пример многокритериальной задачи коммивояжера
Начальная популяция:
P 1: a e d c b
P2: c d b e a
P3: e b c d a
Будем использовать алгоритм многокритериального формирования жадного кроссовера.
1. Формирование P1'
Выбираем точку кроссовера на P1.
Переходим к вершине a.
Переходим к вершине c.
P2: (c-d) – цикл.
P3: (c-d) – цикл.
-
Выбираем (b-e), т.к. ген у ранее не встречался. fч1=3; fч2=5.
P1’: d a c b e
f1 = 2 + 1 + 6 + 3 + 3 = 15
f2 = 2 + 2 + 7 + 5 + 6 = 22
2. Формирование P2'
Переходим к точке кроссовера в P2.
P3: (e-b) – цикл.
P2: (d-b) – цикл.
-
Выбираем (a-c), т.к. ген с ранее не встречался. fч1=1; fч2=2.
P2’: b e d a c
f1 = 3 + 3 + 2 + 1 + 6 = 15
f2 = 5 + 6 + 2 + 2 + 7 = 22
3. Формирование P3'
Переходим к точке кроссовера в P3.
P3: (b-c) – цикл.
P3: (e-b) – цикл.
-
Выбираем (d-a), т.к. ген a ранее не встречался. f21=2; f22=2.
P3’: c b e d a
f1 = 6 + 3 + 3 + 2 + 1 = 15
f2 = 7 + 5 + 6 + 2 + 2 = 22
Таким образом, после кроссовера получим:
P 1’: d a c b <=> e
P2’: b e d a <=> c
P3’: c b e d <=> a
Осуществляем оператор мутации:
Пусть k=a – случайное число.
В P1’ меняем местами b <=> e
В P2’ меняем местами a <=> c
В P3’ меняем местами d <=> a
Получим:
P1”: d a c e b
P2”: b e d c a
P3”: c b e a d
Предположим, что на данном этапе инверсия не осуществляется.
Таким образом, получим популяцию 2-го поколения:
P 1: d a c e b
P2: b e d c a
P3: c b e a d
II. Формирование популяции 3-го поколения
1. Формирование P1'
Выбираем точку кроссовера на P1.
P2: (c-a) – цикл.
P3: (e-a) – цикл.
-
Выбираем (b-d), т.к. ген d ранее не встречался. f21=4; f22=3.
P1’: a c e b d
f1 = 1 + 2 + 3 + 4 + 2 = 12
f2 = 2 + 1 + 5 + 3 + 2 = 13
2. Формирование P2'
Переходим к точке кроссовера в P2.
P2: (b-e) – цикл.
P3: (b-e) – цикл.
-
Выбираем (a-c), т.к. ген c ранее не встречался. fч1=1; fч2=2.
P2’: e b d a c
f1 = 3 + 4 + 2 + 1 + 2 = 12
f2 = 5 + 3 + 2 + 2 + 1 = 13
3. Формирование P3'
Переходим к точке кроссовера в P3.
Выбираем из и . Механизм выбора может быть:
-
случайным
-
по сумме (f21 + f22) -> min;
P2: (a-b) – цикл.
P3: (a-d) – цикл.
-
Выбираем (c-e), т.к. ген d ранее не встречался. fч1=2; fч2=1.
P3’: b d a c e
f1 = 4 + 2 + 1 + 2 + 3 = 12
f2 = 3 + 2 + 2 + 1 + 5 = 13
Получим:
P1’: a c e b d
P2’: e b d a c
P3’: b d a c e
P1’, P2’, P3’ – реализуют один и тот же оптимальный маршрут. Популяция выродилась в одно оптимальное решение по Парето.