Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ММО / методические указания по ММО.doc
Скачиваний:
59
Добавлен:
22.03.2015
Размер:
1.33 Mб
Скачать

2.5 Проверка опорного плана на оптимальность

  1. Для проверки на оптимальность необходимо сначала построить систему потенциалов. К транспортной таблице добавляем по строке и столбцу, которых записывают значения потенциалов. Значения потенциалов рассчитываются из условий ui+vi=cij , где cij стоимость перевозки ед. груза занятой клетки в i –той строке и j –том столбце.

Клетки таблицы, в которых стоят ненулевые перевозки, являются базисными. Их число должно равняться m + n - 1. Необходимо отметить также, что встречаются такие ситуации, когда количество базисных клеток меньше чем m + n - 1. В этом случае распределительная задача называется вырожденной. И следует в одной из свободных клеток поставить количество перевозок равное нулю.

Систему можно строить для невырожденного опорного плана. Такой план содержит m+n-1 занятых клеток, поэтому для него можно составить систему из m+n-1 линейных уравнений вида ui+vi=cij. Уравнений на одно меньше, чем неизвестных, поэтому одному неизвестному (обычно u1) придают нулевое значения. Остальные потенциалы определяются однозначно.

  1. Выполняем проверку условий оптимальности для незанятых клеток. Просматриваем строки и для каждой незанятой определяем dij=ui+vj-cij и если dij положительно, то в данной клетки нарушено условие оптимальности. Для таких клеток в нижнем левом углу записываем значение dij.

  2. Выбираем клетку, в которую нужно послать перевозку по максимальному значению dij .

  3. Построение цикла и определение величины перераспределения груза. Для этого выбранную клетку помечаем знаком «+» и соединяем ее с ближайшими занятыми клетками замкнутой ломаной линией. Эта линия называется циклом или прямоугольным контуром. Циклом в транспортной задаче называется несколько занятых клеток, соединённых замкнутой ломанной линией, которая в каждой клетке совершает поворот на 90°. Вершинам ,начиная от выбранной клетке, присваиваем поочередно знак «+» и «-». Из клеток, помеченных знаком «-», выбираем с наименьшим объемом груза ( x)и этот груз надо перераспределить

  4. В результате распределения строится новый опорный план и возвращаемся к пункту 1.

Пример

Оптовые базы (А1-А4) имеют товаров соответственно в количестве: 100, 250, 200, 300. Торговые предприятия (В1-В5) подали заявки соответственно: 200, 200, 100, 100, 250 . Стоимость перевозок от :

  • А1 к потребителям В1-В5 соответственно: 10, 7, 4 , 1 , 4

  • А2 к потребителям В1-В5 соответственно: 2, 7, 10, 6,11

  • А3 к потребителям В1-В5 соответственно: 8, 5, 3, 2, 2

  • А4 к потребителям В1-В5 соответственно: 11, 8,12,16,13

Матрица планирования

Пункты назначения

Запасы

Ai

В1

В2

В3

В4

В5

Пункты отправл.

vj

ui

8

12

13

13

A1

-12

10

7

4

1

100

4

100

A2

-1

2

200

7

50

10

6

11

250

A3

-11

8

5

3

2

0

2

200

200

A4

0

11

8

150

12

100

16

13

50

300

Заявки

200

200

100

100

250

850

  1. Строим начальный опорный план методом наименьших стоимостей. Клетка A1 В4 имеет наименьший тариф и ей направляем весь груз от A1. Заявки потребителя В4 удовлетворены полностью и от поставщика A1 груз вывезен полностью. Столбец В4 и строку A1 исключается из рассмотрения. Далее наименьший тариф в клетке A2 В1 и A3 В5. Заполняем любую например A2 В1.. В эту клетку направляем груз от поставщика A2 и полностью удовлетворяем потребности потребителя В1. Столбец В1 исключаем из рассмотрения и т.д. Получаем начальный опорный план.

  2. Строим систему потенциалов для занятых клеток. Нулевое значение потенциала ui присваиваем строчке с наиболее заполненными клетками A4.Потом однозначно определяем остальные потенциалы из уравнения ui+vi=cij. Кроме строки A2 и столбца В4. Наш план вырожден т.к. не выполняется условия - занятых клеток д.б. m+n-1 т.е. 8 , а у нас 7. Вводим фиктивную клетку с минимальным тарифом и нулевым грузом A3 В4 и для нее определим потенциал столбика В4. А далее и строки А1.

Считаем суммарную стоимость перевозок

m n

F(X)=  Сij xij =1*100+2*200+7*50+2*200+8*150+12*100+13*50=4300

I=1 j=1

  1. Определяем условие оптимальности для незанятых клеток по уравнению dij=ui+vj-cij, и д.б. dij<0, Для строки А1, А3,,А4 это условие удовлетворяется. Для клеток А2В3 d23=1, А2В4 d24=6, А2В35 d25=1.

  2. Выбираем клетку в которую необходимо послать перевозку по максимальному положительному значению dij ( клетка А2В4). Строим для нее прямоугольный контур (цикл) по занятым клеткам (А2В4 - А3В4 (фиктивно занятая клетка) – А3В5 – А4В5 – А4В2 – А2В2 - А2В4). В выбранной клетке ставим «+», во всех остальных вершинах контура ставим знаки «-», «+» , чередуя. В вершинах, где стоят «-» выбираем минимальное значение xij. Это будет клетка А3В4. Следовательно, эту клетку надо сделать не занятой, а ее груз перераспределить, добавляя к клеткам с «+» и вычитая из клеток с «-». В нашем случае груз равен нулю и только перевозка с А3В4 переместится на А2В4. В остальных вершинах ничего не изменится т.к. прибавляем и вычитаем ноль. Далее возвращаемся к пункту 2.

Литература

  1. Фомин Г.П. Методы и модели линейного программирования коммерческой деятельности: Учеб. пособие. – М.: Финансы и статистика, 2000

  2. Таха , Хэмди А. Введение в исследование операций , 6-е издание : Пер. с англ.- М.: Издательский дом «Вильямс», 2001 – 912 с.

  3. Глухов В.В., Медников М.Д., Коробко С.Б. Экономико-математические методы и модели в менеджменте : Учебное пособие. 2-е издание. СПб.: Изд-во СПбГТУ,2000,203с.

Соседние файлы в папке ММО