Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЭММ: Методичка Забуга С.И.doc
Скачиваний:
21
Добавлен:
12.11.2018
Размер:
2.28 Mб
Скачать

Часть 1. Линейное программирование

1.1. Построение линейных экономико-математических моделей

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

  1. Ввести необходимые по смыслу постоянные и переменные величины.

  2. Четко определить целевую функцию.

  3. Записать в виде уравнений и (или) неравенств все ограничения и соотношения, характеризующие данную задачу.

Примеры задач

А. Задача об оптимальном плане выпуска продукции

Пусть предприятие выпускает n видов продукции, используя для этого m видов ресурсов. Даны величины aijрасход i-го ресурса на единицу j-го вида продукции, которые обычно записываются в виде матрицы А(m x n). Ресурсы ограничены запасами: . Известна прибыль от реализации j-го вида продукции: . Даны нижний и верхний – допустимые объемы выпуска j-го вида продукции. Требуется найти план выпуска каждого вида продукции, максимизирующий суммарную прибыль предприятия.

Вводим независимые переменные: – планируемые объемы выпуска каждого вида продукции. Тогда математическая модель приобретает следующий вид:

или в векторно–матричной форме:

Пример 1.1.1. На городской рынок ежедневно необходимо завезти не менее 16 т картофеля из трех хозяйств по цене, соответственно, 600, 700 и 650 грн. за тонну. Чтобы картофель был доставлен своевременно, необходимо в каждом хозяйстве на погрузку затратить не более чем 30 мин. Известно, что суточные запасы хозяйств составляют 12, 10 и 7 т, а на погрузку 1 т в каждом из них тратится 3, 5 и 4 мин. Определить, сколько картофеля надо завезти на рынок из каждого хозяйства, чтобы суммарная закупочная цена была минимальной.

Решение: Введем 3 независимые переменные: х1, х2, х3, где xj – количество тонн картофеля, планируемое к закупке в j-ом хозяйстве. Тогда целевая функция – суммарная закупочная цена примет вид:

.

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

Кроме того, очевидны условия неотрицательности: x1  0, x2  0, x3  0. Понятно, что основные ограничения можно упростить, оставляя самые «сильные» неравенства: .

Замечание: Несмотря на то, что в основной постановке задачи об оптимальном плане выпуска продукции шла речь о максимизации целевой функции, в данном примере мы хотим минимизировать Z, так как минимум затрат эквивалентен максимуму прибыли.

В. Задача о смесях

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

Итак, дано: n видов сырья, каждый из них содержит m видов интересующих нас элементов (веществ). Пусть aijколичество i-го элемента в единице j-го вида сырья, cj – стоимость единицы j-го вида сырья, dj – запас j-го вида сырья (j = 1, ... n). Обозначим через аi и ai соответственно наименьшее и наибольшее допустимые количества i-го элемента в смеси (i = 1, … m). Введем независимые переменные (x1x2, …, xn) =  – количество сырья j-го вида, планируемое использовать для составления смеси. Тогда соответствующая математическая модель имеет вид:

Модель содержит всего 2m основных ограничений-неравенств и n двухсторонних ограничений на переменные.

Пример 1.1.2. Экономически выгодный откорм животных предполагает, что в их дневном рационе будет кормовых единиц не менее 100, белка – не менее 2 кг, кальция – не менее 300 г, фосфора – не менее 150 г. Рацион состоит из 3-х видов кормов: А, В, С. В таблице приведены данные о концентрации необходимых веществ в кормах, а также цены кормов.

Вид корма

К-во кормовых

единиц (кг)

Концентрация веществ в кормах (г/кг):

Цена корма

(грн./кг)

белок

кальций

фосфор

А

0,9

80

1,4

3

0,5

В

0,8

70

1,8

4

0,7

С

0,6

90

1,2

6

0,4

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

Решение. Введем 3 независимые переменные: x1x2x3, где xj – количество кг каждого вида корма, планируемое для составления рациона. Тогда целевая функция (суммарная закупочная цена) примет вид:

Ограничения строятся из минимальных требований на дневной рацион и условий неотрицательности:

Понятно, что при записи ограничений данные приведены к единым единицам измерения (кг).

С. Задача о раскрое

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

Дано: На складе имеются заготовки с показателем s (длина, площадь и т. п.). Их надо разрезать на части с показателями s1s2, …, sm, причем требования на количество соответствующих частей заданы: b1, b2, …, bm. Надо составить план раскроя, минимизирующий суммарные отходы материала.

Пусть известны n технологий раскроя. Обозначим через xj количество заготовок, разрезаемых по j-ой технологии (j = 1, 2, …., n). Известны также показатели отходов для каждой технологии и количества требуемых частей каждого вида aij(i = 1, …, m, j = 1, …, n). Соответствующая математическая модель:

;

Мы получили задачу линейного целочисленного программирования.

Пример 1.1.3. На фабрике имеются рулоны ткани длиной 15 м. В магазин надо поставить отрезы длиной 5 м в количестве 22 шт., длиной 4 м в количестве 30 шт. и длиной 3 м в количестве 20 шт. Составить оптимальный план раскроя ткани.

Решение. В задачах подобного типа требуется определенная подготовка данных. Именно, выпишем все возможные технологии раскроя и занесем полученные результаты в таблицу:

№ технологии

Отрезов 5 м

Отрезов 4 м

Отрезов 3 м

Отходы

1

3

0

2

2

1

1

3

2

1

2

4

1

2

2

5

1

3

1

6

1

1

2

0

7

3

1

0

8

2

2

1

9

5

0

Понятно, что здесь мы рассматриваем самые «экономичные» в смысле минимума отходов технологии.

Введем независимые переменные: xj -количество рулонов, разрезаемых по j–ой технологии (j = 1, …, 9). Тогда целевая функция – суммарная величина отходов примет вид:

.

Ограничения составляются из условий выполнения плана по номенклатуре:

Требуется еще добавить условия неотрицательности и целочисленности:

xj ≥ 0, целые, j = 1, …, n.

D. Задача о назначениях

Имеются n работников (механизмов) и n работ, на которые надо назначить исполнителей так, чтобы каждый работник выполнял одну и только одну работу, причем при заданной производительности труда суммарный эффект был бы максимален. Пусть cij – производительность i-го работника при выполнении j-ой работы (i, j = 1, …, n). Введем переменные xij(i, j = 1, …, n) так:

.

Тогда соответствующая математическая модель имеет вид:

Соответствующий набор {} =  – оптимальный план назначений. Здесь мы имеем задачу линейного булевского программирования. (Пример построения и решения подобной задачи будет приведен в разделе 1.10).

Е. Планирование с помощью производственной функции

Пусть выпуск продукции на предприятии зависит от нескольких производственных факторов: (x1x2, …, xn) и зависимость такова:

,

где aj(j = 1, …, n) известны из эмпирических соображений. Пусть даны затраты cj, связанные с использованием единицы j-го фактора, и предельные суммарные затраты С. Требуется максимизировать объем выпуска. Имеем математическую модель:

,

Эквивалентная задача линейного программирования имеет вид:

где dj – затраты, связанные с ln xj (если их можно вычислить).