Page 94 - 2589
P. 94

Знаходження  найбільшого  потоку.  Нехай     —  повний
                                                                                        z
               потік,  а      (x ,  ) y   —  потік  в  дузі  u        (x ,  ) y ,  направлений  від

               вершини  x   до  вершини  y .  Процес  збільшення     полягає  в
                                                                                         z
               розмітці вершин графа індексами, які вказують на шлях, на якому
               можливе  збільшення  потоку.  Попередньо  всі  вершини  графа

               повинні бути пронумеровані.
                     Відмічаємо  x   індексом  0.  Якщо  x   —  вже  позначена
                                         0                                  i
               вершина, то позначаємо індексом  i  всі непозначені вершини, в
               які йдуть ненасичені дуги з  x , тобто вершини  y , для яких
                                                       i
                                       ( x ,  y )  U   і   (x  , y ) c  (x  ,  ) y ,             (4.9)
                                          i                  i            i
               та  індексом     всі  непозначені  вершини,  з  яких  йдуть  дуги  в
                                    i
               вершину  x , тобто вершини  y , для яких
                              i
                                           ( y,  x )  U   і   ( y , x  )   0.                  (4.10)
                                                 i                   i
                     Якщо  в  результаті  цього  процесу  виявиться  позначеною

               вершина  z,  то  між  вершинами  x   і  z  знайдеться  ланцюг,  всі
                                                                0
               вершини якого різні і (з точністю до знаку) позначені номерами

               попередніх  вершин.  Потік  у  всіх  ребрах  цього  ланцюга  можна
               збільшити на одиницю в напрямку від x  до  z,
                                                                      0
                                                (u )    (u ), якщо  u    ;
                                              (u )    (  u )  1, якщо  u  ;

               і  якщо  проходження  здійснюється  у  напрямку  протилежному
               орієнтації дуги, зменшується на одиницю, тобто;

                                              (u )    (  u )  1, якщо  u  
                     В  результаті  цього  процесу  отримується  новий  потік  по
               мережі              1,  величина  якого  зростає.  Далі  цей  процес
                             z      z
               повторюється.
                     Якщо потік неможливо збільшити описаним методом, тобто

               якщо стає неможливим помітити вершину  z, то він є найбільшим
               потоком  мережі.  Дійсно,  нехай  V   —  множина  непозначених
               вершин, які включають, звичайно, і вершину  z. Отже, V  це такий

               переріз,  який  не  має  вихідних  дуг  (в  іншому  випадку  деякі
               вершини цього перерізу були б позначені від’ємними індексами),
               а всі вхідні дуги насичені:

                                                 U     U  ;U      ;       
                                                   V      V    V
                                                                                                 (4.11)
                                                  )(u   (uc  ) для  u  U   .
                                                                             V  
                     При цьому



                                                              94
   89   90   91   92   93   94   95   96   97   98   99