Влияние параметров алгоритма на эффективность поиска
Проанализируем влияние параметров a, g, b на эффективность процедуры поиска.
Коэффициент отражения a используется для проектирования вершины с наибольшим значением f(X) через центр тяжести деформируемого многогранника.
Коэффициент g вводится для растяжения вектора поиска в случае, если отражение дает вершину со значением f(X), меньшим, чем наименьшее значение f(X), полученное до отражения.
Коэффициент сжатия b используется для уменьшения вектора поиска, если операция отражения не привела к вершине со значением f(X),меньшим, чем второе по величине, после наибольшего, значение f(X), полученное до отражения.
Таким образом, с помощью операций растяжения или сжатия размеры и форма деформируемого многогранника изменяются так, чтобы они удовлетворяли топологии решаемой задачи. После того, как это изменение выполнено, размеры многогранника поддерживаются неизменными, пока особенности целевой функции не потребуют применения многогранника другой формы. Это возможно реализовать только при a=1. Как показывают численные эксперименты, при решении задачи с a>1 требуется большее количество вычислений функции. С другой стороны, параметр a не должен быть много больше единицы, т.к. деформируемый многогранник легче адаптируется к топологии задачи при меньших значениях a. Кроме того, большое значение a может замедлить сходимость, т.к. в окрестности минимума размеры многогранника должны уменьшаться. Поэтому значение a=1 можно выбрать как компромисс.
Влияние на процедуру поиска параметров b и g менее четко выражено. Как показывают результаты решения тестовых задач, можно рекомендовать следующие диапазоны значений для этих параметров: 0,4£b£0,6; 2£g£3. При этом отмечается, что влияние коэффициента b на эффективность поиска заметнее, чем влияние g. При bÎ(0;0,4) имеет место преждевременное окончание поиска, а при b>0,6 требуется выполнить больше шагов для достижения окончательного решения.
Типовой пример.
Выполним одну итерацию поиска по методу деформируемого многогранника для задачи минимизации функции f(X)=4(x1-5)2+(x2-6)2.
Поскольку функция зависит от двух переменных, в начале поиска используется многогранник с тремя вершинами X1=(8;9)T, X2=(10;11)T, X3=(8;11)T.
Зададим значения параметров a=1, g=2. Вычислим значения функции в них : f(X1)=45; f(X2)=125; f(X3)=65.
Вершиной с наименьшим значением функции оказывается XL=X1. Вершиной с наибольшим значением функции является Xh=X2. Далее находим центр тяжести вершин, исключая X2.
.
Отражая “худшую” точку Xh относительно найденной X4 , получим точку
Xn+3= X5= X4+a( X4- X2)= ,
значение функции в которой f(X5)=13.
Поскольку f(X5)< f(XL)=45, выполняем операцию растяжения, определяя точку
Xn+4= X6= X4+g( X5- X4)= ,
и значение функции в ней f(X6)=8,
Так как f(X6)< f(XL), заменяем вершину Xh на Xn+4, полагая X2= X6 и тем самым завершая первую итерацию поиска.
На рис.4 приведена геометрическая интерпретация поиска по деформируемому многограннику на пяти начальных этапах минимизации функции f(X)=4x12+x22-40x1-12x2+136.
Рис.4. Траектория поиска по деформируемому многограннику.
Очевидно, линиями уровня функции являются эллипсы . На рисунке изображены линии уровня, соответствующие значениям функции 2, 5, 10, 20 и 30. Пунктиром выделены многогранники с вершинами Xj(i), в обозначениях которых j – номер вершины деформируемого многогранника на i-том этапе поиска. Сплошными линиями показана траектория поиска, соединяющая вершины многогранника, соответствующие наименьшим значениям f(X) в каждом из них. Убедитесь в соответствии графической иллюстрации описанному с помощью формул (6)-(9) алгоритму.