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

§2. Поиск целочисленного решения основной задачи.

Пример.

Доведем до целочисленного решения пример: найти максимум функционала (9) при условиях:

(10)

(11)

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

Таблица 4

-y3 -y1 -x3

1

x2=

y2=

x1=

-1/7 2/7 -1

-15/7 -5/7 -6

3/7 1/7 1

4/7

4/7

16/7

z=

5/7 4/7 4

36/7

Полученное оптимальное решение x1=16/7, x2=4/7, x3=0 нецелочисленно,

поэтому приступаем к отысканию целочисленного плана. Проведем его двумя путями: обычным симплекс-методом и двойственным.

Выбираем среди свободных членов дробный. Так как в нашем

примере все они дробные, берем любой из них, например 4/7 из

первой строки. По формулам (4) находим дробные доли коэффициентов b выбранной первой строки:

Дополнительное ограничение будет иметь вид

Вводим это ограничение в задачу и получаем табл.5.

План, записанный в таблице, стал недопустимым. Принимаем за разрешающий элемент число (-2/7), делаем шаг модифицированных жордановых исключений и приходим к таблице 6.

Найденное решение допустимо и целочисленно, но, к сожалению, оно не оптимально. Поэтому выбираем разрешающий элемент (число 3) и делаем следующий шаг (табл.7).

Таблица 5

-y3 -y1 -x3

1

x2=

y2=

x1=

s1=

-1/7 2/7 -1

-15/7 -5/7 -6

3/7 1/7 1

-6/7 -2/7 0

4/7

4/7

16/7

-4/7

z=

5/7 4/7 4

36/7

Таблица 6

-y3 -s1 -x3

1

x2=

y2=

x1=

y1=

-1 1 -1

0 -5/2 -6

0 1/2 1

3 -7/2 0

0

2

2

2

z=

-1 2 4

4

Теперь решение оптимально, но нарушилась его целочисленность. Берем дробный свободный член 2/3 снова в первой строке и по коэффициентам этой строки формулируем аналогично предыдущему второе дополнительное условие. Практически оно составляется прямо в таблице, поскольку дробные доли коэффициентов легко вычисляются в уме. Записывать их надо со знаком минус (табл.8)

Таблица 7

-y1 -s1 -x3

1

x2=

y2=

x1=

y3=

1/3 -1/6 -1

0 -5/2 -6

0 1/2 1

1/3 -7/6 0

2/3

2

2

2/3

z=

1/3 5/6 4

14/3

Таблица 8

-y1 -s1 -x3

1

x2=

y2=

x1=

y3=

s2=

1/3 -1/6 -1

0 -5/2 -6

0 1/2 1

1/3 -7/6 0

-1/3 -5/6 0

2/3

2

2

2/3

-2/3

z=

1/3 5/6 4

14/3

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

План, записанный в табл. 8, снова является недопустимым.

Выбираем разрешающий элемент (-1/3) и делаем еще один

шаг (табл. 9). План, полученный в табл. 9, является допустимым, оптимальным и целочисленным. Таким образом, нужное решение найдено: x1=2, x2=0, x3=0, zmax=4.

Характерно, что такой план у нас уже был в табл. 6, но там он оказался не оптимальным. Это значит, что с одним дополнительным ограничением в многограннике была еще вершина

Таблица 9

-s2 -s1 -x3

1

x2=

y2=

x1=

y3=

y1=

1 -1 -1

0 -5/2 -6

0 1/2 1

1 -2 0

-3 5/2 0

0

2

2

0

2

z=

1 0 4

4

(2,2/3,0), доставлявшая функционалу большее значение, но

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

Применим теперь для нахождения целочисленного плана двойственный симплекс-метод. Отличия начинаются с табл. 5. Принимаем в ней за разрешающую ту же четвертую строку, но разрешающий элемент в ней определяем двойственными модифицированными отношениями. Они равны

5/7:(-6/7)=-5/6, 4/7:(-2/7)=-2;

меньше по модулю – первое , поэтому за разрешающий принимаем элемент (-6/7). Делая с ним шаг модифицированных исключений, переходим от табл.5 к табл.10.

Таблица 10 тождественна табл. 7, которую мы получили из табл. 5 двумя шагами. Поскольку целочисленный план не найден, составляем по первой строке дополнительное условие и вписываем его в строку s2 табл. 10. Вычисляем для этой строки двойственные модифицированные отношения

5/6:(-5/6)=-1, 1/3:(-1/3)=-1.

Таблица 10

-s1 -y1 -x3

1

x2=

y2=

x1=

y3=

s2=

-1/6 1/3 -1

-5/2 0 -6

1/2 0 1

-7/6 1/3 0

-5/6 -1/3 0

2/3

2

2

2/3

-2/3

z=

5/6 1/3 4

14/3

Они равны, но небольшая «прикидка» позволяет установить, что второй столбец за разрешающий принять выгоднее. Делая следующий шаг, получаем табл. 11 (тождественную табл. 9). в которой записан оптимальный целочисленный план. Двойственным симплекс-методом он получен не тремя шагами, а двумя.

Таблица 11

-s1 -s2 -x3

1

x2=

y2=

x1=

y3=

y1=

-1 -1 -1

-5/2 0 -6

1/2 0 1

-2 1 0

5/2 -3 0

0

2

2

0

2

z=

0 1 4

4