Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Элементы теории графов




Транспортная задача.

Двойственные задачи линейного программирования.

ПРЯМАЯ ДВОЙСТВЕННАЯ
Система ограничений: Ах=B xi ≥0 Целевая функция: L=Cx → max Система ограничений: ATu=CT ui ≥0 Целевая функция: L=BTu → min

 

Существуют частные типы задач линейного программирования, которые в силу особой своей структуры, допускают решение более простыми методами. Например, транспортная задача. Она ставится следующим образом: имеются n пунктов отправления (ПО) A1, A2,… An-1, An, в которых сосредоточены запасы каких-то однородных грузов в количестве a1, a2,… an-1, an единиц. Имеются m пунктов назначения (ПН) B1, B2,… Bn-1, Bn, подавших заявки соответственно на b1, b2,… bn-1, bn единиц груза. Сумма всех заявок равна сумме всех запасов.

Известны стоимости перевозки единицы груза от каждого пункта отправления до каждого пункта назначения. Представим их в виде прямоугольной матрицы:

Считается, что стоимость перевозки нескольких единиц груза пропорциональна их числу.

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

Обозначим xij -количество единиц груза, отправляемого из Ai в Bj Совокупность (xij) будем называть «планом перевозок» или решением, а сами величины «перевозками».

Составим ОЗЛП.

1. Суммарное количество груза, направляемого из каждого ПО во все ПН, должно быть равно запасу груза в данном пункте:

2. Суммарное количество груза, доставляемого в каждый ПН из всех ПО, должно быть равно заявке, поданной данным пунктом:

3. Суммарная стоимость всех перевозок должна быть минимальной:

То, что все коэффициенты в условиях-равенствах равны 1, позволяет решать задачу очень простыми способами.

Число линейно-независимых уравнений = m+n-1, общее число переменных = mn, число базисных переменных = m+n-1, а число свободных k=mn-(m+n-1)=(m-1)(n-1)

Так как оптимальное решение достигается в одной из вершин ОДР, то по крайней мере k перевозок должны быть равны нулю. Допустимый план будем называть опорным, если в нем отличны от нуля не более m+n-1 базисных перевозок.

Представим транспортную задачу в виде некоторой таблицы, называемой транспортной.

  B1 B2 Bn  
A1 c11 c12 c1n a1
A2 c21 c22 c2n a2
Am cm1 cm2 cmn am
  b1 b2 bn  

МЕТОД СЕВЕРО-ЗАПАДНОГО УГЛА

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

ПРИМЕР 2.6.

  B1 B2 B3 B4 ai остаток
A1 1 3 3 5 7 2 1 10 7 2 0
A2 2 4 2 8 3 7 15 7 0
A3 6 5 4 1 7 7 0
bj 3 5 10 14 32  
  0 0 8 0 7 0    

Действуя описанным способом, мы получаем ступенчатую фигуру. В процессе решения получили 6 базисных клеток. Так как m+n-1= 3+4-1=6, то план невырожденный. Его можно принять за опорный.

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

МЕТОД МИНИМАЛЬНОГО ЭЛЕМЕНТА.

Распределение груза в этом методе начинается с одной из вершин минимальной стоимости. Также при каждом распределении необходимо максимально удовлетворить заявки выбранного потребителя. Очередное распределение выбирается из условия минимальной стоимости перевозок.

ПРИМЕР 2.7.

  B1 B2 B3 B4 ai остаток
A1 1 3 7 1 10 10 0
A2 2 3 4 5 2 7 3 15 8 5 0
A3 6 5 4 3 1 4 7 3 0
bj 3 5 10 14 32  
остаток 0 0 7 0 4 0    

 

Чтобы улучшить решение, следует перейти к другому плану. Самый простой способ – метод Жордана-Гаусса. Он заключается в целенаправленном переборе планов. Какую клетку выбрать, чтобы переход к новому решению привел к уменьшению значения целевой функции?

Рассмотрим произвольную свободную клетку. Однозначным образом можно выбрать замкнутую цепочку, называемую циклом, состоящую из вертикальных и горизонтальных звеньев, одной из вершин которой является выбранная свободная клетка, а остальными вершинами – занятые клетки. Начиная со свободной клетки (она – первая), пометим все нечетные вершины знаком «+», а четные - знаком «-». Переброской перевозок по циклу назовем увеличение перевозок в положительных вершинах и уменьшение в отрицательных. Перебросить по циклу можно не более чем минимум в отрицательных вершинах цикла.

ПРИМЕР 2.6.

Выберем в рассмотренном выше примере свободную клетку (3,2). Определим замкнутый цикл, последовательно расставляя знаки «+» и «-».

  B1 B2 B3 B4 ai
A1 1 3 3 - 5 7 + 2 1 10
A2 2 4 2 - 8 3 + 7 15
A3 6 5 + 4 1 - 7 7
bj 3 5 10 14 32

Минимумом в отрицательных вершинах является число 5. Его и занесем в клетку (3,2). Далее пройдем по всему циклу, меняя значения перевозок. Получим новый базисный план:

  B1 B2 B3 B4 ai
A1 1 3 3 7 7 1 10
A2 2 4 2 3 3 12 15
A3 6 5 5 4 1 2 7
bj 3 5 10 14 32

Ценой цикла будем считать разность между суммой стоимостей перевозок в положительных вершинах цикла и суммой перевозок в отрицательных вершинах. Если цена цикла < 0, то выгодно перебросить перевозки по этому циклу. Суммарные перевозки при этом не изменятся. Цена цикла говорит, на сколько изменится суммарная стоимость перевозок при переброске по циклу 1 единицы груза. Например, в рассмотренном примере цена цикла d32=7+3+5-(1+2+3)=9>0. Следовательно, переброска 1 единицы груза по этому циклу приводит к увеличению суммарной стоимости перевозок на 9. В примере по циклу было переброшено 5 единиц, следовательно, затраты на перевозки увеличились на 45.

МЕТОД ЖОРДАНА-ГАУССА.

Метод заключается в переборе дешевых клеток и просчете цены их цикла. Если цена отрицательна, то следует перебросить по этому циклу столько единиц груза, сколько возможно (минимум в отрицательных вершинах). Если существует несколько свободных клеток с отрицательной ценой цикла, то лучше выбрать ту, для которой она максимальна по модулю. Когда не останется ни одной свободной клетки с отрицательной ценой цикла, тогда найденный план является оптимальным.

 

  B1 B2 B3 B4
A1 1 3 3 5 - 7 2 + 1
A2 2 4 2 8 + 3 7 -
A3 6 5 4 1 7

d21=2-1+7-2=6>0

d31=6-1+7-2+3-1=12>0

d22=4-3+7-2=4>0

d32=9>0

d33=4-2+3-1=4>0

d14=1-3+2-7=- 4<0

Следовательно, выгодным является только цикл клетки (1,4). По нему можно перебросить min(2,7) =2 единицы груза. Получим следующий план.

  B1 B2 B3 B4
A1 1 3 - 3 5 7 1 2 +
A2 + 2 4 2 10 3 5 -
A3 6 5 4 1 7

d21=2-1+1-3=-1<0

d22=4-3+1-3=-1<0

Для всех остальных циклов цена >0

Выберем клетку (2,1)

min(3,5) =3

  B1 B2 B3 B4
A1 1 3 5 7 1 5
A2 2 3 4 2 10 3 2
A3 6 5 4 1 7

d22=4-3+1-3=-1<0

Для всех остальных циклов цена >0

min(2,5) =2

  B1 B2 B3 B4
A1 1 3 3 7 1 7
A2 2 3 4 2 2 10 3
A3 6 5 4 1 7

Для всех циклов цена >0, следовательно план оптимальный

Ответ: x12=3; x14=7; x21=3; x23=10; x22=2; x34=7; L=3∙3+7∙1+3∙2+10∙2+2∙4+7∙1=57

 

МЕТОД ПОТЕНЦИАЛОВ.

Обозначим переменные задачи, двойственной к транспортной через - ui и vj Их называют потенциалами пунктов отправления и пунктов назначения соответственно.

Двойственная задача заключается в нахождении потенциалов ui и vj, удовлетворяющих ограничениям vj - ui ≤ с ij и максимизирующих функцию цели

КРИТЕРИЙ ОПТИМАЛЬНОСТИ. Для того чтобы план перевозок в транспортной задаче был оптимален, необходимо и достаточно, чтобы нашлись потенциалы ui (пункта отправления) и vj (пункта назначения) такие, что:

vj - ui = с ij , если хij>0

vj - ui ≤ с ij , если хij=0

ЭКОНОМИЧЕСКИЙ СМЫСЛ: vj можно рассматривать как цену груза в ПН, ui – цену груза в ПО. Тогда оптимальным будет план, в котором перевозки осуществляются по путям, где разность цен равна цене перевозки единицы груза.

Алгоритм.

1. Выберем любой базисный план.

2. Составим систему уравнений vj - ui = с ij для базисных переменных

3. Так как система содержит m+n-1 уравнение и m+n неизвестных, то одну из них можно задать произвольно (например, =0). После этого определим остальные потенциалы.

4. Для каждой из свободных клеток вычислим величины aij=vj-ui

5. Если все aij≤ сij то план оптимален. Задача решена.

6. В противном случае рассмотрим все клетки, для которых aij> сij. Выберем свободную клетку, для которой реализуется max(aij-cij), введем ее в базис, образуем цикл и построим новое базисное решение. Переходим к п.2

ПРИМЕР 2.7.

  B1 B2 B3 B4
A1 1 3 3 5 7 2 1
A2 2 4 2 8 3 7
A3 6 5 4 1 7

Составим разность потенциалов для базисных клеток:

v1-u1=1

v2-u1=3

v3-u1=7

v3-u2=2

v4-u2=3

v4-u3=1

Положим u1=0 и найдем остальные потенциалы

  B1 B2 B3 B4 ui
A1 1 3 3 5 7 2 8) 1 0
A2 -4) 2 -2) 4 2 8 3 7 5
A3 -6) 6 -4) 5 0 4 1 7 7
vj 1 3 7 8  

a14> с14, следовательно построим цикл для клетки (1,4) и перебросим по нему максимально возможные перевозки.

  B1 B2 B3 B4 ui
A1 1 3 - 3 5 0) 7 1 2 + 0
A2 3) + 2 5) 4 2 10 3 5 - -2
A3 1) 6 3) 5 0) 4 1 7 0
vj 1 3 0 1    

a21> с21

a22> с22

Выберем клетку (2,1)

min(3,5) =3

  B1 B2 B3 B4 ui
A1 0) 1 3 5 0) 7 1 5 0
A2 2 3 5) 4 2 10 3 2 -2
A3 0) 6 3) 5 0) 4 1 7 0
vj 0 3 0 1  

a22> с22

min(2,5) =2

  B1 B2 B3 B4 ui
A1 1) 1 3 3 1) 7 1 7 0
A2 2 3 4 2 2 10 2) 3 -1
A3 1) 6 3) 5 1) 4 1 7 0
vj 1 3 1 1  

Для всех клеток aij≤ сij , следовательно план оптимальный

Ответ: x12=3; x14=7; x21=3; x23=10; x22=2; x34=7; L=3∙3+7∙1+3∙2+10∙2+2∙4+7∙1=57

 

ПРИМЕЧАНИЕ. Если условие равенства запасов груза в ПО и суммарной потребности в грузе ПН нарушено, то

1) если всех заявок удовлетворить нельзя, то вводится фиктивный ПО Аm+1, стоимости перевозок из которого равны 0;

2) если существует избыток груза, то вводится фиктивный ПН Bn+1, стоимости перевозок в который равны 0.

Раздел III. ГРАФОВЫЕ МОДЕЛИ.

G: d→[i,j]
Неориентированным графом называется тройка (I,D,G), в которой I – множество вершин, D – множество ребер и G – отображение, которое каждому ребру ставит в соответствие неупорядоченную пару вершин

 

Если каждому ребру соответствует упорядоченная пара вершин , то граф называется ориентированным графом , а ребро называется дугой и обозначается (i,j).

ПРИМЕР 3.1.

 

 

а) неориентированный граф б) ориентированный граф

Путь – это упорядоченная последовательность дуг, начало каждой из которых совпадает с концом предыдущей. Контур – путь, у которого начальная вершина совпадает с конечной. Для неориентированного графа аналогом понятия путь является – цепь, а контура - цикл.

Простой цикл – цикл, в котором любая пара вершин соединена не более чем одним ребром. Гамильтонов цикл – простой цикл, проходящий через все вершины графа.

ПРИМЕР 3.2.

 

а) неориентированный граф б) варианты Гамильтонова цикла

Связный граф – граф, у которого любая пара вершин может быть соединена цепью (для неориентированного графа) или путем (для ориентированного графа)

Дерево – неориентированный граф без циклов.

Остов графа – подграф неориентированного графа, являющийся деревом.

ПРИМЕР 3.3. Для предложенного графа существует 31 вариант остовов.

               
   
       

 


а) граф б) варианты остова

 

Если каждой вершине сопоставить число, то оно будет называться интенсивностью вершины. Если на множестве дуг задать числовую функцию, то каждое ребро приобретет вес.

ПРИМЕР 3.4. Автомобилисту необходимо проехать из п.А в п.В.

10 0

А 7 В

4 2

 

 

Ориентированный связный граф, вершинам которого сопоставлены числа (интенсивности, пропускные способности) или дугам которого сопоставлены числа (стоимости, протяженности, пропускные способности), принято называть сетью.

Потоком на сети называется совокупность величин, заданных на множестве дуг, { xd }:

,

где – множество дуг, исходящих из вершины i, а – множество дуг, входящих в нее;
bi – интенсивность вершины i.

Величина xd называется значением потока по дуге d и интерпретируется как количество продукта, пропускаемое по данной дуге

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

 

ЗАДАЧИ ОПТИМИЗАЦИИ НА СЕТИ.

1. Об оптимальном распределении грузопотоков на сети (транспортная задача)

2. О кратчайшем пути между двумя пунктами (вершинами.)

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

4. Об оптимальном пути для коммивояжера (оптимальный Гамильтонов цикл)

5. О максимальном потоке на сети.

 




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


Дата добавления: 2014-01-20; Просмотров: 354; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.29 сек.