Еволюційні алгоритми: що це таке і для чого вони потрібні

Кілька цільових функцій

Радники також можуть бути розширені для використання даних систем. Це дещо ускладнює процес, тому що, замість того щоб ідентифікувати одну оптимальну точку, виходить набір при їх використанні. Безліч рішень називається кордоном Парето і містить елементи, які однаково придатні в тому сенсі, що жодна з них не домінує над будь-яким іншим.

Генетичні оператори

Цей крок включає в себе два підетапи: кросовер і мутація. Після вибору кращих членів (зазвичай 2 верхніх, але це число може змінюватись), вони тепер використовуються для створення наступного покоління в алгоритмі. Застосовуючи характеристики вибраних батьків, створюються нові діти, які являють собою суміш якостей. Це часто може бути ускладнене у залежності від типу даних, але зазвичай в комбінаторних задачах цілком реально змішувати і виводити дійсні комбінації.

Тепер необхідно ввести новий генетичний матеріал в покоління. Якщо не зробити цього важливого кроку, то вчений дуже швидко застрягне у локальних екстремумах і не отримає оптимальних результатів. Цей крок є мутацією, і робиться вона досить просто, змінюючи невелику частину дітей таким чином, щоб вони переважно не відображали підмножин генів батьків. Мутація зазвичай відбувається ймовірносно, оскільки можливість того, що дитина отримає, а також її серйозність, визначаються розподілом.