Программирование - это просто
Advertisement
Главная arrow Математика и информатика arrow Генетический алгоритм (платный раздел) arrow Генетический алгоритм. Урок 11. Отглючиваем генетический алгоритм
30.06.2025 г.
Главное меню
Главная
Интернет магазин
Программные продукты
Биржевые роботы
Искусственный интеллект
Математика и информатика
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);

...

...

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

...

...

...

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