32.Генетические алгоритмы
Пусть мы ищем решение, максимизирующее функцию w (целевую функцию)
1.Строим начальную популяцию S={s1,…,sk}, si – какие-то решения. 2.Производим селекцию особей, наиболее пригодных к размножению 3.Скрещивание выбранных особей 4.Мутация
5.Замещение. Самые слабые особи из популяции заменяются на самых жизнеспособных молодых особей
1)Начальная популяция выбирается случайным образом или жадными методами.
2)Селекция.При селекции отбираются особи, которые будут производить потомство. Первый шаг — вычисление пригодности особей (fitness assignment). Каждая особь популяции получает вероятность репродукции, зависящую от значения целевой функции на этой особи (целевого значения) и целевых значений всех других особей популяции.
При пропорциональной селекции для особи si вероятность стать родителем задается формулой P(i) =
Турнирная селекция Выбирается случайное подмножество элементов популяции (участников турнира) и среди них выбираются элементы с лучшими значениями целевой функции
3)Обычное скрещивание, многоточечное скрещивание(позиция скрещивания 2,6,10), однородное вероятностное скрещивание (По решениям s1, s2 строится решение s3, присваивая каждому биту потомка с вероятностью 0,5 значение соответствующего бита одного из родителей )
4)Мутация Оператор мутации, применяемый к решению s3, с заданной вероятностью pmÎ(0,1) меняет значение каждого бита на противоположное. Применяем оператор мутации ко всем произведенным потомкам
5)Замещение 1.Произвести столько же потомков, сколько было особей в популяции и заместить всех потомками.
2.Произвести меньше потомков, чем особей в популяции, и случайным образом выбрать замещаемых
3.Произвести меньше потомков, чем особей в популяции, и заместить худших
4.Произвести больше потомков, чем особей в популяции, и заместить худших предков на лучших потомков
- 1.Трудоемкость алгоритмов
- 2.Алгоритмы сортировки
- 3.Сортировка слиянием
- 4.Бинарные поисковые деревья
- 5.2-3-4 Деревья
- 6.Хеширование
- 7. Поиск подстроки. Алгоритм Кнута-Морриса- Пратта.
- 8. Графы. Структуры данных для представления графов
- 9. Алгоритм нахождения Эйлерова цикла
- 10 .Поиск в ширину(волновой алгоритм)
- 11.Поиск в глубину
- 12.Жадные алгоритмы и матроиды
- 13.Задача об остовном дереве. Алгоритмы Прима и Краскала, их реализация
- 14. Алгоритм Дийкстры
- 15. Алгоритм Флойда
- 16. Паросочетания в двудольных графах
- 17. Потоки и разрезы в сетях. Алгоритм Форда-Фалкерсона
- 18. Задача о рюкзаке
- 21. Классы p и np. Полиномиальное сведение.
- 22. Np- полные задачи. Теорема Кука-Карпа-Левина. Np-полнота задачи о клике
- 23. Алгоритмы с гарантированной оценкой точности. Задача упаковки
- 24.Метод локального поиска и поиска с запретами. Задача о максимальном разрезе.
- 25.Метод ветвей и границ. Задача коммивояжера.
- 26. Задача коммивояжера с неравенством треугольника. Алгоритм Кристофидеса
- 27.Задача о независимом множестве, точные и эвристические алгоритмы ее решения
- 28.Задача о раскраске графа, точные и эвристические алгоритмы ее решения.
- 31.Задача о раскраске хордальных графов
- 32.Генетические алгоритмы
- 33. Page Rank
- 34 Криптосистема с открытым ключом. Криптосистема rsa
- 35.Задача разделения секрета.
- 36. Алгоритмы сжатия информации