ВУЗ:
Составители:
Рубрика:
33
Рис. 44. Древовидное представление функции
2+x*4/7
Для того чтобы применить ГП к какой-либо проблеме, необходимо оп-
ределить:
a) множество терминальных элементов;
b) множество функциональных элементов;
c) меру приспособленности;
d) параметры, контролирующие эволюцию;
e) критерий останова эволюции.
Генетические программы не пишутся программистом, а создаются в резуль-
тате следующего итерационного пошагового процесса.
1. Генерируется начальная популяция программ,
представляющих собой
случайные композиции функций (арифметических, логических и др.
операций) и терминалов (переменных и констант), взятых из множеств
функциональных и терминальных элементов, относящихся к решаемой
проблеме. Если мы собираемся вывести программу, которая управляет
стрельбой из по движущейся цели, то в набор терминалов войдут сле-
дующие переменные - расстояние до цели, ее размер
и скорость, сила и
направление ветра, тип орудия и т.д. Набор функций в этом случае будет
включать различные математические операции, как простые (умноже-
ние, деление, вычитание, сложение), так и более сложные.
2. Каждая программа выполняется и ей присваивается значение приспособ-
ленности, соответствующее тому, насколько хорошо она решает задачу.
3.
Создается новая популяция компьютерных программ за счет:
1) копирования в нее наилучших программ старой популяции;
2) создания новых программ с помощью мутаций (случайного изменения
функций и терминаторов или даже целых поддеревьев);
3) создания новых программ с помощью скрещивания существующих.
Операция скрещивания реализуется за счет обмена поддеревьев двух
хромосом, выбранных случайно (в
соответствии с их приспособленно-
стью).
33 Рис. 44. Древовидное представление функции 2+x*4/7 Для того чтобы применить ГП к какой-либо проблеме, необходимо оп- ределить: a) множество терминальных элементов; b) множество функциональных элементов; c) меру приспособленности; d) параметры, контролирующие эволюцию; e) критерий останова эволюции. Генетические программы не пишутся программистом, а создаются в резуль- тате следующего итерационного пошагового процесса. 1. Генерируется начальная популяция программ, представляющих собой случайные композиции функций (арифметических, логических и др. операций) и терминалов (переменных и констант), взятых из множеств функциональных и терминальных элементов, относящихся к решаемой проблеме. Если мы собираемся вывести программу, которая управляет стрельбой из по движущейся цели, то в набор терминалов войдут сле- дующие переменные - расстояние до цели, ее размер и скорость, сила и направление ветра, тип орудия и т.д. Набор функций в этом случае будет включать различные математические операции, как простые (умноже- ние, деление, вычитание, сложение), так и более сложные. 2. Каждая программа выполняется и ей присваивается значение приспособ- ленности, соответствующее тому, насколько хорошо она решает задачу. 3. Создается новая популяция компьютерных программ за счет: 1) копирования в нее наилучших программ старой популяции; 2) создания новых программ с помощью мутаций (случайного изменения функций и терминаторов или даже целых поддеревьев); 3) создания новых программ с помощью скрещивания существующих. Операция скрещивания реализуется за счет обмена поддеревьев двух хромосом, выбранных случайно (в соответствии с их приспособленно- стью).
Страницы
- « первая
- ‹ предыдущая
- …
- 31
- 32
- 33
- 34
- 35
- …
- следующая ›
- последняя »