Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие по математике для магистров.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
9.51 Mб
Скачать

24.1.8 Задачи с разрывными целевыми функциями

Наиболее изучена из этого класса задач Т-задача с фиксированными доплатами:

минимизировать                  (24.1.28)

при условиях

  (24.1.29)

Введем вспомогательные переменные yij следующим образом:

                                  (24.1.30)

где = . Тогда целевая функция имеет вид

                                    (24.1.31)

Задача (24.1.31) эквивалентна исходной задаче (24.1.28). Действительно, при = 0, переменные xi = 0, а при = 1 неравенства (24.1.30) становятся несущественными, так как они выполняются в любом опорном плане. Таким образом, эта задача является частично-целочисленной.

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

Примем следующие обозначения: — содержание элемента i в единице компонента j; — ограничение снизу на количество каждого элемента в смеси; — стоимость единицы компонента j; — фиксированная стоимость заказа j-го компонента; — количество j-го компонента смеси.

Требуется составить наиболее дешевую смесь, удовлетворяющую требованиям по содержанию каждого элемента в смеси.

Формально модель задачи следующая:

минимизировать                     (24.1.32)

при условиях

                             (24.1.33)

где

                     (24.1.34)

Предположим, что в дополнение к условиям (24.1.33) задана для верхняя граница

                                (24.1.35)

Тогда запишем задачу минимизаци в следующем виде:

минимизировать                    (24.1.36)

при условии (4.1.33) и дополнительных условиях

                              (24.1.37)

Эквивалентность частично-целочисленной задачи (4.1.36) и исходной задачи может быть проверена аналогично Т-задаче с фиксированными доплатами.

24.1.9 Задачи, сводящиеся к целочисленным

Некоторые задачи, формально не являющиеся целочисленными, имеют целочисленные решения при любых целочисленных исходных данных. К таким задачам относится Т-задача, которая формально не является целочисленной, так как отсутствует соответствующее условие целочисленности: — целое.

При анализе Т-задачи Г. Данцигом установлена следующая теорема.

Теорема При любых целых значениях ,  и ,  Т-задача всегда имеет целочисленный оптимальный план, независимо от значений .

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

Действительно, из этих положений сразу следует целочисленность всех опорных планов и, в частности, оптимального.

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

24.2 Методы отсечения Гомори.

Метод отсекающих плоскостей впервые разработан Р. Гомори в 1957—1958 гг. для задач линейного цілочисельного программирование (ЛЦП).

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

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

Для задачи ЛЦП соответствующая идея “регуляризации”, положенная в основу метода отсекающих плоскостей, высказана Г. Данцигом.

Допустим необходимо решить задачу ЛЦП:

минимизировать                          (24.2.1)

при условиях

 ,                             (24.2.2)

 ,                                     (24.2.3)

 — целые числа, .                   (24.2.4)

Отбросив на определенное время условие целочисленности (24.2.4), найдем оптимальное решение. Если окажется, что он удовлетворяет также и условию целочисленности, то это решение является искомым. В противном случае нужно сформировать дополнительное ограничение, которому заведомо удовлетворяет любой целочисленный план, но не удовлетворяет найденный оптимальный нецелочисленный план. Такое ограничение называют “правильным отсечением”. Геометрически правильное отсечение означает гиперплоскость, отсекающую от выпуклого многогранника соответствующей задачи ЛП некоторый многогранник, содержащий все целочисленные решения исходной задачи.

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

Рассмотрим задачу ЛП (24.2.1) — (24.2.3) в предположении, что все {aij}, {bi}, {cj} — целые числа и < n.

Пусть {А1, А2, …, Аm} — линейно независимые векторы ограничений, образующие базис системы {А1, А2, …, Аn}. Очевидно, матрица Ax= { А1, А2, …, Аm} — не вырождена, и поэтому существует обратная к ней .

Умножив ограничения задачи  на , получим

                           (24.2.5)

Это соотношение в развернутой форме записи имеет вид

                  

Откуда

                     (24.2.6)

где — базисная переменная; — ее значение.

Соотношение (24.2.6) справедливо для любого решения, в том числе и оптимального.

Подставляя выражение (24.2.6) в (24.2.1), получим

             (24.2.7)

Решим задачу ЛП (24.2.1) — (24.2.3) симплекс-методом или двойственным симплекс-методом. Допустим, что оптимальным оказался базис {А1, А2, …, Аm}. Элементы последней симплекс-таблицы обозначим через xij, причем , а столбец свободных членов — через [ ], .

Выберем один из них, например  и, начиная с i-й строки, составим соотношения для дополнительного ограничения (правильного отсечения).

Обозначим через [xij] целую часть, а через gij = xij [xij] — дробную часть числа xij, причем xij ³ [xij]. Очевидно, 0 ≤ gij < 1.

Пусть x = [xi]  — некоторый оптимальный план задачи (4.2.1) — (4.2.3). Его компоненты связаны уравнением (24.2.6). Подставим xij = [xij] + gij в (4.2.6) и после несложных преобразований получим

                   (24.2.8)

Соотношение (4.2.8) справедливо для любого плана решаемой задачи. Допустим, что x — целочисленный план. Тогда, учитывая целочисленность левой части (24.2.8), получим , где ξ — целое число, а 0 £ < 1, 0 £ gij < 1.

Теперь возможны два случая:

а) x ³ 1; б) x £ 0.

В первом случае, если допустить, что x ³ 1, то , откуда ³ 1, а это противоречит условию 0 £  1. Поэтому принимаем x £ 0, т.е. справедливо неравенство

                              (24.2.9)

Нецелочисленный план x не удовлетворяет неравенству (24.2.9), поскольку > 0, а левая часть неравенства (24.2.9) равна нулю, так как = 0, для всех небазисных компонент j = m +1,+2, …, n... В то же время любой целочисленный план удовлетворяет (24.2.9) как строгому равенству, так как = 0 для всех i.

Итак, ограничение (24.2.9) является правильным отсечением. Его записывают в эквивалентной форме

                    (24.2.10)

или

                           (24.2.11)

и добавляют к исходной системе линейных ограничений задачи.

Переменные новой задачи таковы: {x1x2, …, xn+1}... Ее условия уже разрешены относительно базисных переменных плана x = {x1x2, …, xm} и новой переменной xn+1, и, следовательно, имеем псевдоплан с базисными компонентами:

xi= xi0 ;   xn+1 = –gi0.

Симплекс-таблица данного псевдоплана образуется дописыванием к таблице, отвечающей найденному оптимальному плану x, строки с элементами

         (24.2.12);

Одновременно к таблице добавляют единичный вектор Аn+1 такой, что .

К этому плану применяют двойственный симплекс-метод. На первой итерации из базиса обязательно выводят вектор, отвечающий переменной xn+1, так как в столбце ai0 таблицы имеется один отрицательный элемент xn+1 =  – < 0.

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

В зависимости от исхода большой итерации различают следующие три случая:

1) в столбце  все — целые числа, причем ³ 0. Это условие определяет оптимальность найденного плана;

2) получен новый план, где все ³ 0, но не все — целые числа. Тогда необходимо сформировать новое правильное отсечение и перейти к очередной большой итерации;

3) получен некоторый промежуточный псевдоплан, где имеется элемент < 0 такой, что xij ³ 0 для всех j = 1, 2, …, n... Это признак неразрешимости задачи.

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

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

Сделаем некоторые замечания относительно метода Гомори.

1. Двойственный симплекс-метод является основой метода отсекающих плоскостей Гомори, так как он позволяет учитывать новые ограничения (правильные отсечения) в процессе решения задачи и переходить от текущего псевдоплана к новому оптимальному плану.

2. При определенных условиях можно гарантировать конечность алгоритма Гомори.

Достаточные условия конечности алгоритма установлены в следующей теореме.

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

3. Правильное отсечение можно формировать и по индексной строке. Пусть на k-й итерации элементы индексной строки таковы: , причем  — не целое число.

Обозначим через g0j дробную часть элемента : = – [ ]. В этом случае правильное отсечение записывается так:

                           (24.2.13)

4. В отличие от обычной задачи ЛП задача целочисленного программирования требует большого объема вычислений даже при малых m и n. Количество итераций существенно зависит от того, насколько удачно сформированы правильные отсечения.

5. В результате постоянного улучшения базового алгоритма метода Гомори были разработаны новые алгоритмы отсекающих плоскостей (второй и третий алгоритмы Гомори), которые используют более эффективные правильные отсечения.