Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЗАПИСКА.DOC
Скачиваний:
23
Добавлен:
15.06.2014
Размер:
907 Кб
Скачать
☆

3 Численные эксперименты

3.1 Алгоритм программы

3.2 Описание программы

Данная программа предназначена для решения задачи целочисленного линейного программирования. В не реализован метод Гомори.

Рисунок 1

Инструкция пользователя:

  1. В поле ввода «Целевая функция» (рис. 1) ввести целевую функцию.

  2. В поле ввода «Ограничения» ввести ограничения.

  3. При нажатии на клавишу «Решение» в окне выводится решение и результат.

3.3 Анализ численных экспериментов

3.3.1 Содержательный анализ

Математическая форма записи задачи выглядит следующим образом:

Рассмотрим пример:

Введем обозначения: Тогда математическая модель примет следующий вид:

После того, как задача выписана в специальной форме, можно записать симплекс-таблицу.

b

L

0

20

40

20

40

3

2

1

0

0

2

0

0

2

1

6

3

4

0

0

4

0

0

3

4

1

1

0

0

0

1

0

1

0

0

1

0

0

1

0

1

0

0

0

1

Решаем ее симплекс методом:

b

L

-40

20

-40

20

40

2

2

-1

0

0

2

0

0

2

1

2

3

-4

0

0

4

0

0

3

4

1

1

0

0

0

1

0

1

0

0

1

0

0

1

0

1

0

0

0

1

b

L

-80

20

-40

20

-40

2

2

-1

0

0

1

0

0

2

-1

2

3

-4

0

0

0

0

0

3

-4

1

1

0

0

0

1

0

1

0

0

1

0

0

1

0

1

0

0

0

1

B

L

-280/3

-20/3

-40/3

20

-40

2/3

-2/3

5/3

0

0

1

0

0

2

-1

2/3

1/3

-4/3

0

0

0

0

0

3

-4

1/3

-1/3

0

0

0

1

0

1

0

0

1

0

0

1

0

1

0

0

0

1

b

L

-310/3

-20/3

-40/3

-10

-30

2/3

-2/3

5/3

0

0

1/2

0

0

1/2

-1/2

2/3

1/3

-4/3

0

0

-3/2

0

0

-3/2

-5/2

1/3

-1/3

0

0

0

1

0

1

0

0

1/2

0

0

-1/2

0

1

0

0

0

1

Таблица оптимальна, но не целочисленная, решаем задачу методом Гомори. Строим отсечение по строке 1, и решаем двойственным симплекс методом.

B

L

-280/3

-20/3

-40/3

20

-40

2/3

-2/3

5/3

0

0

1

0

0

2

-1

2/3

1/3

-4/3

0

0

0

0

0

3

-4

1/3

-1/3

0

0

0

1

0

1

0

0

1

0

0

1

0

1

0

0

0

1

-2/3

-1/3

-2/3

0

0

b

L

-90

-20

0

-10

-30

2

-2

3

0

0

1/2

0

0

1/2

-1/2

0

1

-2

0

0

-3/2

0

0

-3/2

-5/2

1

-1

0

0

0

1

0

1

0

0

1/2

0

0

-1/2

0

1

0

0

0

1

2

-3

2

0

0

Таблица снова оптимальна, но нецелочисленна. Поэтому строим еще одно отсечение по строке 2, и решаем двойственным симплекс-методом.

B

L

-90

-20

0

-10

-30

2

-2

3

0

0

1/2

0

0

1/2

-1/2

0

1

-2

0

0

-3/2

0

0

-3/2

-5/2

1

-1

0

0

0

1

0

1

0

0

1/2

0

0

-1/2

0

1

0

0

0

1

2

-3

2

0

0

-1/2

0

0

-1/2

-1/2

b

L

-80

-20

0

-20

-20

2

-2

3

0

0

0

0

0

1

-1

0

1

-2

0

0

0

0

0

-3

-1

1

-1

0

0

0

1

0

1

0

0

1

0

0

-1

½

1

0

0

0

1

2

-3

2

0

0

1

0

0

-2

-1/2

Т. к. все базисные переменные положительны и целочисленные, то симплекс-таблица оптимальна:

Отсюда следует, что максимальный экономический эффект равен 80, на первый и на второй компьютеры были установлена вторая функция.

Для решения задач целочисленного линейного программирования была написана программа, реализующая алгоритм метода отсечений Гомори.