Просмотр содержимого документа
«Тема: Транспортная задача линейного программирования»
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ
ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ»
( Н И У « Б е л Г У » )
ИНСТИТУТ ИНЖЕНЕРНЫХ И ЦИФРОВЫХ ТЕХНОЛОГИЙ
КАФЕДРА ПРИКЛАДНОЙ ИНФОРМАТИКИ И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
Исследование операций и методы оптимизации
Лабораторная работа №5
Тема: Транспортная задача линейного программирования
студентки очного отделения
4 курса, 12001504 группы,
Марко С. Тангуила
Проверил:
Профессор
Черноморец Андрей Алексеевич
Белгород, 2018 год
Цель работы
Получение навыков самостоятельной алгоритмической и программной реализации на компьютерной технике решения транспортной задачи линейного программирования в MatLab.
Общая постановка задачи
Построить транспортную задачу линейного программирования и решить ее с помощью функции linprog в среде Matlab для указанной в варианте оптимизационной задачи.
Ход Работы
На трех хлебокомбинатах ежедневно производится 110, 190 и 90 т муки. Эта мука потребляется четырьмя хлебозаводами, ежедневные потребности которых равны соответственно 80, 60, 170 и 80 т. Тарифы перевозок 1 т муки с хлебокомбинатов к каждому из хлебозаводов задаются матрицей:

Составить такой план доставки муки, при котором общая стоимость перевозок является минимальной.
Результат выполнения работы
Обозначим номера хлебокомбинатов через i, а номера хлебозаводов через j. Количество муки, привезенного из хлебокомбината i на хлебозавод j – xij. Тогда должны выполнятся следующие условия:

В первых трех строках системы ограничений содержатся ограничения на количество муки, производимой каждым хлебокомбинатом. В 4-7 строках – на ежедневные потребности хлебозаводов.
Минимизируемся функция затрат на перевозку муки имеет вид:

Данная задача сбалансирована:

Текст решения в MatLab:
function lab5(x)
f= [8 1 9 7 4 6 2 12 3 5 8 9];
Aeq=[1 1 1 1 0 0 0 0 0 0 0 0;
0 0 0 0 1 1 1 1 0 0 0 0;
0 0 0 0 0 0 0 0 1 1 1 1;
1 0 0 0 1 0 0 0 1 0 0 0;
0 1 0 0 0 1 0 0 0 1 0 0;
0 0 1 0 0 0 1 0 0 0 1 0;
0 0 0 1 0 0 0 1 0 0 0 1];
beq=[110 190 90 80 60 170 80];
lb=zeros(12,1);
[x,fval]=linprog(f,[],[],Aeq,beq,lb);
x
fval
Результат выполнения:

В итоге было получено, что наименьшие расходы на перевозку муки будут составлять F=1280 руб. при следующих значениях переменных:


