- •1.Теоретический аспект целочисленного программирования
- •1.1 Предпосылки появления целочисленного программирования
- •1.2 Основные понятия целочисленного программирования
- •1.3 Целочисленное программирование как метод оптимизации
- •2. Методы решения задач целочисленного программирования
- •2.1 Симплекс-метод
- •2.1 Первый алгоритм Гомори
- •2.2 Второй алгоритм Гомори
- •2.3 Метод ветвей и границ
- •Целочисленный программирование задача ком
- •Заключение
- •Список литературы
Целочисленный программирование задача ком
Решение задачи ЛП в неканонической форме симплекс-методом
Пример. Решить следующую задачу ЛП в неканонической форме симплекс-методом: f(x) = x1 – x2 – 3x3 → min (5.11) при ограничениях:
(5.12) x1, x2, x3≥ 0 (5.13) Умножая обе части (5.12) на -1 и прибавляя в левые части системы дополнительные (или слабые) переменные x4 ≥0, x 5 ≥0, x6 ≥0, получим каноническую форму (слабые переменные на целевую функцию не влияют):
(5.14)
Так
как все слабые переменные входят со
знаком "+", то их можно взять в
качестве базисных и составить начальное
допустимое базисное решение x0=(0,0,0,1,2,5).
В данном случае исключать базисные
переменные из целевой функции нет
надобности (так как они в ней отсутствуют),
поэтому целевую функцию записываем
сразу в виде
f(x)
= x1 –
x2 –
3x3
(5.15)
(требование
симплекс-метода). С помощью начального
допустимого базисного решения x0 и
выражений (5.14) и (5.15) составим начальную
симплекс-таблицу (здесь f(x0)=0).
Так
как x0 неоптимален
(в нулевой строке есть положительные
числа 1 и 3), то с обозначенным ведущим
элементом строим новое допустимое
базисное решение. И так далее. На четвертой
итерации (шаге) получаем таблицу:
В
качестве упражнения проверьте правильность
вычисления элементов этой таблицы,
выполнив пропущенные две итерации
(таблицы).
Как
видно из последней таблицы, оптимальным
решением задачи является x0000=(1/3,
11/3, 4) и
f(x0000)=-46/3.
Как
итог рассмотрения двух примеров, приведем
алгоритм симплекс-метода:
1.
привести задачу к канонической форме;
2.
привести систему ограничений к
диагональной форме и определить базисные
переменные;
3.
исключить базисные переменные из целевой
функции;
4.
построить симплекс-таблицу;
5.
проверить найденное допустимое базисное
решение на оптимальность: если оно
оптимально, то решение закончить; если
нет, то перейти к пункту 6;
6.
вычислить ведущий элемент таблицы;
7.
провести симплексное преобразование;
8.
построить новое начальное допустимое
базисное решение и перейти к пункту 5.
Заключение
В данной работе была рассмотрена сущность целочисленного программирования. Затронуты специальные методы решения целочисленных задач. Такие задачи возникают при моделировании разнообразных производственно-экономических, технических, военных и других ситуаций. В то же время ряд проблем самой математики может быть сформулирован как целочисленные экстремальные задачи.
Задачи такого типа весьма актуальны, так как к их решению сводится анализ разнообразных ситуаций, возникающих в экономике, технике, военном деле и других областях. Эти задачи интересны и с математической точки зрения. С появлением ЭВМ, ростом их производительности повысился интерес к задачам такого типа и к математике в целом.
