Скачать презентацию Генетические алгоритмы План лекции 1 Простой генетический Скачать презентацию Генетические алгоритмы План лекции 1 Простой генетический

8d0491f8cc1a140540ad370c998cbb6d.ppt

  • Количество слайдов: 62

Генетические алгоритмы Генетические алгоритмы

План лекции 1. Простой генетический алгоритм Холланда. 2. Теория схем и гипотеза строительных блоков. План лекции 1. Простой генетический алгоритм Холланда. 2. Теория схем и гипотеза строительных блоков. 3. Генетический алгоритм с самообучением.

Charles Darwin. The Origin of Species. John Murray, London, 1859. Charles Darwin. The Origin of Species. John Murray, London, 1859.

Генетический алгоритм Холланда (SGA) • Holland J. N. Adaptation in Natural and Artificial Systems. Генетический алгоритм Холланда (SGA) • Holland J. N. Adaptation in Natural and Artificial Systems. Ann Arbor, Michigan: Univ. of Michigan Press, 1975.

Применение ГА • построение оптимальных игровых стратегий, • машинное обучение (нейронные сети, классификаторы), • Применение ГА • построение оптимальных игровых стратегий, • машинное обучение (нейронные сети, классификаторы), • задачи математического программирования, • построение расписаний, • задачи на графах (раска, задача коммивояжера, нахождение паросочетаний).

Генетический алгоритм Холланда (SGA) • Основан на использовании механизмов естественной эволюции: 1. Изменчивость → Генетический алгоритм Холланда (SGA) • Основан на использовании механизмов естественной эволюции: 1. Изменчивость → операция мутации 2. Наследственность → операция скрещивания 3. Естесственный отбор → операция селекции

Основные понятия • Популяция - это множество битовых строк. • Каждая строка - одно Основные понятия • Популяция - это множество битовых строк. • Каждая строка - одно из возможных решений задачи. • По строке может быть вычислена функция выживаемости, которая характеризует качество решения. • Основные операции алгоритма: селекция, скрещивание и мутация выполняются над элементами популяции.

Схема ГА 1. Сгенерировать случайным образом популяцию размера P. 2. Вычислить функцию выживаемости для Схема ГА 1. Сгенерировать случайным образом популяцию размера P. 2. Вычислить функцию выживаемости для каждой строки популяции. 3. Выполнить операцию селекции. 4. Выполнить операцию скрещивания: – 4. 1. Выбрать пары для скрещивания. – 4. 2. Для каждой выбранной пары выполнить скрещивание, получить двух потомков и произвести в популяции замену родителей на их потомков. 5. Выполнить операцию мутации. 6. Если критерий останова не достигнут, перейти к п. 2, иначе завершить работу.

Требования к кодированию решений 1. Однозначность: каждая закодированная строка должна соответствовать единственному решению исходной Требования к кодированию решений 1. Однозначность: каждая закодированная строка должна соответствовать единственному решению исходной задачи. 2. Возможность кодирования любого допустимого решения. 3. Получение в результате генетических операций корректных вариантов решений. 4. Возможность перехода от любого корректного решения к любому другому корректному решению.

Требования к кодированию решений • Для задач непрерывного и целочисленного мат. программирования, оптимизируемые параметры Требования к кодированию решений • Для задач непрерывного и целочисленного мат. программирования, оптимизируемые параметры задаются: – двоичным кодом числа, – кодами Грея.

Создание начальной популяции • Случайным образом генерируется начальная популяция в пределах допустимых значений (в Создание начальной популяции • Случайным образом генерируется начальная популяция в пределах допустимых значений (в области поиска):

Вычисление функции выживаемости • Выбирается согласно предметной области • Оценивает качество решения • Применяется Вычисление функции выживаемости • Выбирается согласно предметной области • Оценивает качество решения • Применяется ко всем элементам популяции:

Операция селекции • Схема пропорциональной селекции: • Схема рулетки: … Операция селекции • Схема пропорциональной селекции: • Схема рулетки: …

Операция селекции • Операция селекции •

Операция скрещивания • Операция скрещивания •

Выбор пар для скрещивания • Случайный выбор (требует популяций большого размера). • Селективный выбор Выбор пар для скрещивания • Случайный выбор (требует популяций большого размера). • Селективный выбор – участвуют строки значение функции выживаемости которых не меньше среднего значения: – имбридиг – первая строка выбирается случайно, второй является максимально близкая к ней по расстоянию. – аудбридинг – формируются пары из максимально далеких строк. – комбинация этих подходов.

Операция мутации • Операция мутации •

Критерий останова • Процесс продолжается итерационно • Варианты критерия останова: – Выполнение заданного числа Критерий останова • Процесс продолжается итерационно • Варианты критерия останова: – Выполнение заданного числа итераций без улучшения – Достижение заданного значения функции выживаемости

1. Простой генетический алгоритм Холланда. 2. Теория схем и гипотеза строительных блоков. 3. Генетический 1. Простой генетический алгоритм Холланда. 2. Теория схем и гипотеза строительных блоков. 3. Генетический алгоритм с самообучением. 4. Задача построения расписания. 5. Задача поиска подмножества с требуемой суммой.

Cхемы • Cхемы •

Cхемы • примеры схем Cхемы • примеры схем

Cхемы • Порядок схемы (K)- количество фиксированных позиций в схеме: Cхемы • Порядок схемы (K)- количество фиксированных позиций в схеме:

Cхемы • Определяющая длина схемы (L)– расстояние между самыми дальними фиксированными позициями: Cхемы • Определяющая длина схемы (L)– расстояние между самыми дальними фиксированными позициями:

Cхемы • Cхемы •

Cхемы • Для любой схемы, представляющей хорошее решение, нужно, чтобы количество ее примеров увеличивалось Cхемы • Для любой схемы, представляющей хорошее решение, нужно, чтобы количество ее примеров увеличивалось с увеличением количества итераций • На преобразование схем влияют операции ГА: мутация, скрещивание и селекция

Теорема схем • Теорема схем •

Теорема схем • Теорема схем •

Теорема схем • Теорема схем •

Теорема схем • Теорема схем •

Теорема схем • Теорема схем •

 • Схема всегда будет разрушена операцией одноточечного скречивания 1********0 • Двухточечное скрещивание решает • Схема всегда будет разрушена операцией одноточечного скречивания 1********0 • Двухточечное скрещивание решает проблему 1****************0

Теорема схем • Проблема выбора параметров ГА является для многих приложений сложной задачей • Теорема схем • Проблема выбора параметров ГА является для многих приложений сложной задачей • Теоретические результаты для решения данной проблемы на данный момент отсутствуют • На практике данная проблема решается экспериментальным путем

Гипотеза строительных блоков • Строительные блоки - схемы с низким порядком, малыми определяющими длинами Гипотеза строительных блоков • Строительные блоки - схемы с низким порядком, малыми определяющими длинами и большими значениями средних целевых функций • Гипотеза строительных блоков: комбинирование хороших строительных блоков дает хорошую строку.

Применение марковских цепей для моделирования поведения ГА • Марковская цепь – вероятность того, что Применение марковских цепей для моделирования поведения ГА • Марковская цепь – вероятность того, что процесс в момент времени t будет в состоянии j, зависит только от состояния i в момент (t-1). • Состояние ГА – текущая популяция. • Множество всех состояний – множество всевозможных популяций. • Построить модель – определить вероятность перехода между популяциями (построить матрицу переходов). При n=8 и N=8 матрица переходов имеет более 10 ^29 элементов.

1. Простой генетический алгоритм Холланда. 2. Теория схем и гипотеза строительных блоков. 3. Генетический 1. Простой генетический алгоритм Холланда. 2. Теория схем и гипотеза строительных блоков. 3. Генетический алгоритм с самообучением. 4. Задача построения расписания. 5. Задача поиска подмножества с требуемой суммой.

ГА с самообучением • Идея: – ввести индивидуальные параметры вероятности операций мутации и скрещивания ГА с самообучением • Идея: – ввести индивидуальные параметры вероятности операций мутации и скрещивания для каждого элемента строки-решения – корректировать эти параметры на каждой итерации алгоритма в зависимости от того, насколько удачным или неудачным оказалось применение конкретной операции к элементу решения

ГА с самообучением • Костенко В. А. , Фролов А. В. Генетический алгоритм с ГА с самообучением • Костенко В. А. , Фролов А. В. Генетический алгоритм с самообучением // Известия РАН. Теория и системы управления, 2015, № 4, С. 24 -38. DOI: 10. 7868/S 0002338815040101. • V. A. Kostenko, A. V. Frolov. Self-Learning Genetic Algorithm // Journal of Computer and Systems Sciences International, 2015, Vol. 54, No. 4, pp. 525 – 539. DOI: 10. 1134/S 1064230715040103

Матрицы вероятности • Матрицы вероятности •

Схема ГА c самообучением • Схема ГА c самообучением •

Операция скрещивания • Операция скрещивания •

Операция мутации • Операция мутации •

Способы коррекции элементов МП • Способы коррекции элементов МП •

Способы коррекции элементов МП • Способы коррекции элементов МП •

Способы коррекции элементов МП • Способы коррекции элементов МП •

1. Простой генетический алгоритм Холланда. 2. Теория схем и гипотеза строительных блоков. 3. Генетический 1. Простой генетический алгоритм Холланда. 2. Теория схем и гипотеза строительных блоков. 3. Генетический алгоритм с самообучением. 4. Задача построения расписания. 5. Задача поиска подмножества с требуемой суммой.

Задача построения расписания Задача построения расписания

Модель прикладной программы • Ацикличный ориентированный граф • - дуги Модель прикладной программы • Ацикличный ориентированный граф • - дуги

Модель прикладной программы • Задается: 1. Множеством процессов: 2. Отношением : 3. Вычислительными сложностями Модель прикладной программы • Задается: 1. Множеством процессов: 2. Отношением : 3. Вычислительными сложностями процессов:

Модель расписания • • Модель расписания • •

Математическая постановка • Математическая постановка •

Кодирование решений - привязка - приоритеты Кодирование решений - привязка - приоритеты

Матрицы вероятности • Матрицы вероятности •

Функция выживаемости • Ограничена сверху: Функция выживаемости • Ограничена сверху:

Операции генетического алгоритма • Cелекция: смешанная стратегия • Скрещивание: одноточечное • Мутация: стандартная Операции генетического алгоритма • Cелекция: смешанная стратегия • Скрещивание: одноточечное • Мутация: стандартная

Критерий останова o Ограничение на число итераций алгоритма, т. е. алгоритм прекращает свою работу, Критерий останова o Ограничение на число итераций алгоритма, т. е. алгоритм прекращает свою работу, если не смог за I 0 шагов улучшить значение функции выживаемости в популяции.

1. Простой генетический алгоритм Холланда. 2. Теория схем и гипотеза строительных блоков. 3. Генетический 1. Простой генетический алгоритм Холланда. 2. Теория схем и гипотеза строительных блоков. 3. Генетический алгоритм с самообучением. 4. Задача построения расписания. 5. Задача поиска подмножества с требуемой суммой.

Задача поиска подмножества с требуемой суммой • Задача поиска подмножества с требуемой суммой •

Кодирование решений • Кодирование решений •

Матрицы вероятности • Матрицы вероятности •

Функция выживаемости • Функция выживаемости •

Операции генетического алгоритма • Cелекция: смешанная стратегия • Скрещивание: равномерное с замещением • Мутация: Операции генетического алгоритма • Cелекция: смешанная стратегия • Скрещивание: равномерное с замещением • Мутация: стандартная

Критерий останова • Итерационный процесс до достижения критерия останова • Совокупность условий: – Выполнение Критерий останова • Итерационный процесс до достижения критерия останова • Совокупность условий: – Выполнение заданного числа итераций без улучшения (без уменьшения наименьшего значения функции выживаемости) – Достижение функцией выживаемости значения 0