Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КЛ_МиМ в экономике_текст.doc
Скачиваний:
80
Добавлен:
05.11.2018
Размер:
16.27 Mб
Скачать

Графики предельной и средней эффективности

Значения этих функций рассчитаны и приведены в следующей таблице:

S

F(S)-F(S-1)

F(S)/S

1

2

3

4

5

0,28

0,25

0,20

0,17

0,20

0,28

0,27

0,24

0,23

0,22

Вывод: методика решения задачи о распределении ресурсов методом динамического программирования.

Этап 1.

Пошагово решается вопрос о распределении ресурса между возрастающим числом предприятий (от одного до n). На каждом шаге определяется суммарный прирост их прибыли fk от использования S единиц ресурса и решается вопрос об оптимальном выделении некоторой части ресурса в количестве хk последнему из включенных в круг рассмотрения предприятий.

Решения находятся с использованием следующих рекуррентных уравнений Беллмана:

при

при fk(S)=[+fk-1(S-xk)],

где fk(S) - суммарный прирост прибыли на k – предприятиях от S единиц ресурса;

- прирост прибыли k-го предприятия при выделении ему хk единиц ресурса.

На каждом шаге в итоговую таблицу условно-оптимальных решений заносятся величины fk(S) и выбранное хk. Величины fk-1(S) берутся в расчетной формуле с предыдущего шага итоговой таблицы.

Этап 2.

Безусловное (окончательное) распределение ресурса между всеми предприятиями находится с помощью итоговой таблицы обратным ходом: вначале находится оптимальная величина капвложений последнему предприятию с использованием последней строки итоговой таблицы; потом – предпоследнему предприятию по строке таблицы, соответствующей нераспределенному остатку ресурса; и т.д. – до первого предприятия.

Тема 10. О других моделях и методах математического программирования

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

Общая задача нелинейного программирования состоит в оптимизации функции F(x1, x2,...xn) при ограничениях gi(x1, x2, ... xn) и условии неотрицательности переменных , F(x), gi(x) - нелинейные функции. Очевидно, что нелинейное программирование существенно расширяет возможности постановки реальных экономических задач. В действительности такие величины, как прибыль, себестоимость, капитальные затраты на единицу продукции, удельный расход различных ресурсов зависят от объема производства, затраты на перевозку единицы груза, от объема перевозок и т.п., а в соответствующих задачах линейного программирования их приходится считать постоянными. В то же время учет указанных факторов приводит к нелинейным зависимостям.

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

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

В ряде случаев нелинейные задачи решаются с помощью специально составленной функции Лагранжа, получаемой на основе условий задачи. В результате находят “седловую точку”, представляющую собой максимум относительно одной (нескольких) переменной и минимум относительно другой (других) переменной, а тем самым и оптимальное решение (это определяется так называемыми условиями Куна-Таккера).

В других случаях отыскание оптимума достигается путем последовательного приближения решения к оптимальному (например, применяя широко распространенные градиентные методы).

К настоящему времени точные методы разработаны лишь для отдельных типов нелинейных моделей.

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

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

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

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

Градиентные методы отличаются друг от друга в основном выбором длины шага.