Топ питань
Часова шкала
Чат
Перспективи
Еволюційний алгоритм
З Вікіпедії, вільної енциклопедії
Remove ads
Еволюційні алгоритми — напрям в штучному інтелекті (розділ еволюційного моделювання), що використовує і моделює біологічну еволюцію. Розрізняють різні алгоритми: генетичні алгоритми, еволюційне програмування, еволюційні стратегії, системи класифікаторів, генетичне програмування тощо. Всі вони моделюють базові положення в теорії біологічної еволюції — процеси відбору, мутації і відтворення. Поведінка агентів визначається довкіллям. Множину агентів прийнято називати популяцією. Така популяція еволюціонує відповідно до правил відбору відповідно до цільової функції, що задається довкіллям. Таким чином, кожному агентові (індивідуумові) популяції призначається значення його придатності в довкіллі. Розмножуються лише найпридатніші види. Рекомбінація і мутація дозволяють агентам змінюватись і пристосовуватися до середовища. Такі алгоритми належать до адаптивних пошукових механізмів.
Remove ads
Класифікація алгоритмів
Узагальнити
Перспектива
Моделювання еволюції можна розділити на дві категорії:[джерело?]
- Системи, які використовують лише еволюційні принципи. Вони успішно використовувалися для завдань виду функціональної оптимізації і можуть легко бути описані на математичній мові. До них належать еволюційні алгоритми, такі як еволюційне програмування, генетичні алгоритми, еволюційні стратегії.
- Системи, які є біологічно реалістичніші, але які не виявилися корисними в прикладному сенсі. Вони більше схожі на біологічні системи і менш направлені на вирішення технічних завдань. Вони володіють складною і цікавою поведінкою, і, мабуть, незабаром отримають практичне вживання. До цих систем відносять так зване штучне життя.
Еволюційні алгоритми, в сучасному вигляді, з'явились наприкінці 1960-х на початку 1970-х (існують посилання на раніші дослідження). Еволюційні алгоритми можна поділити на три групи:[1]
- Еволюційне програмування: фокусується більше на адаптації індивідів, аніж на еволюції генетичної інформації. Зазвичай, еволюційне програмування застосовує безстатеве розмноження та мутації, тобто, внесення невеликих змін в поточний розв'язок та методи селекції основані на прямій конкуренції.
- Еволюційні стратегії (ЕС): Важливою особливістю еволюційних стратегій є використання само-адаптивних механізмів для контролю процесу мутації. Ці механізми зосереджені не лише на еволюції шуканих розв'язків, а й на еволюції параметрів мутації.
- Генетичний алгоритм (ГА): Основною особливістю генетичних алгоритмів є використання оператора рекомбінації (схрещення) як основного механізму пошуку. Це ґрунтується на припущенні, що частини оптимального розв'язку можуть бути знайдені незалежно та рекомбіновані для отримання кращого розв'язку.
Remove ads
Застосування
Еволюційні алгоритми знайшли широке застосування. Однією з найпоширеніших галузей застосування є комбінаторна оптимізація. Так, еволюційні алгоритми з успіхом було застосовано для розв'язання класичних NP-повних проблем, таких як задача комівояжера, задача пакування рюкзака, розбиття чисел, максимальна незалежна множина та розфарбовування графів.[1]
До інших не класичних задач, для розв'язання яких застосовано еволюційні алгоритми, належать планування, складання розкладів, обчислення маршрутів, задачі розташування та транспортування. Також еволюційні алгоритми використовують для оптимізації структур та електронних схем, в медицині та в економіці.
В останні роки активно розвивається використання еволюційних алгоритмів для передбачення кристалічних структур з допомогою програмного забезпечення USPEX. Приклади передбачених структур і матеріалів можна знайти на сайті [Архівовано 14 лютого 2018 у Wayback Machine.]
Можливість використання еволюційних алгоритмів у галузі музики активно досліджується насамперед у Австрії, а саме при спробі моделювання та відтворення гри на музичних інструментах видатними особистостями різних епох.[2]
Remove ads
Примітки
Література
Посилання
Див. також
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads