КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Описание пакета Genetic Algorithm системы MATLAB
Так происходит расширение исходной популяции Запишем выражения потомков в унифицированной форме особей p (4) p (5) Оператор мутации при выполнении условия Ran (0,100) £ 3 определяет номер l = Ran (1, m) генов и , которые переставляются в особях p (4) и p (5) с образованием новых мутированных потомков p (4) p (5) p = (p (1), p (2),…, p (5)). Оператор редукции из расширенной популяции выбирает три особи с минимальными значениями критерия J и повторяются действия операторов отбора, скрещивания, мутации и редукции. ГА завершает работу, если достигнуто заданное число итераций или практически не меняется величина критерия J.
Графический интерфейс используемого пакета представляет собой интерактивную (диалоговую) программу, позволяющую решать оптимизационные задачи с использованием генетических алгоритмов, не прибегая к вызову каких либо других функций. Вызов программы осуществляется набором команды gatool в командной строке MATLAB. После этого запускается окно программы (рис. 1). Здесь Fitness function – в этом окне задается целевая функция оптимизационной задачи в виде @ fitnessfun, где fitnessfun представляет собой заранее подготовленный m-файл, позволяющий вычислять значения функции. Number of variables – число переменных данной функции. Plots – с помощью данной панели происходит выбор различных графиков, позволяющих наблюдать за работой генетического алгоритма. Интерфейс данной программы позволяет выводить следующие графики:
Рис. 1 · Best fitness – лучшие значения целевой функции по поколениям; · Best individuals – итоговые значения переменных, соответствующих найденной точке минимума целевой функции; · Distance – изменения среднего расстояния по поколениям между особями популяции; · Expectation – результаты масштабирования целевой функции; · Genealogy – график, иллюстрирующий процесс образования потомков от родителей. · Range – худшие, лучшие и средние оценки особей по поколениям; · Score diversity – оценка разнообразия итоговой популяции в виде гистограммы расстояний между особями; · Scores – значения целевой переменной для особей последнего поколения; · Selection – график количества потомков для каждой родительской особи начальной популяции; · Stopping – иллюстрация выполнения правил останова алгоритма. Если пользователю недостаточно информации, выводимой графиками, можно задать собственную функцию для отображения работы генетического алгоритма. Для этого нужно выбрать опцию Custom function (функция пользователя) и задать имя файла в виде @имя_файла. Предварительно эта функция должна быть записана и сохранена в виде m-файла. Опция Plot interval (по умолчанию – 1) определяет, через сколько поколений производится вывод заданной величины. Опция Run Solver предназначена для запуска алгоритма и просмотра результатов его выполнения: · Current generation – число поколений; · Status and result – в этом окне выводится информация о выполнении алгоритма, причина останова (например, достигнуто заданное число поколений, значение целевой функции в найденной точке. · Final point – здесь отображаются координаты найденной точки экстремума. Остальные параметры генетического алгоритма могут быть определены по умолчанию. В том случае если возникает необходимость изменить параметры генетического алгоритма, они задаются в поле Options. Здесь 1. Population (опции популяции) определяет характеристики популяций генетического алгоритма: · Population type (тип популяции) – по умолчанию двойной вектор (Double vector). Может также иметь формат битовой строки (Bit string) или задаваться пользователем (Custom)/ · Population size (размер популяции) – определяет сколько особей содержит популяция в каждом поколении. · Creation function (функция создания) – задает функцию формирования начальной популяции. По умолчанию используется функция Uniform (равномерная), создающая начальную популяцию в виде точек, «разбросанных» случайным и равномерным образом; · Initial range – исходный диапазон. 2. Fitness scaling (опция масштабирования целевой функции). Этот параметр определяет способ преобразования исходных оценок к виду, удобному для последующих операций (выбора родителей для создания потомков в следующем поколении). 3. Selection Options (опция селекции) позволяет задать способ выбора родителей для генерации потомков – особей следующего поколения. Здесь представлены следующие методы: · Stochastic uniform (равномерный случайный); · Remainder (остаточный); · Uniform – равномерный; · Roulette (пропорциональный отбор – метод рулетки); · Tournament (турнирный); · Custom (пользовательский). 4. Reproduction Options (опция воспроизведения) определяет способ формирования потомков для последующих поколений особей. · Elite count (число элитных особей) – число особей, участвующих в элитном отборе (по умолчанию – 2). Значение этого параметра должно быть целым числом, не превышающим число особей в популяции. · Crossover fraction (доля особей, участвующих в скрещивании) – число от 0 до 1 (по умолчанию 0.8). 5. Mutation Options (опция мутации) определяет характер случайных мутаций. Может принимать значения: · Gaussian – гауссовый; · Uniform – равномерный; · Custom – пользовательский; 6. Crossover Options (опция скрещивания – кроссинговера) позволяет выбрать один из следующих методов реализации скрещивания: · Scattered – разбросанный (устанавливается по умолчанию); · Single point – одноточечный; · Two point – двухточечный; · Intermediate – промежуточный; · Heuristic – эвристический; · Custom – пользовательский; 7. Stopping Criteria Options (критерий останова работы алгоритма) позволяет задать способ завершения работы алгоритма: · Generation – по заданному числу поколений; · Time limit – по ограничению времени; · Fitness limit – ограничение по функции приспособленности; · Stall generations – неизменность результата по поколениям; · Stall time limit – неизменность результата за заданный интервал времени. 8. Output Function Options (опция выходной информации) · History to new window (история в новом окне) – выводит дополнительное окно в котором приводятся номера поколений и соответствующие им наилучшие значения целевой функции; · Interval (интервал) – задание интервала в виде целого положительного числа приводит к тому, что информация сообщается через указанный интервал поколений. · Custom – позволяет задать собственную функции вывода. 9. Display to Command Window Options – опция отображения работы алгоритма в окне MATLAB: · Off – отображается только конечный результат (по умолчанию); · Iterative – информация о поиске минимума обновляется на каждой итерации алгоритма. · Diagnose – вывод дополнительной информации в случае отсутствия сходимости алгоритма; · Final – информация о завершении поиска и причинах останова.
Задание 1
Найти минимум функции от одной переменной (1) с помощью ГА, встроенного в MATLAB.
Дата добавления: 2015-04-25; Просмотров: 2219; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |