Применение метода рассмотрим на маршруте, включающем пункты a1, b1, b2 и b4

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

Приведенная матрица показана в табл. 10.16, б. Справа и внизу матрицы показаны константы приведения – минимальные элементы, которые вычитались вначале из строк, а затем из столбцов матрицы.

Таблица 10.16

Определение нижней границы множества "все решения"

а).   а1 b1 b2 b4   б).   а1 b1 b2 b4  
  а1   а1
  b1   b1
  b2   b2
  b4   b4
                 

Сумма констант, равная 28, является нижней границей протяженности для всех маршрутов, то есть для множества "все решения".

Нулевые расстояния в клетках матрицы указывают на наличие минимальных по протяженности маршрутов, поэтому при построении развозочного маршрута в первую очередь рассматриваются элементы с нулевыми протяженностями.

Для этого определяются оценки всех элементов приведенной матрицы как сумму наименьших величин протяженности соответствующей строки и столбца. Например, для нулевого элемента a1b1 оценка составит 1 + 15. Оценка показывает на потери от невключения данного элемента в маршрут. Проставим ее в правом верхнем углу (табл. 10.17).

Таблица 10.17

Определение оценок для нулевых элементов матрицы

            а1 b1 b2 b4
          а1 0 16
          b1 0 16
          b2 0 9
          b4 0 9

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

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

Нижняя граница второго подмножества равна сумме значений нижней границы разделяемого множества и величины оценки пары a1b1, то есть 28 + 16 = 44. Строку a1 и столбец b1 исключают из рассмотрения, то сеть удаляют из матрицы. Выбор в дальнейшем пары b1a1 привел бы к нарушению условия о заезде в каждый пункт только по одному разу. Поэтому пара b1a1 блокируется, проставляя в соответствующую клетку матрицы знак блокировки ( ) вместо прежнего значения.

Применение метода рассмотрим на маршруте, включающем пункты a1, b1, b2 и b4 - student2.ru 4. Преобразованная и приведенная матрица приведена в табл. 10.18. В процессе вычисления констант появились константы, равные 9 и 7 соответственно. Следовательно, протяженность подмножества, включающего пару a1b1, увеличивается на 16 (28 + 16 = 44).

Таблица 10.18

Матрица с исключенными строкой a1 и столбцом b1

            а1 b2 b4  
          b1 0 1
          b2 0 1
          b4 0 1 0 1
           

Как видно из табл. 10.18 все пары имеют одинаковые оценки, равные 1. Выбираем, например, пару b1b4. Протяженность множества, не включающего пару b1b4, увеличивается на 1 (44 + 1 = 45). Исключаем соответствующие столбец и строку из дельнейшего рассмотрения. Столбец b1 из матрицы удален, поэтому знак блокировки не ставиться (табл. 10.19). В процессе вычисления появилась константа 1, поэтому увеличиваем нижнюю границу на 1 (44 + 1 = 45).

Таблица 10.19

Матрица с исключенными строкой b1 и столбцом b4

Наши рекомендации