- •Содержание
- •Предисловие
- •Глава I. Начала линейного программирования
- •§1. Задача линейного программирования. Типичные задачи линейного программирования, их математические модели.
- •1.1 . Задача линейного программирования
- •1.2. Типичные злп и их математические модели
- •1.3. Упражнения.
- •§2. Общая злп. Канонический вид злп.
- •2.2. Канонический вид злп
- •§3. Теоретические основы решения злп. Геометрическая интерпретация злп. Идея аналитического решения
- •3.1. Теоретические основы решения злп
- •3.2. Геометрическая интерпретация злп
- •3.4. Идея аналитического решения злп
- •3.5. Теоретические основы решения злп (продолжение)
- •§4. Симплекс-метод решения злп
- •4.1. Алгоритм симплекс-метода
- •4.2. Симплекс-таблицы.
- •§5. Метод искусственного базиса
- •5.1. Суть метода искусственного базиса
- •Глава II. Двойственность и целочисленность в линейном программировании. Транспортная задача.
- •§1. Теория двойственности
- •1.1. Задача, приводящая к паре двойственных задач
- •1.2. Пара симметричных двойственных задач
- •1.3. Пара несимметричных двойственных задач
- •1.4. Теоремы двойственности
- •1.5. Упражнения.
- •§2. Элементы целочисленного программирования
- •2.1. Постановка и геометрическая интерпретация
- •2.2. Метод Гомори
- •2.3. Упражнения.
- •§3. Транспортная задача
- •3.1. Постановка и математическая модель транспортной задачи
- •3.2. Теоретические основы решения транспортной задачи
- •3.3. Алгоритм метода потенциалов.
- •3.3.1. Основные пункты алгоритма:
- •3.3.2. Построение первоначального опорного плана.
- •3.3.4. Переход к новому опорному плану (построение очередного опорного плана).
- •3.3.5. Метод наименьших затрат построения первоначального опорного плана.
- •3.4. Сведение задачи открытого типа к задаче закрытого типа
- •3.5. Упражнения.
- •Задание лп-4
- •Задание лп-5
- •Задание лп-6
- •1. Приводим задачу к каноническому виду.
- •Задание лп-4
- •Задание лп-5
- •Задание лп-6
2.3. Упражнения.
1) Решить геометрическим методом:
а) 4x1+x2min(max) б) 4x1+x2min(max)
2) Решить методом Гомори:
в) 3x12x2+x3min(max) д) 3x1+2x2+2x3min(max)
§3. Транспортная задача
3.1. Постановка и математическая модель транспортной задачи
Начнём с постановки транспортной задачи и её математической модели.
Имеется сеть поставщиков P1, P2, …, Pm некоторого однородного груза, и сеть потребителей П1, П2, …, Пn этого груза. Известны: запасы поставщиков a1, a2, …, am, соответственно; потребности потребителей b1, b2, …, bn, соответственно; стоимость cij перевозки единицы груза от i-го поставщика к j-му потребителю. Требуется составить такой план перевозок (то есть определить, кто, кому и в каком количестве должен отгрузить груз), чтобы запасы поставщиков были полностью использованы, потребности потребителей полностью были удовлетворены, и суммарная стоимость перевозок была минимальной.
Условия задачи обычно даются в следующей транспортной таблице:
bj ai |
b1 |
b2 |
… |
bj |
… |
bn |
a1 |
c11 |
c12 |
… |
c1j |
… |
c1n |
… |
… |
… |
… |
… |
… |
… |
ai |
ci1 |
ci2 |
… |
cij |
… |
cin |
… |
… |
… |
… |
… |
… |
… |
am |
cm1 |
cm2 |
… |
cmj |
… |
cmn |
К клетке, стоящей на пересечении строки ai и столбца bj, будем ссылаться как к клетке (i, j).
Пример 1.
-
Таблица 3.1
bj
ai
70
30
20
40
90
1
3
4
5
30
5
3
1
2
40
2
1
4
2
В таблице имеем m=3, n=4, a1=90, a2=30, a3=40 запасы поставщиков, b1=70, b2=30, b3=20, b4=40 потребности потребителей. Также, например, c12=3 означает, что перевозка единицы груза от первого поставщика ко второму потребителю обходится в 3 условные единицы, а, например, c33=4 означает, что перевозка единицы груза от третьего поставщика к третьему потребителю обходится в 4 условные единицы.
Составим математическую модель задачи.
Пусть
xij
количество груза, перевозимого от i-го
поставщика к j-му
потребителю. Так как cij
стоимость перевозки единицы груза от
i-го
поставщика к j-му
потребителю, то перевозки от i-го
поставщика к j-му
потребителю обойдутся в cijxij
условных единиц, а в сумме перевозки
обойдутся в c11x11+c12x12+…=
условных единиц. Таким образом,
целевая функция, которую необходимо
минимизировать (суммарная стоимость
перевозок должна быть минимальной):
min.
Далее, 1-й поставщик отгружает потребителям x11+x12+…+x1n единиц груза, и он должен отгрузить все свои запасы: x11+x12+…+x1n=a1. И, вообще, рассуждая относительно i-го поставщика, получаем уравнение xi1+xi2+…+xin=ai (i=1, 2, …, m).
Аналогично рассуждая по j-му потребителю (j=1, 2, …, n), получаем уравнения x1j+x2j+…+xmj=bj (j=1, 2, …, n).
Наконец, количество xij перевозимого груза не может быть отрицательным: xij0.
Таким образом, математическая модель транспортной задачи следующая:
min
(3.1)
Как видим, задача (3.1) это задача линейного программирования. Поэтому на неё распространяются все понятия общей задачи линейного программирования: базис, опорное решение и т.д. В частности, к ней можно применить теорию двойственности. Наконец, к ней можно применить симплекс-метод. Тем не менее, задача имеет свою специфику, заключающуюся в первую очередь в том, что её матрица ограничений состоит из 0 и 1, причём в каждом столбце имеется в точности по две 1. Поэтому естественно ожидать, что для её решения применим метод, более эффективный, чем симплекс-метод. Таким методом является метод потенциалов. Прежде, чем привести алгоритм этого метода, приведём некоторые необходимые теоретические сведения.
