Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Построение системы потенциалов






Рассмотрим алгоритм метода потенциалов и одновременно проиллюстрируем его применение на опорном плане, полученном в
табл. 8.5. Для этого к таблице добавим строку и столбец, в которых записывают значения потенциалов (в результате получим макет табл. 8.6).

 

 

Таблица 8.6

Поставщики U Потребители Запасы
B1 B2 B3 B4 B5  
А1 -12   10   7   4   1   4 a2
U1 -   -   -   100   -    
А2 -1   2 - 7   10 + 6   11 a2
U2 200   50   (1)   (6)   (1)    
А3 -11   8   5   3 - 2 + 2 a1
U3 -   -   -       200    
А4     11 + 8   12   16 - 13 a2
U4 -   150   100   -   50    
спрос                        
V   V1=   V2=   V3=   V4=   V5=    

 

Систему потенциалов можно построить только для невырожденного опорного плана. Такой план содержит m+n-1 занятых клеток, поэтому для него можно составить систему из m+n-1 линейно независимых уравнений вида (8.28) с m+n неизвестными. Уравнений на одно меньше, чем неизвестных, поэтому система является неопределенной и одному неизвестному придают нулевое значение. После этого остальные потенциалы определяются однозначно. В случае вырожденности опорного плана его дополняют до невырожденного фиктивно нулевыми элементами.

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

Рассмотрим пример, представленный табл. 8.6. С целью наиболее эффективного использования произвольно заданного нулевого потенциала выбирается строка, которая содержит наибольшее количество занятых клеток (строка А 4). Полагаем U 4= 0. В строке А 4 три занятых клетки (А 4 В 2, А 4 В 3 и А 4 В 5), которые связывают соответственно потенциал U 4 с потенциалами V 2, V 3, V 5. Определим эти потенциалы: V 2= С 42U 4 = 8- 0 = 8; V 3= С 43V 4 = 12- 0=12; V 5= С 45U 4 = 13- 0=13.

С помощью потенциала U 4 определить еще какой-нибудь неизвестный потенциал невозможно, поэтому как либо помечаем его, например, символом *. Теперь поочередно просматриваем столбцы В 2, B 3 и B 5, для которых потенциалы уже определены. В столбце В 2 имеется две занятые клетки (А 2 В 2 и А 4 В 2), которые связывают потенциал V 2 с потенциалами U 2 и U 4, потенциал U 4 уже определен. Переходим к клетке А 2 В 2 и с помощью С 22 определим неизвестный потенциал: U 2 = C 22 — V 2 =7-8 = -1. Помечаем потенциал V 2, знаком * и переходим к столбцу B 3. В этом столбце нет занятых клеток, которые бы связывали V 3 с неизвестными потенциалами строк.

Данный процесс продолжается для остальных строк и столбцов. Однако после его прерывания (невозможно определить еще какие-либо неизвестные потенциалы) остались неопределенными потенциалы U1 и V4. Это произошло потому, что опорный план является вырожденным. Для устранения вырожденности количество занятых клеток дополняется до m+n-1, путем введения нулевых перевозок. Клетки, в которые введены нулевые перевозки, называются фиктивно занятыми.

Чтобы определить потенциалы U 1 и V 4, необходимо сделать фиктивно занятой одну из незанятых клеток либо строки A 1, либо столбца В 4, для которых один из потенциалов определен. Задача заключается в минимизации линейной целевой функции, поэтому целесообразно фиктивно занятой сделать клетку, в которой стоит наименьшая стоимость.

Просматривая стоимости, стоящие в незанятых клетках строки A 1 и столбца В 4, выбираем наименьшую (min(Cij)= 2), которая соответствует клетке А 3 В 4, в нее записываем нуль и считаем занятой. Теперь клетка А 3 В 4 связывает потенциал с потенциалом U 3, V 4= 2 - (-11) =13. Затем находим U1 = С14 — V4 = 1-13 =- 12.

Система потенциалов построена. Проверяем правильность построения системы. Для этого просматриваем занятые клетки строк и для каждой из них определяем сумму потенциалов. Если для всех занятых клеток выполняется равенство (8.28), то система построена правильно, в противном случае ее надо построить заново или изменить так, чтобы условие (8.28) выполнялось.

Проверка выполнения условия оптимальности для незанятых клеток

Для каждой незанятой клетки проверяется условие (8.29), т. е. сравнивается сумма соответствующих клетке потенциалов со стоимостью. Если для всех незанятых клеток неравенства выполняются, то план является оптимальным. Если нет, то план является неоптимальным. Для каждой клетки, в которой не выполняется условие оптимальности, определяется разность (U i + V j) - C ij > 0, которая записывается в левый нижний угол этой же клетки. В рассматриваемом примере (табл. 8.6) имеются три клетки, в которых нарушено условие оптимальности; разности соответственно равны 1, 6 и 1.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.