Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab_praktikum_chast2.doc
Скачиваний:
51
Добавлен:
18.11.2019
Размер:
5.03 Mб
Скачать

Лабораторная работа №23 «Целочисленное программирование»

Теоретическая часть

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

Огромное число экономических задач носят целочисленный характер, что связано, прежде всего, с физической неделимостью многих расчетов: нельзя построить 2,5 завода, купить 1,5 трактора, задействовать на работу 3,3 человека, построить 100,7 скотомест и т.п. В большинстве случаев практическую задачу решают обычным симплексным методом, а затем округляют до целых чисел. Это оправдано в том случае, если дробная часть составляет очень малую часть от целого. Но иногда такой подход может внести большие изменения. Например, довольно существенно выбрать покупку одного или двух тракторов, если в результате решения без условия целочисленности переменная приняла значение 1,5.

Математическая запись задачи целочисленного программирования.

Алгоритм метода Гомори для решения задач целочисленного программирования на максимум целевой функции

  1. Задача целочисленного программирования решается симплексным методом без условия целочисленности до получения оптимального решения.

  2. Если полученное оптимальное решение имеет целое значение переменных, то оптимальное решение целочисленной задачи найдено. Если хотя бы одна переменная имеет дробное значение, то переходят к п.3

  3. Вводится дополнительное ограничение.

Правила введения дополнительного ограничения:

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

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

  • тип нового ограничения "";

  • чтобы ввести дополнительное ограничение в симплексную таблицу, надо привести его к типу "=" (каноническая форма записи) и умножить на "-1";

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

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

  • Для этой строки подсчитываются двойственные симплексные отношения, т.е. отношения неотрицательных оценок (j) к строго отрицательным коэффициентам разрешающей строки. Если в разрешающей строке нет ни одного строго отрицательного элемента при переменных, то система ограничений не совместна в области целочисленных решений.

  • По наименьшему по абсолютной величине отношению (по наибольшему отрицательному отношению) выбирается разрешающий столбец.

  • Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]