Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория / 2 / 09-OPTIM.DOC
Скачиваний:
84
Добавлен:
30.04.2013
Размер:
246.78 Кб
Скачать

Расчет координат новой вершины симплекса

Для n-мерного пространства симплекс имеет n+1 вершину: Пусть некоторая вершина- наихудшая. Тогда противолежащая грань образована точками, т.е. точкаей не принадлежит.

Расчет координат новой вершины состоит из следующих этапов:

1) Определяются координаты "центра тяжести" противолежащей грани (точка ). Они равны среднеарифметическому значению координат всех вершин, образующих эту грань, т.е., причемi ¹ L, или

,

где n - размерность задачи.

2) Вычисляется расстояние от отбрасываемой вершины до центра тяжести противолежащей грани. Это расстояние равно

3) Определяются координаты новой вершины симплекса, точка . Эти координаты равны

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

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

Если происходит сжатие исходного симплекса, то 0 < A < 1 (обычно берут А = 0.5). Если симплекс растягивается, то A > 1 (часто А = 2).

Алгоритм метода "деформируемых многогранников"

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

Дано: n - размерность задачи, e - точность решения задачи оптимизации, x[n+1,n] - матрица начальных приближений.

1) Рассчитывают (или задают) координаты n+1 вершины симплекса.

2) Во всех найденных вершинах вычисляют значения целевой функции.

3) Из найденных значений целевой функции ищут минимальное (Ymin) и максимальные (Ymax) значения.

Отражение "наихудшей" вершины

4) Вершина с максимальным значением целевой функции отражается через центр противоположной грани. Координаты новой вершины рассчитываются по приведенной выше формуле при А=1. В этой вершине определяется значение целевой функции Y(1).

5) Если Y(1) < Ymin , то вдоль выбранного направления выполняется

Растяжение "наихудшей" вершины

6) Координаты новой вершины также определяются по приведенной формуле, но в этом случае А=2. В этой вершине также рассчитывают значение целевой функции Y(2).

7) Если Y(2) < Ymin, то в качестве новой вершины симплекса берется вершина, полученная растяжением. В противном случае - вершина, полученная отражением. После этого проверяется выполнение условия окончания оптимизации (пункт 12).

8) Если Y(1) > Ymax, то производится

Сжатие "наихудшей" вершины

9) В этом случае координаты новой вершины симплекса рассчитываются по формуле при А = 0.5. В полученной точке вычисляется значение целевой функции Y(2) . Если Y(2) < Ymax , то запоминаются координаты этой вершины и проверяется условие окончания поиска (пункт 12).

10) Если Y(2) > Ymax , то выполняется

Пропорциональное уменьшение размеров симплекса

11) То есть координаты всех вершин симплекса сдвигаются на половину расстояния до наилучшей точки.

Проверка окончания оптимизации

12) Наиболее часто используют следующий критерий

где ycp - среднее значение целевой функции во всех вершинах симплекса.

Если это условие не выполняется, то расчеты повторяют с пункта 3.

Соседние файлы в папке 2