Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lineynoe_programmirovanie.docx
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
124.73 Кб
Скачать

II. Нелинейное программирование

Нелинейное программирование— случай математического программирования, в котором целевой функцией или ограничением является нелинейная функция

Задача нелинейного программирования ставится как задача нахождения оптимума определенной целевой функции F(x1,… xn) при выполнении условий

gi(x1,…xn) ≥ 0

где xi, i=1, . . . , n — параметры, gi, j=1, . . . ,s — ограничения,n — количество параметров, s — количество ограничений.

В отличие от задачи линейного программирования, в задаче программирования нелинейного оптимум не обязательно лежит на границе области, определенной ограничениями.

1. Метод Фибоначчи

1.1. Постановка задачи

Требуется найти безусловный минимум функции f(x) одной переменной, т.е. такую точку , что .

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

Определение. Числа Фибоначчи определяются следующим образом: . Последовательность чисел Фибоначчи имеет вид 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,… .

1.2. Стратегия поиска.

Метод относится к последовательным стратегиям. Задается начальный интервал неопределенности и количество N вычислений функции. Алгоритм основан на анализе величин функции в двух точках. Точки вычисления функции находятся с использованием последовательности из N+1 чисел Фибоначчи. Как и в методе золотого сечения, на первой итерации требуется два вычисления функции, а на каждой последующей итерации, требуется только одно новое вычисление функции. Поиск заканчивается, когда длина текущего интервала неопределенности оказывается меньше установленной величины.

1.3. Алгоритм

Шаг 1. Задать начальный интервал неопределенности , ], допустимую длину конечного интервала l > 0 и константу различимости . Шаг 2. Найти количество N вычислений функции как наименьшее целое число, при котором удовлетворяется условие , и числа Фибоначчи . Шаг 3. Положить k=0. Шаг 4. Вычислить значения : . Шаг 5. Вычислить , . Шаг 6. Сравнить с а) если , положить Перейти к шагу 7;

б) если > , положить . Шаг 7. Проверить условие окончания и в случае необходимости сделать заключительное N-е вычисление функции для получения решения: а) если , положить k=k+1 и перейти к шагу 5; б) если k=N-3, то всегда , т.е. отсутствует точка нового вычисления функции. В этом случае полагают: . В точках вычисляют значения функции и находят границы конечного интервала неопределенности:

Если , положить

Если , положить

Поиск завершен и . В качестве приближения можно взять середину этого интервала .

Сходимость.

Для метода Фибоначчи характеристика относительного уменьшения начального интервала неопределенности находится по формуле , где N - количество вычислений функции.

2. Метод золотого сечения

Метод золотого сечения — метод поиска значений действительно- значной функции на заданном отрезке. В основе метода лежит принцип деления в пропорциях золотого сечения. Наиболее широко известен как метод поиска экстремума в решении задач оптимизации

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]