Читайте также:
|
|
Понятие задачи нелинейного программирования.
В общем виде задача нелинейного программирования состоит в определении максимального (минимального) значения функции
(1)
при условии, что её переменные удовлетворяют соотношениям
(2)
где f и gi – некоторые известные функции n переменных, а bi – заданные числа.
Здесь имеется в виду, что в результате решения задачи будет определена точка координаты которой удовлетворяют соотношениям (2) и такая, что для всякой другой точки
удовлетворяющей условиям (2), выполняется неравенство
.
Если f и gi – линейные функции, то задача (1), (2) является задачей линейного программирования.
Соотношения (2) образуют систему ограничений и включают в себя условия неотрицательности переменных, если такие условия имеются. Условия неотрицательности переменных могут быть заданы и непосредственно.
В евклидовом пространстве En система ограничений (2) определяет область допустимых решений задачи. В отличие от задачи линейного программирования она не всегда является выпуклой.
Если определена область допустимых решений, то нахождение решения задачи (1) – (2) сводится к определению такой точки этой области, через которую проходит гиперповерхность наивысшего (наинизшего) уровня: . Указанная точка может находится как на границе области допустимых решений, так и внутри нее.
Графический метод.
Процесс нахождения решения задачи нелинейного программирования (1) – (2) с использованием её геометрической интерпретации включает следующие этапы:
10. Находят область допустимых решений задачи, определяемую соотношениями (2) (если она пуста, то задача не имеет решения).
20. Строят гиперповерхность .
30. Определяют гиперповерхность наивысшего (наинизшего) уровня или устанавливают неразрешимость задачи из-за неограниченности функции (1) сверху (снизу) на множестве допустимых решений.
40. Находят точку области допустимых решений, через которую проходит гиперповерхность наивысшего (наинизшего) уровня, и определяют в ней значение функции (1).
3.1. Найти максимальное значение функции
(3)
при условиях
(4)
(5)
Р е ш е н и е. Так как целевая функция (3) нелинейная, то задача (3) – (5) является задачей нелинейного программирования. Областью допустимых решений данной задачи является многоугольник ОАВС (рис. 3.1). Следовательно для нахождения её решения нужно определить такую точку многоугольника ОАВС, в которой функция (3) принимает максимальное значение. Построим линию уровня , где h – некоторая постоянная, и исследуем её поведение при различных значениях h. При каждом значении h получаем параболу, которая тем выше отдалена от оси Оx1, чем больше значение h (рис. 3.1). Значит, функция F принимает максимальное значение в точке касания одной из парабол с границей многоугольника ОАВС. В данном случае это точка D (рис. 3.1), в которой линия уровня
касается стороны АВ многоугольника ОАВС.
Координаты точки D можно найти из системы уравнений
(6)
Решая эту систему, получим . Итак,
при
Как видим, в задаче (3) – (5) точка максимального значения целевой функции не является вершиной многоугольника решений. Поэтому процедура перебора вершин, которая использовалась при решении задач линейного программирования, неприменима для решения данной задачи.
Метод множителей Лагранжа.
Рассмотрим частный случай общей задачи нелинейного программирования (1) – (2), предполагая, что система ограничений (2) содержит только уравнения, отсутствует условия неотрицательности переменных и
- функции, непрерывные вместе со своими частными произведениями
(7)
. (8)
В курсе математического анализа в задачу (7) – (8) называют задачей на условный экстремум или классической задачей оптимизации.
Чтобы найти решение этой задачи, вводят набор переменных , называемых множителями Лагранжа, составляют функцию Лангранжа
находят частные производные и
и рассматривают систему n+m уравнений
(10) |
c n+m неизвестными . Всякое решение системы уравнений (10) определяет точку
в которой может иметь место экстремум функции
. Следовательно, решив систему уравнений (10), получают все точки, в которых функция (7) может иметь экстремальные значения. Дальнейшее исследование найденных точек проводят так же, как и в случае безусловного экстремума.
Таким образом, определение экстремальных точек задачи (7) – (8) методом множителей Лагранжа включает следующие этапы:
10. Составляют функцию Лагранжа.
20. Находят частные производные от функции Лагранжа по переменным и
и приравнивают их нулю.
30. Решая систему уравнений (10), находят точки, в которых целевая функция задачи может иметь экстремум.
40. Среди точек, подозрительных на экстремум, находят такие, в которых достигается экстремум, и вычисляют значения функций (7) в этих точках.
Пример. По плану производства продукции предприятию необходимо изготовить 180 изделий. Эти изделия могут быть изготовлены двумя технологическими способами. При производстве х1 изделий I способом затраты равны руб., а при изготовлении x2 изделий II способом они составляют
руб. Определить, сколько изделий каждым из способов следует изготовить, так чтобы общие затраты на производство продукции были минимальными.
Решим теперь задачу, используя метод множителей Лагранжа. Найдем минимальное значение функции при условии, т.е. без учета требования неотрицательности переменных. Для этого составим функцию Лагранжа
вычислим её частные производные по и приравняем их нулю:
Перенося в правые части первых двух уравнений λ и приравнивая их левые части, получим
или
.
Решая последнее уравнение совместно с уравнением , находим
и
т.е. получили координаты точки D, удовлетворяющей условиям (22). Эта точка является подозрительной на экстремум. Используя вторые частные производные, можно показать, что в точке D функция f имеет условный минимум. Этот результат и был получен выше.
Следует отметить, что такой же результат мы получим и в том случае, если исследования на условный экстремум функции f сведем к исследованию на безусловный экстремум функции f1, полученный из f в результате её преобразований. А именно: если из уравнения связи найдем и подставим это выражение в (20), то получим функцию одной переменной х1:
Найдем стационарную точку этой функции из уравнения , или
, откуда
;
. Также как и выше, устанавливаем, что в данной точке функция f имеет минимальное значение.
Пример 2. Фирма реализует автомобили двумя способами: через магазин и через торговых агентов. При реализации х1 автомобилей через магазин расходы на реализацию составляют усл. ед., а при продаже х2 автомобилей через торговых агентов расходы составляют
усл. ед. Найти оптимальный способ реализации автомобилей, минимизирующий суммарные расходы, если общее число предназначенных для продажи автомобилей составляет 200 штук.
Решение. Составим математическую модель задачи.
Целью является минимизация суммарных расходов
Управляющие переменные – это число автомобилей, реализуемых первым и вторым способом: х1 и х2, соответственно (200 штук).
Окончательно математическая модель имеет следующий вид:
Для ее расчета применим метод множителей Лагранжа.
Функция Лагранжа имеет вид
Найдем частные производные функции F по х1, х2 и l и приравниваем их к нулю.
Получим следующую систему уравнений:
Решая систему, найдем
х1 = 99, х2 = 101, l =202, f (х1, х2) = 20398.
Определитель, составленный из вторых частных производных функций f по х1, х2 имеет вид
Следовательно, по теореме о достаточном условии существования условного экстремума функция f (х1, х2) в точке х1 = 99, х2 = 101 действительно имеет экстремум.
Следовательно в этой точке функция f имеет условный минимум.
Таким образом, для получения минимальных расходов, нужно реализовать 99 автомобилей через магазин и 101 автомобиль через торговых агентов. При этом расходы на реализацию составят 20398 усл.ед.
Решив последнюю систему, найдем оптимальные значения: х1=99, х2=101, f (х1, х2) = 20398.
практическое занятие по Теме 1.
Дата добавления: 2014-12-20; просмотров: 159 | Поможем написать вашу работу | Нарушение авторских прав |