Метод равномерного симплекса

2.1 Описание алгоритма

Суть метода заключается в исследовании целевой функции в вершинах некого "образца", построенного в пространстве вокруг "базовой" точки. Вершина, давшая наибольшее значение целевой функции отображается относительно двух других вершин и таким образом становится новой базовой точкой, вокруг которой строится новый образец и снова выполняется поиск. В случае двух переменных симплексом является равносторонний треугольник, в трёхмерном пространстве - тетраэдр.

Работа алгоритма начинается с построения регулярного симплекса в пространстве независимых переменных и оценивания значений целевой функции в каждой точке. Затем определяется вершина с максимальным значением целевой функции и проектируется через центр тяжести оставшихся вершин в новую точку.

Процедура продолжается до тех пор, пока не будет накрыта точка минимума. В этом случае можно пользоваться следующими правилами:

1) Если вершина с максимальным значением целевой функции построена на предыдущем шаге, то отбрасывается вершина со следующим по величине значением целевой функции.

2) Если вокруг одной из вершин начинается циклическое движение, то необходимо уменьшить размеры симплекса.

Поиск заканчивается тогда, когда размеры симплекса или разность значений целевой функции становятся достаточно малыми.

При заданной начальной точке Метод равномерного симплекса - student2.ru и масштабном множителе Метод равномерного симплекса - student2.ru , координаты остальных Метод равномерного симплекса - student2.ru вершин симплекса в Метод равномерного симплекса - student2.ru - мерном пространстве вычисляются по формуле:

Метод равномерного симплекса - student2.ru

Приращения Метод равномерного симплекса - student2.ru и Метод равномерного симплекса - student2.ru определяется по формулам:

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Величина Метод равномерного симплекса - student2.ru выбирается исследователем, исходя из характеристики решаемой задачи. При Метод равномерного симплекса - student2.ru ребро симплекса имеет единичную длину.

Вычисление центра тяжести:

Если Метод равномерного симплекса - student2.ru - точка, подлежащая отражению, то координаты центра тяжести определяются по формуле:

Метод равномерного симплекса - student2.ru

Координаты новой вершины удовлетворяют уравнению:

Метод равномерного симплекса - student2.ru

Для того чтобы симплекс обладал свойством регулярности, отображение должно быть симметричным, т.е. Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Если некоторая вершина симплекса не исключается на протяжении нескольких итераций, то необходимо уменьшить размер симплекса и построить новый симплекс, выбрав в качестве базовой точку с минимальным значением целевой функции.

2.2 Нахождение минимума целевой функции методом равномерного симплекса

Исходные данные:

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - начальная точка

Метод равномерного симплекса - student2.ru - масштабный множитель

Минимизируем целевую функцию до первого уменьшения размера симплекса

Пусть масштабный множитель - Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

1-я итерация:

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - максимально, следовательно, заменяем;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

2-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - максимально, следовательно, заменяем;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

3-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - максимально, следовательно, заменяем

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

4-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - максимально, следовательно, заменяем;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

5-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - максимально, следовательно, заменяем;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

6-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - максимально, следовательно, заменяем;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

7-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - максимально, следовательно, заменяем;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

8-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - максимально, следовательно, заменяем;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

9-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - максимально, следовательно, заменяем;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

10-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Так как наибольшее значение целевой функции соответствует Метод равномерного симплекса - student2.ru , которое получено на предыдущей итерации, отбрасываем Метод равномерного симплекса - student2.ru .

Метод равномерного симплекса - student2.ru

11-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Так как наибольшее значение целевой функции соответствует Метод равномерного симплекса - student2.ru , которое получено на предыдущей итерации, отбрасываем Метод равномерного симплекса - student2.ru .

Метод равномерного симплекса - student2.ru

12-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - максимально, следовательно, заменяем;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

13-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Так как наибольшее значение целевой функции соответствует Метод равномерного симплекса - student2.ru , которое получено на предыдущей итерации, отбрасываем Метод равномерного симплекса - student2.ru .

Метод равномерного симплекса - student2.ru

14-я итерация:

Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - максимально, следовательно, заменяем;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Симплекс сделал один оборот в области расположения точки Метод равномерного симплекса - student2.ru , то есть точку Метод равномерного симплекса - student2.ru при заданных условиях можно считать точкой минимума целевой функции Метод равномерного симплекса - student2.ru (для получения более точного решения необходимо уменьшить размер симплекса).

Таким образом, точка Метод равномерного симплекса - student2.ru - точка минимума, значение функции в которой Метод равномерного симплекса - student2.ru .

Метод равномерного симплекса - student2.ru Рисунок 2. Графическое пояснение метода равномерного симплекса

Метод Хука-Дживса

3.1 Описание алгоритма

Процедура Хука-Дживса представляет собой комбинацию "исследующего" поиска с циклическим изменением переменных и ускоряющего поиска по найденному образцу. Исследующий поиск ориентирован на выявление направления вдоль "оврагов". Полученная в результате исследующего поиска информация используется затем в процессе поиска по образцу при движении по "оврагам".

Исследующий поиск.Для проведения исследующего поиска необходимо задать величину шага, которая может быть различна для разных координатных направлений, и изменяться в процессе поиска. Поиск начинается в некоторой исходной точке. Делается пробный шаг вдоль одного из координатных направлений. Если значение целевой функции в пробной точке меньше, чем в исходной, то шаг считается удачным. В противном случае возвращаются в исходную точку и делают шаг в противоположном направлении. После перебора всех Метод равномерного симплекса - student2.ru координат исследующий поиск заканчивается. Полученную в результате исследующего поиска точку называют базовой.

Поиск по образцу.Поиск по образцу в заключается в реализации единственного шага из полученной базовой точки вдоль прямой, соединяющей эту точку с предыдущей базовой точкой. Новая точка определяется по формуле:

Метод равномерного симплекса - student2.ru

Как только движение по образцу не приводит к уменьшению целевой функции, точка Метод равномерного симплекса - student2.ru фиксируется в качестве временной базовой точки и выполняется исследующий поиск. При уменьшении значения целевой функции эта точка рассматривается как базовая точка. Если же исследующий поиск не дал результата, необходимо вернуться в предыдущую точку и провести исследующий поиск заново. Если такой поиск не приводит к успеху, то необходимо уменьшить величину шага. Поиск завершается, когда величина шага приращения становится достаточно малой.

3.2 Алгоритм метода

Шаг 1. Задать:

1. Начальную точку Метод равномерного симплекса - student2.ru ;

2. Приращение Метод равномерного симплекса - student2.ru , Метод равномерного симплекса - student2.ru ;

3. Коэффициент уменьшения шага Метод равномерного симплекса - student2.ru ;

4. Параметр окончания поиска Метод равномерного симплекса - student2.ru .

Шаг 2. Произвести исследующий поиск.

Шаг 3. Поиск удачный:

Да:

перейти к шагу 5;

Нет:

продолжить.

Шаг 4. Проверка на окончание поиска: Метод равномерного симплекса - student2.ru ?

Да:

прекратить поиск;

Нет:

уменьшить приращение по формуле: Метод равномерного симплекса - student2.ru , Метод равномерного симплекса - student2.ru ;

Перейти к шагу 2.

Шаг 5. Провести поиск по образцу: Метод равномерного симплекса - student2.ru

Шаг 6. Провести исследующий поиск, используя Метод равномерного симплекса - student2.ru в качестве базовой точки: Метод равномерного симплекса - student2.ru - полученная в результате точка

Шаг 7. Выполняется ли условие Метод равномерного симплекса - student2.ru ?

Да:

продолжить Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ;

перейти к шагу 5;

Нет:

перейти к шагу 4.

3.3 Нахождение минимума целевой функции методом Хука-Дживса.

Исходные данные:

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru - начальная точка;

Метод равномерного симплекса - student2.ru - векторная величина приращения;

Метод равномерного симплекса - student2.ru - коэффициент уменьшения шага.

Минимизируем значение целевой функции до первого сокращения шага поиска

1. Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Исследующий поиск вокруг базовой точки Метод равномерного симплекса - student2.ru :

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск удачен;

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск удачен;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Так как поиск удачен, то переходим к поиску по образцу:

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

2. Исследующий поиск вокруг точки Метод равномерного симплекса - student2.ru :

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск удачен;

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск удачен;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Так как поиск удачен, то переходим к поиску по образцу:

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

3. Исследующий поиск вокруг точки Метод равномерного симплекса - student2.ru :

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск удачен;

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Так как поиск удачен, то переходим к поиску по образцу:

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

4.

Исследующий поиск вокруг базовой точки Метод равномерного симплекса - student2.ru :

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

В результате исследующего поиска не было достигнуто уменьшение значения целевой функции, то есть значение шага (векторной величины приращения) уменьшить в Метод равномерного симплекса - student2.ru раз, до величины Метод равномерного симплекса - student2.ru , затем необходимо произвести исследующий поиск вокруг точки Метод равномерного симплекса - student2.ru , используя новое значение приращения Метод равномерного симплекса - student2.ru .

5. Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Исследующий поиск вокруг базовой точки Метод равномерного симплекса - student2.ru :

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск удачен;

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск удачен;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Так как поиск удачен, то переходим к поиску по образцу:

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

6.

Исследующий поиск вокруг точки Метод равномерного симплекса - student2.ru :

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск удачен;

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Так как поиск удачен, то переходим к поиску по образцу:

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

Метод равномерного симплекса - student2.ru

7.

Исследующий поиск вокруг точки Метод равномерного симплекса - student2.ru :

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

фиксируя Метод равномерного симплекса - student2.ru , даём приращение переменной Метод равномерного симплекса - student2.ru :

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru ; Метод равномерного симплекса - student2.ru - поиск неудачен;

В результате исследующего поиска не было достигнуто уменьшение значения целевой функции, то есть значение шага (векторной величины приращения) уменьшить в Метод равномерного симплекса - student2.ru раз, до величины Метод равномерного симплекса - student2.ru , затем необходимо произвести исследующий поиск вокруг точки Метод равномерного симплекса - student2.ru , используя новое значение приращения Метод равномерного симплекса - student2.ru .

Итерации продолжаются, пока величина шага не укажет на окончание поиска в окрестности точки минимума.

Метод равномерного симплекса - student2.ru

Рисунок 3. Графическое пояснение метода Хука-Дживса

Наши рекомендации