Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Chernov_-_Vvedenie_v_LP

.pdf
Скачиваний:
59
Добавлен:
15.02.2016
Размер:
1.18 Mб
Скачать

В.П. ЧЕРНОВ

ВВЕДЕНИЕ В ЛИНЕЙНОЕ ПРОГРАММИРОВАНИЕ

Санкт-Петербург

2001

Санкт-Петербургский государственный университет экономики и финансов

Ректор д-р экон. наук, профессор, академик МАН ВШ и МАИ Л.С. Тарасевич

Председатель научно-методического совета профессор К.Х. Нинциев

Чернов В.П. Введение в линейное программирование / под ред.

А.Ф. Тарасюка

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

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

© В.П. Чернов

2

0. Введение

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

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

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

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

3

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

В центре нашего внимания будут конкретные расчетные методы, основанные на этой теории.

Мы начнем с совсем простого, «детского» примера. В этом примере, несмотря на его краткость и простоту, присутствует большая часть проблем, возникающих в реальных, больших моделях распределения ресурсов. Затем мы рассмотрим проблематику такого рода задач в общем виде, а потом перейдем к анализу конкретной производственной ситуации.

1. Задача линейного программирования

1.1.Задача производственного планирования

1.1.1.Пример задачи производственного планирования

Начнем с рассмотрения простого примера. В баре изготавливаются и продаются фруктовые коктейли двух видов. Один литр коктейля "Утро" содержит 675 мл виноградного сока, 200 мл апельсинового сока и 125 мл клюквенного сока.

Коктейль "Вечер" содержит те же соки, но в другой пропорции. Один литр "Вечера" состоит из 150 мл клюквенного, 450 мл виноградного и 400 мл апельсинового сока.

4

Коктейли в баре продаются порциями любого объема. Цена порции устанавливается из расчета: литр коктейля "Утро" стоит 12 рублей, литр "Вечера" - 10 руб.

В баре имеются запасы соков: 48 л апельсинового, 22 л клюквенного и 108 л виноградного сока.

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

Некоторые планы могут оказаться невозможными (недопустимыми), для них не хватит имеющихся в наличии соков. Другие будут возможными, для них соков хватит.

Возможных, допустимых планов, конечно, чрезвычайно много. Каждому такому плану соответствует своя выручка от продажи коктейлей.

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

 

 

 

 

 

Таблица 1

 

 

 

 

 

 

Коктейли

"Утро"

"Вечер"

Запасы соков в

Соки

 

 

 

 

баре (л)

(л сока в 1 л

 

 

 

коктейля)

 

 

 

 

 

 

 

 

 

виноградный

 

0,675

0,450

108

апельсиновый

 

0,200

0,400

48

клюквенный

 

0,125

0,150

22

 

 

 

 

 

 

Цена

1

л

12

10

 

коктейля (руб.)

 

 

 

 

 

 

 

 

 

 

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

5

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

Построим математическую модель задачи. Составление модели начинается с введения переменных. Мы хотим найти наилучший (оптимальный) производственный план. Такой план в данном случае - это пара величин, соответствующих объемам производства (количеству литров) одного и другого коктейля. Обозначим посредством x1 - объем производства коктейля "Утро", посредством x2 - объем производства коктейля "Вечер".

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

0,675x1 0,450x2 108 .

Это неравенство выражает, что суммарные расходы виноградного сока на коктейль "Утро" в количестве x1 литров и на коктейль "Вечер" в количестве x2 литров (левая часть неравенства) не должны превосходить общих наличных запасов виноградного сока (правая часть неравенства). Аналогичное неравенство можно написать для апельсинового сока:

0,200x1 0,400x2 48 ,

и для клюквенного сока:

6

0,125x1 0,150x2 22 .

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

x1 0, x2 0

Таким образом, в целом мы получаем систему неравенств, характеризующих в математической форме условия составления плана производства коктейлей:

0,675x1 0,450 x 2 108,

0,200 x1 0,400 x 2 48,

0,125x1 0,150 x 2 22,

x1 0,x 2 0

Такая система неравенств носит название системы ограничений задачи. Любая пара значений переменных, то есть вектор (x1, x2), называется планом задачи. Те пары значений, которые удовлетворяют всем неравенствам системы, то есть те планы, которые удовлетворяют системе ограничений, называются допустимыми планами.

Например, план (40; 50), согласно которому нужно составить 40 литров коктейля "Утро" и 50 литров коктейля "Вечер", является допустимым планом. Чтобы проверить его допустимость, достаточно подставить значения x1 = 40 и x1 = 50 в систему ограничений и убедиться, что каждое из неравенств выполнено. Разумеется, допустимым будет и всякий план с меньшим неотрицательными объемами производства коктейлей. Отсюда следует, что допустимых планов бесконечно много.

С другой стороны, рассмотрим план (120; 50), в котором объем производства "Утро" увеличен в 3 раза, а объем производства "Вечера" оставлен прежним. Этот план - недопустимый. Он не удовлетворяет третьему неравенству системы. Для его выполнения требуется 22,5 л клюквенного сока, а в наличии имеется всего 22 л. И хотя этот план

7

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

Сосредоточим внимание на допустимых планах. Каждый из них дает бару свой размер выручки. Чтобы ее сосчитать, нужно вспомнить о ценах за единицу готовой продукции - за литр коктейля (табл.1). Например, для плана (40; 50) выручка составит:

z = 12 40 + 10 50 = 980 (руб.)

В общем случае формулу для определения выручки можно представить в следующем виде:

z = 12x1 + 10x2,

где z - величина выручки.

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

Математическая запись цели и условий (ограничений) задачи выглядит теперь следующим образом.

max(1200 x1 1000 x 2 )

0,675x1

0,450 x 2

108,

 

 

 

 

 

 

 

 

 

 

 

 

0,200x

 

0,400x

 

 

48,

 

 

 

 

1

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,125x

1

0,150x

2

 

22,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,

 

 

 

0.

 

 

 

 

x

1

 

x

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8

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

Построение математической модели дает двоякую пользу. Вопервых, оно позволяет сформулировать задачу в ясной, отчетливой форме. Такая форма дает возможность быстро распознать допустимые и недопустимые планы, рассчитать соответствующую выручку.

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

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

Пусть C есть двухмерный вектор-строка, соответствующий коэффициентам при переменных в целевой функции,

C = (1200; 1000).

Пусть А есть матрица размерности 3 2, составленная из коэффициентов при переменных в системе ограничений:

 

0,6750,450

 

 

 

 

 

 

 

A

0,2000,400

.

 

 

 

 

0,1250,150

 

 

 

Пусть В есть трехмерный вектор-столбец, составленный из правых частей неравенств, входящих в систему ограничений:

9

108

 

 

 

 

 

B 48

.

 

 

 

 

22

 

Пусть X есть двумерный вектор-столбец, составленный из

переменных задачи:

 

X1

 

 

 

X

.

 

 

X2

 

Посредством О обозначен нулевой двумерный вектор-столбец:

0 0 .

0

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

maxCX

AX B .

X 0

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

Как найти решение задачи, как вычислить оптимальный план? На какую максимальную выручку может рассчитать школьный бар? Сколько какого коктейля следует изготовить при этом? Следует ли изготавливать оба вида или выгоднее продавать лишь один вид коктейля? Все ли запасы соков будут при этом использованы? Если запасы соков изменились (часть ушла на другие нужды или прибыла новая партия соков), то как изменился оптимальный план? Насколько чувствителен оптимальный план к изменению цен на коктейли?

10

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