Применяется для поиска локального минимума функций, зависящих от нескольких аргументов (в многомерных задачах). Насколько мне известно, этот метод реализован как библиотечный в программе Mathlab. Кратко его суть: строится начальный симплекс - множество из n+1 допустимых точек аргументов, где n-размерность задачи. Назову этот симплекс гиперпирамидой (треугольник, если на плоскости). Далее точки сортируются в порядке ухудшения значения функции. Наихудшаю точку пробуем заменить на другую, полученную как ее отражение по прямой из нее через центр масс оставшихся лучших точек (грубо говоря, по направлению туда, где ф-ция потенциально улучшается). Если отражение (и его пару под-вариантов на той же прямой) не дают улучшения ф-ции, то весь симплекс пропорционально сжимается к лучшей из точек. Все повторяется до тех пор, пока либо симплекс не вырождается (начинают совпадать точки или стягивается в маленькую область), а разброс значений ф-ции становится несущественным.
Проблема: симплекс в процессе поиска решения "живет" - растягивается, сжимается, перемещается. Из-за ограниченной точности вычислений, ему свойственно вырождаться (начинают совпадать отдельные точки) до того, как будет найдено решение.
У меня проблема стоит особо остро, потому что разрядность аргументов заданна (ограничена).
Если кто сталкивался с методом и проблемами, отзовитесь. Мне будет интересно обсудить подробнее.
Вот ссылочка на вики, где можно получить представление о теме:
http://en.wikipedia.org/wiki/Nelder-Mead_method
Как преодолеть вырождение симплекса? В моем случае оптимизируемая ф-ция аналитически не задана, получается в результате измерений. Имеет 6 аргументов по 5 или 8 бит каждый.
Я попробовал изменить алгоритм: задал нач симплекс как пирамиду с ортогональными боковыми сторонами равной длины, чтобы все вершины были целыми, а потом при его преобразовании делал отражения худшей точки не через центр масс оставшихся, а через середину лучшей стороны, т.о. она всегда отражается строго из целочисленны в целочисленные координаты.
Недостаток оказался следующий: симплекс перестал строго ориентироваться по направлению улучшения фции, т.к. сохранял форму и ортогональность, в результате тоже часто сжимается до нахождения минимума при неудачном расположении относительно градиента фции.