Обсуждение статьи "Популяционные алгоритмы оптимизации: Бинарный генетический алгоритм (Binary Genetic Algorithm, BGA). Часть I"
Прочел. Не хватает схемы, в которой показано общее представление алгоритма оптимизации.
Для всех без исключения алгоритмов оптимизации, не только для ГА, порядок операторов (методов) всегда одинаковый, в порядке как в Содержании:
1. Селекция.
2. Кроссовер.
3. Мутация.
В каждом конкретном алго может отсутствовать один или два оператора, но порядок всегда такой. Такой порядок наверняка может быть логически обоснован и связан с вероятностями, а цель любого алгоритма оптимизации - сложить комбинацию вероятностей в пользу решения задачи.
Есть ещё четвёртый метод - способ помещения новых особей в популяцию, но обычно его не выделяют в самостоятельный.
Может быть, да, имеет смысл нарисовать схему строения "алгоритма оптимизации", подумаю над этим.
Для всех без исключения алгоритмов оптимизации, не только для ГА, порядок операторов (методов) всегда одинаковый
for (uint i = epochCount; (bool)i--;) { AO.Moving() // Moving(i) for (uint set = ArraySize(AO.aName); (bool)set--;) AO.aName[set].f = FF(AO.aName[set].c); AO.Revision(); }
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Опубликована статья Популяционные алгоритмы оптимизации: Бинарный генетический алгоритм (Binary Genetic Algorithm, BGA). Часть I:
В этой статье мы проведем исследование различных методов, применяемых в бинарных генетических алгоритмах и других популяционных алгоритмах. Мы рассмотрим основные компоненты алгоритма, такие как селекция, кроссовер и мутация, а также их влияние на процесс оптимизации. Кроме того, мы изучим способы представления информации и их влияние на результаты оптимизации.
Параметры оптимизационных задач часто называются "признаками" и должны быть представлены определенным образом для использования в логике алгоритма оптимизации. В генетике эти признаки разделяют на фенотип и генотип. Фенотип представляет собой внешний вид оптимизируемого параметра, а генотип - способ его представления в алгоритме. В большинстве алгоритмов оптимизации фенотип совпадает с генотипом и представлен в виде вещественного числа. Ген - оптимизируемый параметр, в свою очередь хромосома - набор генов, т.е. набор оптимизируемых параметров.
Вещественное представление данных используется для представления дробных чисел. Вещественные числа могут иметь десятичную часть и дробную часть, разделенные десятичной точкой. Например, "3.14" и "0.5" являются вещественными числами.
Бинарное представление данных, с другой стороны, использует двоичную систему счисления, в которой числа представлены с помощью двух символов: "0" и "1" и каждая цифра называется битом (от англ. "binary digit"). Например, число "5" может быть представлено в бинарном виде как "101".
Основное отличие между вещественным и бинарным представлением данных заключается в способе кодирования чисел. Вещественные числа обычно кодируются с использованием стандартов, таких как IEEE 754, который определяет форматы для представления чисел с плавающей точкой. В языке MQL5 для вещественных чисел используется тип данных "double", который может описать в сумме 16 значащих цифр в числе. Это означает, что общее количество цифр не может быть больше шестнадцати, к примеру, "9 999 999 999 999 999.0" и "9 999 999.999 999 99" и "0.999 999 999 999 999 9" имеют шестнадцать цифр "9" в суммарном количестве до и после запятой. Почему это важно мы разберёмся позже.
Вещественные числа удобны для использования при написании программ и в повседневной жизни, а бинарное представление используются для работы в вычислительных системах и выполнения операций на низком уровне, таких как логические операции и побитовые операции.
Автор: Andrey Dik