
519_8_E92_2015_Efromeeva_E_V__Efromeev_N_M_Metody_issledovania_operatsiy_v_mashinostroenii_primery_zadachi_2-e_izdanie
.pdf
6.4.2.Обобщенный симплекс-метод
Впрямом симплекс-методе (см. главу 5) начальное решение допустимо, но не оптимально. В двойственном симплекс-методе данное решение оптимально (точнее, "супероптимально"), но не допустимо. Возникает естественный вопрос: можно ли начать решение задачи ЛП с неоптимального и недопустимого решения? Мы видели, что в прямом симплекс-методе при отсутствии допустимого начального решения используются искусственные переменные. В двойственном симплекс-методе при отсутствии оптимального начального решения также применяются искусственные ограничения. Хотя задача этих процедур и состоит в обеспечении автоматического выполнения вычислений, необходимо не терять из виду основную идею симплексных алгоритмов, а именно то, что оптимальное решение задачи ЛП достигается в одной из крайних (угловых) точек пространства допустимых решений. С учетом этих замечаний можно разработать симплексный алгоритм решения задач ЛП, в котором начальное решение будет и неоптимальным, и недопустимым. Следующий пример показывает, как можно обобщить симплексный алгоритм.
Пример.
Дана следующая задача линейного программирования2 → #$ , .
−•'=+ 2 !( − 2 ! ≥ 8,
2'− ( + 4 !!.≤ 10,
'',(,! ≥ 0
Вкачестве начальной таблицы можно принять следующую, , симплекс- таблицу, где представлено начальное решение ( - / =), которое не оптимально (из-за переменной !) и не допустимо (так как - 3 −8). (Заметим, что в этой таблице первое равенство умножено на −1 для того, чтобы показать недопустимость решения непосредственно в столбце "Св. чл.".)% − + ( + ≤ 4,
|
' |
( |
! |
|
- |
/ |
3 |
Св. чл. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- |
1 |
-2 |
2 |
1 |
0 |
0 |
-8 |
|
/ |
-1 |
1 |
1 |
0 |
1 |
0 |
4 |
|
|
||||||||
|
2 |
-1 |
4 |
0 |
0 |
1 |
10 |
|
3 |
||||||||
|
|
|
|
|
|
|
|
|
• |
0 |
0 |
-2 |
0 |
0 |
0 |
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
91 |
|
|
|
Решение задачи ЛП без использования каких-либо искусственных переменных или ограничений может быть следующим. Сначала освобождаемся от свойства недопустимости базисного решения путем применения версии двойственного условия допустимости. В нашем примере это приведет к выбору переменной • в качестве исключаемой из базиса. Чтобы определить вводимую переменную, надо найти в • -строке строго отрицательный коэффициент, соответствующий небазисной переменной. Выбор вводимой переменной можно осуществить без удовлетворения требования оптимальности решения, так как в данном случае это не существенно. В результате получим следующую таблицу (вводимая переменная •!).
|
•" |
•! |
•# |
• |
•$ |
•% |
Св. чл. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
•! |
− 1 2 |
1 |
-1 |
− 1 2 |
0 |
0 |
4 |
|
− 1 2 |
0 |
2 |
2 |
1 |
0 |
0 |
$ |
|||||||
|
2 |
|
|
− 1 2 |
|
|
|
% |
0 |
3 |
1 |
1 |
14 |
||
|
0 |
0 |
-2 |
0 |
0 |
0 |
0 |
|
|
|
|
|
|
|
|
Решение в последней таблице допустимо, но не оптимально. Далее можно использовать прямой симплекс-метод для получения оптимального решения. В общем случае, если на очередной итерации полученное решение недопустимо, то описанная процедура повторяется до тех пор, пока не будет получено допустимое решение. Далее основное внимание уделяется оптимальности решения путем применения условия оптимальности прямого симплекс-метода.
Пример показывает гибкость симплексного метода. В литературе описано большое количество вариаций симплекс-метода (например, метод одновременного решения прямой и двойственной задач, симметричный, перекрестный и мультиплексный методы), причем создается впечатление, что каждый из них существенно отличается от других, тогда как все они просматривают экстремальные точки пространства решений с различной степенью автоматизации вычислений и вычислительной эффективности.
92
6.5. Задачи для самостоятельного решения
Составить двойственные задачи для следующих задач:
1. |
! |
|
" |
|
|
− ! + |
|
|
' |
3 |
! + |
|
2 |
! + |
|
|
|
|
2 |
# |
%& |
4, |
" + |
# ≤ |
9, |
|
" + 2 |
# ≤ |
6, |
|
3 |
" + |
# ≥ |
|
!,",# ≥ 0. |
|
3. |
3 |
! |
# |
1 |
|
%& 12, |
|
|
! + 3 |
" + |
# + |
|
$ |
= |
|
|
54 |
! + 5 |
" + 2 |
# + |
|
$ |
= 18, |
|
|
|
!,",#,$ |
≥ 0. |
|
|
|
5. |
|
! ! + "" − 2 ## ≥ 2, |
|||||
|
|
− |
! + 2 |
" + |
|
# ≤ 4, |
|
|
|
: |
! + 2 # |
= 2, |
|||
|
|
|
!,",# ≥ 0. |
|
2. |
|
|
! |
|
!"+ 2 |
"#− # ≥ 2, |
|||||
|
|
|
|
−2 |
! + |
" + 2 |
# |
= 2, |
|||
|
|
|
' 2 |
|
! + |
|
" − 2 |
# ≤ 6, |
|||
|
|
|
! |
|
|
|
!,",# ≥ 0. |
|
|||
4. |
|
5 |
|
|
" |
# |
|
$ |
$ |
||
|
|
! − 3 |
" + |
# − 2 |
= 1, |
||||||
|
- |
9 |
! − 4 |
|
" + 2 # − 3 |
$ |
= 6, |
||||
|
|
|
|
|
!,",#,$ ≥ 0. |
|
|
|
|||
|
|
|
|
|
|
# ≥ 5, |
|||||
6. |
|
|
! 2 "! + #" − |
||||||||
|
|
|
|
: |
! + 2 |
" + |
# ≤ 7, |
||||
|
|
|
|
|
! − |
|
" + # |
≥ 1, |
|||
|
|
|
|
|
|
|
!,",# ≥ 0. |
|
Для следующих задач составить и решить двойственные и, используя их решение, найти решение исходных задач:
7. |
|
! |
− |
|
" |
|
|
|
# |
|
# |
≥ 1, |
8. |
! |
|
2 |
" |
+ |
|
|
# |
|
|
# ≥ 4, |
||
|
|
|
|
! + |
" + |
|
|
|
|
! |
|
" + 2 |
||||||||||||||
|
: |
−2 |
! − 3 " |
− |
|
|
# ≤ 1, |
|
|
: |
|
! |
+ |
|
" − |
# |
≥ 3, |
|||||||||
|
|
|
! |
+ |
|
" − |
|
# |
≥ 3, |
|
|
|
|
" |
+ 2 |
# |
≥ 1, |
|||||||||
|
! |
|
|
|
|
|
!,",# |
≥ 0. |
|
|
|
|
|
|
|
!,",# |
≥ 0. |
|||||||||
9. |
|
|
! +" 2 " #+ 2 # ≥ 6, |
10. |
|
|
!! + 2"" + 3 ## ≥ 5, |
|||||||||||||||||||
|
|
|
|
− |
! |
+ 2 " |
+ |
|
|
# ≥ 2, |
|
:2 |
|
! |
+ |
|
" ≥ 1, |
|||||||||
|
: 2 |
! − |
" + |
|
# |
≥ 2, |
|
! + 3 " + 7 |
# ≤ 7, |
|||||||||||||||||
|
|
|
|
! |
|
|
!,",# |
≥ 0. |
|
|
|
|
! |
|
|
!,",# |
≥ 0. |
|||||||||
11. |
|
|
|
2 |
|
" |
|
|
# |
# |
|
|
12. |
|
|
! |
|
|
" |
" |
|
# |
# ≥ 4, |
|||
|
|
|
|
|
" + 2 |
|
|
≥ 3, |
|
|
− |
+ 2 |
− 3 |
|||||||||||||
|
|
: ! |
! |
+ |
|
" − |
|
# |
≥ 2, |
|
:3 |
|
! |
+ |
|
# ≥ 2, |
||||||||||
|
|
+ 2 |
" + 2 |
|
# ≥ 2, |
|
! + |
|
" |
+ 2 |
# ≥ 10, |
|||||||||||||||
|
|
|
|
|
|
|
!,",# |
≥ 0. |
|
|
|
|
|
|
|
!,",# |
≥ 0. |
93
|
|
! |
|
" |
|
# |
# ≥ |
7, |
|
|
|
|
! |
|
" |
|
|
|
# |
2, |
||||
13. |
|
3 |
|
! + 2 |
" + |
|
|
14. |
|
|
|
! + |
" |
+ 2 # |
|
≥ |
||||||||
|
|
− |
! + 3 |
" + |
# |
≥ |
|
1, |
|
|
|
3 |
! + " + # |
|
≥ |
|
||||||||
|
( |
≤ |
|
|
|
( |
|
≥3, |
||||||||||||||||
|
11 ! + 7 |
|
≥ 0 |
# |
|
|
|
|
|
5 |
|
|
|
|
≥ 0 |
|
|
1, |
||||||
|
|
" + 4 |
|
|
|
27, |
|
|
|
|
! + " + 4 |
# |
|
|||||||||||
|
|
|
|
!,",# . |
|
|
|
|
|
|
|
|
|
!,",# . |
|
|
||||||||
|
|
! |
|
" |
|
# |
|
|
≥ |
5, |
|
|
|
! |
|
|
" |
|
# |
|
|
≤ 4, |
||
15. |
|
−3 |
! − 2 " + |
|
# ≥ |
|
16. |
|
−3 |
! − 5 |
" + 2 |
|
#≥ |
|||||||||||
|
(2 |
! + 4 |
" − 4 |
|
# |
≥ |
|
3, |
|
( |
|
3 |
|
! − 3 |
" + |
|
|
#≥ |
3, |
|||||
|
|
3 |
|
! + 5 |
" |
+ |
# |
|
6, |
|
|
|
|
! + 6 |
" |
− |
# |
|
5, |
|||||
|
|
|
|
!,",# |
|
|
. |
|
|
|
|
|
−2 |
|
!,",# |
|
|
. |
|
|
||||
|
|
|
|
≥ 0 |
|
|
|
|
|
|
|
|
|
≥ 0 |
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Для следующих задач составить и решить двойственные и, используя вторую |
||||||||||||||||||||||||||||||
теорему двойственности, найти решение исходных задач: |
||||||||||||||||||||||||||||||
|
• = − |
! |
− |
|
|
" |
− 8 |
|
# |
+ |
|
|
|
/ |
|
|
|
|
|
9 |
9 → %: , |
|||||||||
17. |
|
|
! + |
|
|
" − |
|
# |
− |
|
|
/ |
/− |
|
|
= 1, |
||||||||||||||
|
|
|
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ 4 |
|
|
9 = 4, |
|||||||||
|
;− ! + " + 2 |
|
#/,−≥ 0− 2 |
|
||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
!,",#, |
|
9 . |
|
|
|
|
||||||||||||||
|
• = 5 ! |
+ 5 |
" |
+ |
|
# |
+ |
|
|
/ |
|
/→= 1, |
|
|
|
|||||||||||||||
18. |
|
2 |
−2 |
" |
− 3 |
# |
+ |
|
|
|
|
|
|
|
/ |
|
|
= |
|
|
|
|||||||||
|
; |
|
! |
+ 3 |
" |
+ 2 |
|
# |
+ |
|
|
|
|
|
|
|
|
6, |
||||||||||||
|
|
|
|
|
|
|
|
/ |
|
|
|
|
. |
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
!,",#, |
|
|
≥ 0 |
|
|
|
|
|
|
|
|
|
|
|
|||||||||
19. • = ! |
+ 2 |
" |
+ 4 |
|
# |
+ 5 |
|
/ |
/++639 |
→ %: , |
||||||||||||||||||||
|
; |
! + 2 |
|
" + |
# |
+ 2 |
|
|
/ |
+ |
|
9 |
9 = 3, |
|||||||||||||||||
|
|
! |
+ |
|
" + 2 |
|
#/,+ |
≥ 0 |
. |
|
|
|
= 3, |
|||||||||||||||||
|
|
|
|
|
|
|
|
|
!,",#, |
|
9 |
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
• = 24 ! + 8 |
|
" − 4 |
|
# |
+ 2/ =→ %&', |
||||||||||||||||||||||||
20. |
|
4 |
! |
+ 2 |
" |
− |
|
|
# |
+ |
|
/ |
|
|
|
/ |
|
|
|
|
|
|
||||||||
|
; |
|
! + " − /# − |
|
|
|
|
|
|
|
|
|
−2, |
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
. |
|
|
|
|
|
|
|
1, |
|
|||
|
|
3 |
|
|
|
|
|
!,",#, |
|
|
≥ 0 |
|
= |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
21. |
• = 6 |
! + 4 " − 2 |
# + 10/ |
=→ %&', |
||||||||||||||||||||||||||
; |
2− |
! |
+ |
|
" |
− |
|
|
# |
+ |
|
|
|
|
|
|
/ |
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
/ = 10, |
|||||||||||||||||||||||
|
|
! |
− |
|
" − |
#/ + 2 |
|
. |
|
|
|
|
|
|
|
3, |
|
|||||||||||||
|
|
|
|
|
|
|
|
!,",#, |
|
|
≥ 0 |
|
|
|
|
|
|
|
|
|
|
|
||||||||
22. |
• = − |
! + 9 |
" + 9 |
|
# |
− |
|
|
|
/ → %&', |
||||||||||||||||||||
; |
− ! + |
|
|
" + |
|
# |
− |
|
|
/ |
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
/ = 3, |
|
||||||||||||||||||||||
|
! − 3 |
|
" + 3/ # |
− |
. |
|
|
|
|
= 1, |
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
!,",#, |
|
≥ 0 |
|
|
|
|
|
|
|
|
|
|
|
94 |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|

Решить двойственным симплекс-методом:
|
|
5 |
|
|
! |
|
|
|
" |
|
|
# |
|
# |
|
|
|
|
! |
|
" |
+ |
# |
|
6, |
||
23. |
|
|
! |
|
+ 3 " + 2 |
|
≤ 2, |
24. |
|
− ! + |
" |
# |
≥ |
||||||||||||||
|
( |
−3 |
|
! + " + |
|
# |
|
≥ |
|
( |
3 |
! + 2 " − |
# |
|
|||||||||||||
|
|
|
|
≥ 7, |
|
≥ |
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
≥ 0 |
|
# |
|
|
|
|
! − 2 |
|
≥ 0 |
|
3, |
|||||||
|
|
|
|
|
|
|
! + 2 " + |
|
|
|
3, |
|
|
|
" − 3 |
# |
|
||||||||||
|
|
−2 |
|
|
|
!,",# . |
|
|
|
|
|
|
|
|
!,",# . |
|
|
||||||||||
|
|
|
|
|
|
|
! |
|
|
|
# |
|
|
|
! |
|
# |
||||||||||
25. |
|
|
|
! |
|
|
|
" |
|
# |
|
≥ |
26. |
|
|
|
|
" |
# |
≥ |
|||||||
|
|
|
|
|
+ |
|
" + 2 |
|
|
≥ |
2, |
|
|
|
! + |
|
" + 2 |
≥ |
2, |
||||||||
|
( |
3 |
|
! + |
" + |
|
# |
|
≥ |
3, |
|
( |
3 ! + |
" + |
# |
≥3, |
|||||||||||
|
|
|
|
|
+ |
|
|
≥ 0 |
|
|
|
|
20, |
|
|
|
|
≥ 0 |
|
5, |
|||||||
|
|
5 ! |
|
|
" + 4 |
|
# |
. |
|
|
|
|
|
5 ! + |
|
" + 4 |
# |
|
|||||||||
|
|
|
|
|
! |
|
!,",# |
|
|
# |
|
|
|
|
|
!,",# . |
|
|
|||||||||
|
|
|
|
|
+ |
|
" |
|
|
# |
|
3, |
|
|
|
|
|
|
|
|
|
|
|||||
27. |
|
7 |
! |
|
|
" + 3 |
|
|
≥ |
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
2 |
|
! + |
" + |
|
# |
|
≥ |
|
|
|
|
|
|
|
|
|
|
|
||||||
|
( |
|
|
|
|
≥4, |
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
! + 3 |
|
≥ 0 |
|
|
|
|
6, |
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
" + 2 |
|
# |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
!,",# |
|
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28. На рис. 32 показано пространство решений,+ соответствующее задаче минимизации целевой функции / = 2 ! ". Предполагается, что поиск решения выполняется двойственным(! , #) симплекс-методом; оптимальное
решение соответствует точке 8 = " " .
а) если начальное базисное (недопустимое) решение соответствует точке G, будет ли алгоритм двойственного симплекс- метода проходить через точки G, E, F? Обоснуйте это;
Рис. 32
б) если начальное базисное (недопустимое) решение соответствует точке L, определите на рисунке возможную последовательность точек, через которые будет проходить алгоритм двойственного симплекс-метода для достижения оптимального решения в точке F.
95

7. Транспортные модели
7.1. Общие сведения
Среди задач линейной оптимизации могут быть выделены два класса задач со специальной структурой: транспортная задача и задача о назначениях.
Транспортные задачи (модели) – специальный класс задач линейного программирования. Эти модели часто описывают перемещение какого-либо товара из пункта отправления в пункт назначения. Назначение транспортной задачи – определить объем перевозок из пунктов отправления в пункты назначения с минимальной суммарной стоимостью перевозок. При этом должны учитываться ограничения, налагаемые на объемы грузов, имеющихся в пунктах отправления (предложения), и ограничения, учитывающие потребность грузов в пунктах назначения (спрос). В транспортной модели предполагается, что стоимость перевозки по какому- либо маршруту прямо пропорциональна объему груза, перевозимого по этому маршруту.
В общем случае транспортную модель можно применять для описания ситуаций, связанных с управлением запасами, управлением движением капиталов, составлением расписания, назначением персонала, определения оптимальной специализации предприятий, рабочих участков и станков, оптимального назначения кандидатов на работы, оптимального использования торговых агентов и др.
Критерием эффективности в данных задачах является линейная функция, ограничения также линейны, поэтому для их решения могут применяться методы линейной оптимизации, например симплекс-метод. Хотя транспортная задача может быть решена как обычная задача линейного программирования, ее специальная структура позволяет разобрать алгоритм с упрощенными вычислениями, основанный на симплексных отношениях двойственности.
Мы рассматриваем случай, когда перевозится один продукт, такая задача называется однопродуктовой. Однако транспортную задачу можно сформулировать и для многопродуктового варианта.
Решать транспортную задачу можно любым универсальным методом линейного программирования, например симплексным. При этом нужно иметь в виду, что реальные задачи имеют большую размерность. Например, уже при 100 производителях и 100 потребителях симплексная таблица будет
иметь размерность 200 × 10 000. Поэтому имеет смысл разрабатывать более эффективные методы, учитывающие специфический вид условий транспортной задачи.
96

7.2. Постановка транспортной задачи
Пусть имеется несколько поставщиков однородной продукции (каждый с определенным запасом) и несколько потребителей этой продукции (с известными потребностями у каждого). Задана также сеть коммуникаций (дорог, рек, воздушных линий и т.д.), связывающая каждого поставщика с каждым потребителем. На каждой коммуникации задана цена перевозки - стоимость перевозки единицы продукции (рис. 33).
Если какая-либо коммуникация отсутствует, то считаем, что она+ есть, но цену перевозки на ней устанавливаем равной бесконечности ( ∞). Это соглашение сделает невыгодным перевозку по ней и автоматически исключит данную коммуникацию из плана перевозок.
Рис. 33
Экономическая постановка транспортной задачи:
Требуется составить план перевозок продукции от поставщиков к потребителям так, чтобы потребности потребителей были бы удовлетворены за счет вывоза запаса от поставщиков. Цель - минимизация суммарной стоимости всех перевозок.
Отметим один существенный момент. Если суммарный запас продукции, имеющейся у поставщиков, совпадает с суммарной потребностью в продукции у потребителей, тогда транспортная задача считается закрытой (имеет место баланс запасов и потребностей). Если же баланс нарушается (не хватает запасов, или излишек запасов) задача называется открытой.
Изложим способ сведения открытой транспортной задачи к закрытой. Суть этого способа очень проста. Так, например, при нехватке запасов вводят в
97

рассмотрение фиктивного поставщика с запасом, равным этой нехватке, и устанавливают цену перевозки от него к каждому потребителю (на фиктивных коммуникациях) равной нулю (самый выгодный поставщик). Так, в приведенном примере суммарный запас равен
120 + 70 = 190 ед. Однако суммарная потребность составляет
60 + 100 + 80 = 240 ед.
Задача открытая. Имеет место нехватка продукции в количестве 240 - 190 = 50 ед.
Вводим фиктивного поставщика с таким запасом. Проводим от него фиктивные коммуникации ко всем потребителям и устанавливаем на них нулевые цены (рис. 34). Транспортная задача становится закрытой. Аналогично, при излишке запасов вводится фиктивный потребитель, имеющий потребность, равную этому излишку. Цены на фиктивных коммуникациях, идущих к нему от всех поставщиков, устанавливаются равными нулю.
Рис. 34
Построим математическую модель транспортной задачи в виде задачи линейного программирования. Исходя из того, что план перевозок определяется указанием количества перевозимого груза по каждой коммуникации (нулевое количество, если продукция по коммуникации не перевозится), обозначим через неизвестные • ! количество перевозимой продукции от поставщика с номером i к потребителю с номером j (объем перевозки). В примере таких неизвестных будет 3 3 = 9.
В общем случае количество неизвестных будет равно m n, где m - количество поставщиков, n - количество потребителей.
Выразим через введенные неизвестные суммарную стоимость перевозок в виде линейной функции. Для этого необходимо объем перевозки на каждой
98

коммуникации умножить на цену перевозки и просуммировать полученные
величины по |
всем |
коммуникациям. |
|
+ 0 #! + 0 #" + 0 ## → %&', |
||
• = 5 !! + 10 |
!" + 8 |
!# + 6 "! + 12 |
"" +#4 "## |
|||
|
или |
• = - - ./3 /3 |
→ %&' |
|||
|
|
|
/7! 37! |
|
|
|
(цель задачи - найти минимум суммарной стоимости перевозок). |
||||||
./3 – элементы матрицы стоимостей 95. |
10 |
8 |
|
|
||
|
|
9 = :6 |
12 |
4;. |
|
|
|
|
0 |
0 |
0 |
|
|
Перейдем к формулировке ограничений. Как видно из экономической постановки, ограничения делятся на 2 следующие группы:
1) Условия полного вывоза продукции от каждого поставщика (таких условий будет столько, сколько имеется поставщиков).
2) Условия полного удовлетворения потребностей каждого потребителя (число условий равно числу потребителей).
Таким образом, в транспортной задаче будет (m + n) ограничений. Запишем ограничения первой группы. Они будут иметь структуру
Для первого поставщика объем вывоза показан на рис. 35.
Рис. 35
99

• + • ! + • " - вывоз продукции ко всем поставщикам. Его запас равен |
|
120 единиц. Условие полного вывоза имеет вид |
• + • ! + • " = 120. |
Аналогично выглядят ограничения по вывозу для второго и третьего
поставщиков: • |
+ • |
+ • |
= 70, |
• |
+ • |
+ • = 50. |
! |
!! |
!" |
|
" |
"! |
"" |
Ограничения второй группы можно сформулировать в виде |
||||||
Привоз продукции к первому потребителю составит |
• + •! + •" |
|||||
и ограничение примет вид • |
+ •! + •" |
= 60 (рис. 36). |
Рис. 36
Аналогично для• второго! + •!! +и •третьего"! = 100,потребителя:• " + •!" + •"" = 80.
Учитывая |
|
ограничения |
неотрицательности, |
запишем математическую |
|||||||||||
$ = 5• |
+ 10• |
! |
+ 8• |
" + 6•! + 12•!! + 4•!" + 0•" |
+ 0•"! + 0•"" → &'(, |
||||||||||
постановку транспортной задачи: |
|
|
|
|
|
|
|
||||||||
|
• + • |
! |
+ • |
" |
• |
+ • |
+ • |
|
|
|
|
|
= 120, |
||
|
|
|
|
|
|
+ • |
+ • |
|
= 70, |
||||||
|
|
|
|
|
|
|
! |
!! |
!" • |
|
|
= 50, |
|||
|
• |
|
|
|
|
|
+ • |
|
|
" |
"! |
"" |
= 60, |
||
|
• |
|
|
|
|
+ • |
|
+ • |
+ • |
|
|
||||
|
! |
• |
|
|
! |
|
|
" |
|
|
= 100, |
||||
|
|
|
" |
|
|
!! + • |
!" |
|
"!+ • |
|
= 80, |
||||
|
|
|
|
|
|
•39 ≥ 0, |
|
|
|
"" |
|
||||
|
|
|
|
|
|
', ; = [1, 2, 3]. |
|
|
|
||||||
|
|
|
|
|
|
|
|
|
100 |
|
|
|
|
|
|