Определение минимального значения перерегулирования системы с применением генетического алгоритма.
Секция: Технические науки
XII Студенческая международная научно-практическая конференция «Технические и математические науки. Студенческий научный форум»
Определение минимального значения перерегулирования системы с применением генетического алгоритма.
Основы теории генетических алгоритмов сформулированы Дж. Г.Холландом в основополагающей работе и в дальнейшем были развиты рядом других исследователей. Наиболее известной и часто цитируемой в настоящее время является монография Д.Голдберга, где систематически изложены основные результаты и области практического применения генетических алгоритмов.
Генетический алгоритм (англ. genetic algorithm) — это эвристический алгоритм поиска, используемый для решения задач оптимизации и моделирования путём случайного подбора, комбинирования и вариации искомых параметров с использованием механизмов, аналогичных естественному отбору в природе. Является разновидностью эволюционных вычислений, с помощью которых решаются оптимизационные задачи с использованием методов естественной эволюции, таких как наследование, мутации, отбор и кроссинговер. Отличительной особенностью генетического алгоритма является акцент на использование оператора «скрещивания», который производит операцию рекомбинации решений-кандидатов, роль которой аналогична роли скрещивания в живой природе.
Одна из целей построения факторной модели является нахождение экстремумов. В этой лабораторной работе требуется определить минимальное значение перерегулирования системы. Для этого был применен генетический алгоритм.
В качестве начальных значений для генетического алгоритма были взяты случайные значения T из допустимого диапазона (таблица 6).
Таблица 1.
Начальные значения
№ |
T |
1 |
0.33 |
2 |
0.15 |
3 |
0.65 |
4 |
0.73 |
Генетический алгоритм использует двоичную запись числа, поэтому выбранные значения были умножены на 100. Также для них были вычислены значения σ(T) и приспособленность, которая рассчитывается по следующей формуле:
(1)
где N – количество особей.
Все значения для начальной популяции приведены в таблице 7.
Разрядность для представления чисел в двоичной форме равняется 11. Этого достаточно, чтобы задать диапазон чисел для нахождения минимума (максимальное значение T в таком случае будет равно 211=4096).
Для реализации генетического алгоритма в данной лабораторной работе была составлена программа в среде моделирования SciLab. Алгоритм реализован следующим образом:
- На каждой итерации происходит скрещивание 1 и 2 особи. В результате в них меняются гены в позициях 1, 4, 5, 8.
- Также скрещиваются 3 и 4 особи. В них меняются гены в позициях 2, 3, 5, 6.
- После завершения скрещивания происходит мутация в случайной особи и в случайном гене, в результате чего выбранный ген изменяется на противоположный.
- Действия 1-3 продолжаются до тех пор, пока перерегулирование, вычисляемое на каждой итерации, больше заданной допустимой погрешности (ε).
Выполнение генетического алгоритма представлена ниже.
Далее будут приведены итерации генетического алгоритма для выбранной погрешности ε=0.1 (таблица 3-7).
Таблица 2.
Начальная популяция генетического алгоритма
№ |
T* |
Начальная популяция |
σ(T) |
Приспособленность, Fit |
1 |
33 |
00000100001 |
0.236697 |
0.251839 |
2 |
15 |
00000001111 |
0.239002 |
0.254292 |
3 |
65 |
00001000001 |
0.232599 |
0.247479 |
4 |
73 |
00001001001 |
0.231575 |
0.246389 |
На 1 итерации произошла мутация в 1 особи в 1 гене (таблица 3).
Таблица 3.
Итерация 1 для ε=0.1
№ |
T* |
Начальная популяция |
σ(T) |
Приспособленность, Fit |
1 |
1065 |
10000101001 |
0.104539 |
0.129262 |
2 |
7 |
00000000111 |
0.240027 |
0.296791 |
3 |
65 |
00001000001 |
0.232599 |
0.287607 |
4 |
73 |
00001001001 |
0.231575 |
0.286340 |
На 2 итерации произошла мутация в 3 особи в 3 гене (таблица 4).
Таблица 4.
Итерация 2 для ε=0.1
№ |
T* |
Начальная популяция |
σ(T) |
Приспособленность, Fit |
1 |
33 |
00000100001 |
0.236697 |
0.305039 |
2 |
1039 |
10000001111 |
0.107869 |
0.139014 |
3 |
321 |
00101000001 |
0.199816 |
0.257509 |
4 |
73 |
00001001001 |
0.231575 |
0.298438 |
На 3 итерации произошла мутация во 2 особи в 6 гене (таблица 5).
Таблица 5.
Итерация 3 для ε=0.1
№ |
T* |
Начальная популяция |
σ(T) |
Приспособленность, Fit |
1 |
1065 |
10000101001 |
0.104539 |
0.135438 |
2 |
39 |
00000100111 |
0.235929 |
0.305663 |
3 |
65 |
00001000001 |
0.232599 |
0.301350 |
4 |
329 |
00101001001 |
0.198791 |
0.257549 |
На 4 итерации произошла мутация во 2 особи в 4 гене (таблица 6).
Таблица 6.
Итерация 4 для ε=0.1
№ |
T* |
Начальная популяция |
σ(T) |
Приспособленность, Fit |
1 |
33 |
00000100001 |
0.236697 |
0.313312 |
2 |
1199 |
10010101111 |
0.087379 |
0.115662 |
3 |
321 |
00101000001 |
0.199816 |
0.264493 |
4 |
73 |
00001001001 |
0.231575 |
0.306532 |
Минимум функции был найден за 4 итерации и он равен σmin =0.087379. Такое значение перерегулирования достигается при Tmin = T*min/100=1199/100=11.99.
Также был произведен эксперимент с уменьшенной допустимой погрешностью ε=0.01. Один из лучших полученных результатов для такой точности отображен в таблице 7.
Таблица 7.
Итерация 19 для ε=0.01
№ |
T* |
Начальная популяция |
σ(T) |
Приспособленность, Fit |
1 |
873 |
01101101001 |
0.129127 |
0.273756 |
2 |
559 |
01000101111 |
0.169337 |
0.359005 |
3 |
1873 |
11101010001 |
0.001067 |
0.002261 |
4 |
537 |
01000011001 |
0.172155 |
0.364978 |
Алгоритм для погрешности ε=0.01 за 19 итераций нашёл минимум функции равный 0.001067, при значении T равным 18.73.
В данной лабораторной работе было исследовано влияние факторов T и k на перерегулирование математической модели системы.
Был составлен факторный план и на его основе проведены эксперименты, по результатам которых была построена факторная модель, представляющая из себя функцию, зависящую от двух переменных (T и k). В ходе построения, оказалось, что влияние фактора k в данном варианте лабораторной работы незначительное и им можно пренебречь.
Полученная факторная модель была проверена на адекватность. Для этого был использован t-критерий Стьюдента. Оказалось, что полученная модель адекватна и её погрешность составляет 0,0038.
Нахождение минимума функции полученной факторной модели при различных значениях допустимой погрешности было осуществлено с помощью генетического алгоритма. При значении погрешности ε=0.1, минимум был найден за 4 итерации и равен 0.087379. При ε=0.01 минимум был найден за 19 итераций и равен 0.001067.