Задания для самостоятельной работы

Федеральное государственное образовательное бюджетное учреждение

Высшего образования

«ФИНАН

«ФИНАНСОВЫЙ УНИВЕРСИТЕТ ПРИ ПРАВИТЕЛЬСТВЕ

РОССИЙСКОЙ ФЕДЕРАЦИИ»

Департамент анализа данных, принятия решений и финансовых технологий

 

И.Х.Утакаева

 

Решение задач линейного программирования (Транспортная задача)

 

Учебное пособие для проведения

семинара  по компьютерному практикуму

 

Для бакалавров направления 38.03.01 «Экономика»

 

Электронное издание

 

 

Москва 2018

Постановка транспортной задачи

На m станциях отправления A1, A2, … , Am сосредоточено соответственно a1, a2, … am единиц однородного груза. Груз следует перевезти в n пунктов назначения B1, B2, … , Bn, причём в каждый из пунктов нужно завести соответственно b1, b2, … , bn единиц груза. Стоимость перевозки единицы груза из пункта Ai( )в пункт Bj( )задана и равна cij( , ). Считается, что общий запас груза на всех станциях отправления равен суммарной потребности груза на всех станциях назначения:

                   (1)

Требуется составить такой план перевозок, при котором общая стоимость всех перевозок окажется минимальной.

Все данные сведём в табл. 1 (матрица данных).

Таблица 1

Пункты назнач. Пункты отправ.     B1     B2     …     Bj     …     Bn     Запасы
A1 c11 c12 c1j c1n a1
Ai ci1 ci2 cij cin ai
Am cm1 cm2 cmj cmn am
Потребности b1 b2 bj bn

 

Обозначим через xij количество единиц груза, предназначенного к отправке из пункта Ai в пункт Bj. Тогда количество груза, которое планируется к доставке в пункт Bj из всех пунктов отправления, составляет

.

Так как потребность в грузе пункта назначения Bj составляет bj единиц, то должно быть выполнено равенство

.

В развёрнутом виде последние равенства представляют собой систему n линейных уравнений с m неизвестными:

                      (2)

С другой стороны, общее количество груза, отправленного из пункта Ai во все пункты Bj, составляет сумму

.

Таким образом, аналогично системе уравнений (2) получаем систему из m линейных уравнений с n неизвестными:

                    (3)

Полученные системы уравнений (2) м (3) объединим и запишем в виде системы из n + m линейных уравнений с n×m неизвестными:

                           (4)

Если величины xij свести в таблицу (табл. 2), то получим матрицу перевозок, по которой соотношения (4) легко проверяются: сумма элементов xij, расположенных в i–й строке равна запасу ai на пункте Ai; сумма элементов xij из столбца j равна потребности bj пункта Bj.

Таблица 2

Пункты назнач. Пункты отправ.     B1     B2     …     Bj     …     Bn     Запасы
A1 c11 x11 c12 x12 c1j x1j c1n x1n a1
c21 x21 c22 x22 c2j x2j c2n x2n a2
Ai
ci1 xi1` ci2 xi2 cij xij cin xin ai
Am
Потребности cm1 xm1 cm2 xm2 cmj xmj cmn xmn am

 

 

Из условий задачи следует, что стоимость F всех перевозок равна сумме

(5)

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

«Среди всех неотрицательных решений системы уравнений (4) найти такое, при котором форма F достигает наименьшего значения».

Сформулированная задача и является транспортной задачей по определению критерия стоимости перевозок.

Задание 1.С 3-х баз требуется доставить в магазины однородный товар. Пусть на базе А1 имеется 50 единиц груза, на базе А2 – 40 единиц, на базе А3 – 20 единиц. Указанный товар нужно отгрузить 4-м потребителям: В1, В2, В3, В4, потребности которых составляют соответственно 35, 25, 30, 25 единиц товара. Стоимость перевозки от базы до потребителей представлена в таблице:

Таблица 3

  В1 В2 В3 В4
А1 3 2 4 6
А2 2 3 1 2
А3 3 2 7 4

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

Необходимо создать экранную форму для ввода условия задачи.

 

 

Рисунок 1

 

В представленной форме каждой переменной и каждому коэффициенту задачи ставится в соответствие ячейкаMicrosoftExcel:

ü переменным задачи соответствуют ячейки E17:H19;

ü коэффициентам ЦФ соответствуют ячейки E26:H28;

ü левым частям системы ограничений задачи соответствуют ячейки I17:I19 и  E20:H20;

ü правым частям системы ограничений соответствуют ячейки K17:K19 и E22:H22.

Далее осуществляется ввод исходных данных в экранную форму: тарифы на перевозки, запасы, потребности.

 

Рисунок 2

Левые части системы ограничений транспортной задачи

представляют собой суммы ячеек по каждой строке и каждому столбцу, отведенных для значений переменных задачи (E17:H19):

ü I17 – ограничение 1;

ü I18 – ограничение 2;

ü I19 – ограничение 3;

ü E20– ограничение 4;

ü F20– ограничение 5;

ü G20– ограничение 6;

ü H20– ограничение 7.

Используя обозначения соответствующих ячеек в Excel, формулу для системы ограничений можно записать как сумму ячеек каждой строки и каждого столбца, отведенных для переменных задачи (E17:H19) следующим образом:

ü поместить курсор в ячейку I17;

ü нажать кнопку «fх» и вызвать окно «Вставка функции»;

ü выбрать в поле «Категория» категорию «Математические»;

ü в поле «Выберите функцию» выбрать функцию «СУММ» и нажать кнопку «ОК»;

ü в появившемся окне «Аргументы функции», в строку «Число1» ввести выражение E$17:H$17.

Рисунок 3

После ввода ячеек в строки «Число1»  в окне «СУММ» появятся числовые значения (см. рис.3), а в экранной форме в ячейке I17 появится текущее значение, вычисленное по введенной формуле, то есть 0. Для ячеек I18 - ограничение 2 и I19 - ограничение 3 введенную формулу в I17 можно протянуть по строкам.

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

ü поместить курсор в ячейку E20;

ü нажать кнопку «fх» и вызвать окно «Вставка функции»;

ü выбрать в поле «Категория» категорию «Математические»;

ü в поле «Выберите функцию» выбрать функцию «СУММ» и нажать кнопку «ОК»;

ü в появившемся окне «Аргументы функции», в строку «Число1» ввести выражение E$17:Е$19.

Рисунок 4

После ввода ячеек в строки «Число1»  в окне «СУММ» появятся числовые значения (см. рис.4), а в экранной форме в ячейке I20 появится текущее значение, вычисленное по введенной формуле, то есть 0. Для ячеек F20– ограничение 5, G20– ограничение 6, H20– ограничение 7 введенную формулу в Е20 можно также протянуть по столбцам.

В ячейку D34, в которой будет отображаться значение ЦФ, необходимо ввести формулу

,

по которой это значение будет рассчитано. 

Формулу для расчета ЦФ можно записать  как сумму произведений каждой из ячеек, отведенных для переменных задачи (E17:H19), на соответствующие ячейки, отведенные для тарифов - коэффициентов ЦФ (E26:H28) следующим образом:

ü поместить курсор в ячейку D34;

ü нажать кнопку «fх» и вызвать окно «Вставка функции»;

ü выбрать в поле «Категория» категорию «Математические»;

ü в поле «Выберите функцию» выбрать функцию «СУММПРОИЗВ» и нажать кнопку «ОК»;

ü в появившемся окне «СУММПРОИЗВ», в строку «Массив 1» ввести выражение E$17:H$19, а в строку «Массив 2» – выражение E26:H28.

После ввода ячеек в строки «Массив 1» и «Массив 2» в окне «СУММПРОИЗВ» появятся числовые значения введенных массивов (см. рис.5), а в экранной форме в ячейке D34 появится текущее значение, вычисленное по введенной формуле, то есть 0.

 

 

Рисунок 5

Формулы для экранной формы транспортной задачи представлены в таблице 3.

                                  Таблица 3

Объект математической модели     Выражение в Excel
Переменные задачи E17:H19
Формула в целевой ячейке E13 =СУММПРОИЗВ(E17:H19; E26:H28)
Ограничения по строкамв ячейках I17 I18 I19   =СУММ(E17:H17) =СУММ(E18:H18) =СУММ(E19:H19)

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

ü поставить курсор в поле «Оптимизировать целевую функцию»;

ü ввести адрес целевой ячейки $D$34 или сделать одно нажатие левой клавиши мыши на целевую ячейку в экранной форме – это будет равносильно вводу адреса с клавиатуры;

ü введите направление оптимизации ЦФ, щелкнув один раз левой клавишей мыши по селекторной кнопке «Минимум».

В окно «Поиск решения» в поле «Изменяя ячейки переменных» впишите адреса $E$17:$H$19. Необходимые адреса соответствующих ячеек можно вносить в поле «Изменяя ячейки» и автоматически путем выделения мышью соответствующих ячеек переменных непосредственно в экранной форме.

Рисунок 6

В поле «В соответствие с ограничениями» выбираем кнопку «Добавить»,после чего появится окно «Добавление ограничения».

Рисунок 7

В поле «Ссылка на ячейку» введите адрес ячейки системы ограничений $I$17. Это можно сделать как с клавиатуры, так и путем выделения мышью всех ячеек переменных непосредственно в экранной форме.В поле знака откройте список предлагаемых знаков и выберите знак «=». В поле «Ограничение» ввести адрес ячейки $K$17.

Рисунок 8

Аналогично следует ввестивсе оставшиеся ограничения по строкам: $I$18=$K$18

$I$19=$K$19

по столбцам:

$E$20=$E$22

$F$20=$F$22

$G$20=$G$22

$H$20=$H$22

после чего подтвердите ввод всех перечисленных выше условий нажатием кнопки «OK».

Окно «Поиск решения» после ввода всех параметров задачи представлено ниже. Если при вводе условия задачи возникает необходимость в изменении или удалении внесенных ограничений или граничных условий, то это делают, используя кнопки «Изменить» или «Удалить».

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

После ввода всего условия задачи следует запустить «Поиск решения» на решение нажатием кнопки «Найти решение». В появившемся окне «Результаты поиска решения» следует выбрать «Сохранить найденное решение» и нажать «ОК».

 

Рисунок 9

 

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

Рисунок 10

Задания для самостоятельной работы

Задание 1.Компания «Гранит-холдинг» производит добычу строительной щебенки и имеет 3 карьера. Запасы щебенки на карьерах соответственно равны 800, 900 и 600 тыс. м3. Четыре строительные организации, проводящие строительные работы на разных объектах этого же региона дали заказ на поставку соответственно 300, 600, 650 и 500 тыс. м3 щебенки. Стоимость перевозки 1 тыс. м3 щебенки с каждого карьера на каждый объект приведены в таблице:

                                  Таблица 4

Карьер

Строительный объект

1 2 3 4
1 8 4 1 7
2 3 а 7 3
3 31 5 11 8

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

Значение неизвестного параметраавзять равным номеру варианта.

Задание 2.Металлообрабатывающему цехунеобходимо исполнить срочный заказ на производство деталей. Каждая деталь обрабатывается на четырех станках С1, С2, С3 и С4. На каждом станке может работать любой из четырех рабочих Р1, Р2, Р3, Р4, однако, каждый из них имеет на каждом станке различный процент брака. Из документации ОТК имеются данные о проценте брака каждого рабочего на каждом станке.

Необходимо так распределить рабочих по станкам, чтобы суммарный процент брака (который равен сумме процентов брака всех 4-х рабочих) был минимален. Чему равен этот процент?

 

Таблица 5

Рабочие

Станки

С1 С2 С3 С4
Р1 2,3 1,9+а/20 2,2 2,7
Р2 1,8+а/20 2,2 2,0 1,8+а/20
Р3 2,5 2,0 2,2 3,0
Р4 2,0 2,4 2,4–а/20 2,8

Значение неизвестного параметраавзять равным номеру варианта.

Обозначим за xij, i=1,2,3,4; j=1,2,3,4 - переменные, которые принимают значения 1, если i-й рабочий работает на j-м станке. Если данное условие не выполняется, то xij = 0. Целевая функция есть:

2,3x11+(1,9+а/20)x12+2,2x13+2,7x14+(1,8+а/20)x21+2,2x22+2x23+(1,8+а/20)x24+

+2,5x31+2x32+ 2,2x33+ 3x34+ 2x41+ 2,4x42+ (2,4–а/20)x43+ 2,8x44→ min.

Вводим ограничения. Каждый рабочий может работать только на одном станке, то есть

x11+ x12+ x13+x14=1;

x21+ x22+ x23+x24=1;

x31+ x32+ x33+x34=1;

x41+ x42+ x43+x44=1.

Кроме этого, каждый станок обслуживает только один рабочий:

x11+ x21+ x31+x41=1;

x12+ x22+ x32+x42=1;

x13+ x23+ x33+x43=1;

x14+ x24+ x34+x44=1.

Кроме того, все переменные должны быть целыми и неотрицательными: xij ≥0, xij – целые.

 


Дата добавления: 2018-05-12; просмотров: 762; Мы поможем в написании вашей работы!

Поделиться с друзьями:




Мы поможем в написании ваших работ!