Программирование - это просто
Advertisement
Главная arrow Искусственный интеллект arrow Генетический алгоритм (платный раздел) arrow Генетический алгоритм. Урок 11. Отглючиваем генетический алгоритм
14.05.2026 г.
Главное меню
Главная
Интернет магазин
Программные продукты
Биржевые роботы
Искусственный интеллект
Математика и информатика
1С:Предприятие
Уроки C#
Уроки Delphi
Уроки программирования
Web-программирование
Дизайн и графика
Компьютер для блондинок
Исходники
Статьи
Платный раздел
Рассказы про компьютеры
Хитрости и секреты
Системный подход
Размышления
Наука для чайников
Друзья сайта
Excel-это не сложно
Все о финансах
.
Генетический алгоритм. Урок 11. Отглючиваем генетический алгоритм Печать E-mail
Автор megabax   
02.03.2025 г.
unit AIObj

Генетический алгоритм. Урок 11. Отглючиваем генетический алгоритм

Что бы смотреть урок полностью, подпишитесь на платный раздел.

В платном разделе статья находиться здесь.


И так, как я уже писал на прошлом уроке, обнаружился странный глюк с исчезновением лучшей особи. Согласно нашему алгоритму, это исчезновение невозможно, так как лучшая особь не мутирует.  Так что это глюк и его нужно ловить. Как мы это будем делать? Давайте сначала убедимся в том, что она действительно не матирует. Как мы это сделаем? Просто на каждой итерации будем проверять целостность объекта, отвечающей за лучшую особь. Каким образом?  Сравнить с эталоном.  Но для этого нам потребуется специальная функция, производящая сравнения. Для начала создадим этот метод у передаточной функции, для чего сначала добавим его в интерфейс:

    /// <summary>

    /// Интерфейс передаточной функции

    /// </summary>

    public interface ITransFunc

    {

 

        /// <summary>

        /// Проверить эквивалентность передаточной функции

        /// </summary>

        /// <param name="a_func">Другой объект передаточной функции</param>

        /// <returns>true - эквивалентны, false - разные</returns>

        bool is_equal(ITransFunc a_func);

...

...

Теперь будем делать его у всех передаточных функций, ....

...

...

...

 
« След.   Пред. »
 
© 2026 Программирование - это просто
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Design by Mamboteam.com | Powered by Mambobanner.de
Я принимаю Яндекс.Деньги