Функция Griewangks

х(-600; 600)

Минимум равный 0 в точке, где xi=0.0.

При n=10 есть ещё 4 локальных минимума равных 0,0074 приблизительно в точке (+-Pi, +-Pi*sqrt(2), 0, ..., 0).

Данная задача оказалась сложной для генетического и других алгоритмов оптимизации. Представленные результаты были получены не сразу, многоэкстремальность разрешалась предельно сложно. В результате многочисленных экспериментов было замечено, что некоторые переменные не выходят в "положенный" нуль. При оптимизации 100та и 500та таких переменных насчитывалось от одной до четырех.

Особенность этой задачи в том, что на фоне большого количества переменных имеется огромное число локальных экстремумов. Но главное все-таки заключается в том, что две составляющие этой функции опять же плохо соизмеримы. Вдали от решения (ближе к граничным точкам) первая составляющая ( ……) значительно превосходит вторую ( cos ……), поэтому оптимизация сначала выполняется именно по первой и соответствует правильному направлению. По мере приближения к "нулю" (xi <10), наоборот, в большинстве точек пространства вторая составляющая ( cos ……) начинает преобладать в общем результате, то есть оптимизация начинает "не замечать" первую составляющую и дальнейшее управление-решение выполняется по ( cos ……) на фоне значений переменных полученных на текущий момент. Если некоторые значения далекие от нуля дают значение cos близкое к единице, то они "становятся не видными" для ….. , что и является причиной неудовлетворительного результата. Эта ситуация не может быть в принципе надежно разрешена оптимизацией.

Проблема - в несоизмеримости, в некорректном построении целевой функции, эта завуалированная многокритериальная задача с неудачной линейной сверткой. Ситуация легко исправляется стандартной процедурой нормирования этих двух составляющих, например, умножением первой на 1000, тогда получаем и все становится намного проще ! При n=100 или 500 задача решается проще, так как эти две составляющие соизмеримы и нормировка не нужна.

Тем не мене мы представляем лучшие результаты, (полученные за несколько проб), локальные решения в районе 0,001 получаются всегда (это вполне удовлетворительно на фоне большого исходного значения цели.

Материалы для скачивания:

1. 100 переменных

2. 500 переменных

 
Сайт управляется системой uCoz