Содержание
Введение
1. Основные понятия линейного программирования
2. Целочисленное программирование
2.1 Постановка задачи и методы решения
2.2 Пример решения задачи целочисленного программирования
3. Параметрическое программирование
3.1 Задача с параметром в целевой функции
3.2 Задача с параметром в свободных членах системы ограничений
3.3 Задача, целевая функция и правая часть ограничений которой содержит параметр
4. Целочисленное параметрическое программирование
4.1 Пример решения задачи целочисленного программирования с параметром в целевой функции
4.2 Пример решения задачи целочисленного программирования с параметром в свободных членах системы ограничений
Заключение
Список литературы
Введение
Математическое программирование представляет собой математическую дисциплину, занимающуюся изучением экстремальных задач и разработкой методов их решения.
В общем виде математическая постановка экстремальной задачи состоит в определении наибольшего или наименьшего значения целевой функции
В зависимости от свойств функций
Прежде всего задачи математического программирования делятся на задачи линейного и нелинейного программирования. При этом если все функции
Наиболее изученным разделом математического программирования является линейное программирование. Для решения задач линейного программирования разработан целый ряд эффективных методов, алгоритмов и программ.
Отдельными классами задач математического программирования являются задачи целочисленного, параметрического и дробно-линейного программирования.
В первой главе данной работы рассмотрены основные понятия линейного программирования.
Во второй главе сформулирована задача целочисленного программирования и рассмотрены методы её решения. Приведён пример решение задачи целочисленного программирования.
В третьей главе рассмотрены задачи параметрического программирования и на примерах показаны методы решения различных задач этого типа.
В четвертой главе сформулированы и исследованы задачи целочисленного параметрического программирования. Самостоятельно была решена задача целочисленного параметрического программирования с параметром в целевой функции двумя способами. На основе решения данной задачи определен метод решения задач такого типа. Также решена задача целочисленного программирования с параметром в свободных членах системы ограничений.
При написании диплома использовалась следующая справочная литература: Кузнецов Ю.Н., Кузубов В.И., Волощенко А.Б. Математическое программирование, Ашманов С.А. Линейное программирование. Некоторые примеры были взяты из книг Копылов В.И. Лекции и практические занятия по математическому программированию, Акулич И.Л. Математическое программирование в примерах и задачах. Алгоритмы методов решения задач целочисленного и параметрического программирования наиболее доступно и полно, на мой взгляд, раскрываются в книге Акулич И.Л.
1. Основные понятия линейного программирования
Различают три основные формы задач линейного программирования в зависимости от ограничений разного типа.
Стандартная задача линейного программирования имеет вид:
В матричной форме задача (1.1) - (1.2) имеет вид:
где
Каноническая задача линейного программирования имеет вид:
или, в матричной форме:
Общая задача линейного программирования – часть ограничений выражается в виде неравенств, часть – в виде уравнений. Кроме того, не ко всем переменным относится условие неотрицательности:
Теорема. Стандартная, каноническая и общая задачи линейного программирования эквивалентны.
Замечание. Тот случай, когда в стандартной задаче требуется минимизировать линейную форму, легко сводится к задаче на максимум – следует рассмотреть задачу на максимум функции
2. Целочисленное программирование
Значительная часть экономических задач, относящихся к задачам линейного программирования, требует целочисленного решения. К ним относятся задачи, у которых переменные величины означают количество единиц неделимой продукции, например распределение производственных заданий между предприятиями, раскрой материалов, загрузка оборудования, распределение судов по линиям, самолетов по рейсам, а также задачи по производству неделимой продукции. Если единица составляет малую часть всего объема производства, то оптимальное решение находят обычным симплексным методом, округляя его до целых единиц, исходя из смысла задачи. В противном случае округление может привести к решению, далекому от оптимального целочисленного решения.
2.1 Постановка задачи и методы решения
Задача целочисленного программирования формулируется так же, как и задача линейного программирования, но включается дополнительное требование, состоящее в том, что значения переменных, составляющих оптимальное решение, должны быть целыми неотрицательными числами.
Требуется найти минимальное значение линейной функции
при ограничениях
Предположим, что задача линейного программирования имеет многогранник решений, приведенные на рис.2.1. Если наложить требование целочисленности, то допустимое множество решений такой задачи представляет собой совокупность изолированных целочисленных точек и не
является выпуклым. Если добавить новые ограничения, связывающие внешние целочисленные точки, а затем в качестве многогранника решений использовать все выпуклое множество, ограниченное осями координат и новым контуром, то получим новую задачу линейного программирования со следующими свойствами:
1) новый многогранник решений содержит все целые точки, заключавшиеся в первоначальном многограннике решений; любая его угловая точка является целой;
2) так как линейная функция достигает оптимума в угловой точке многогранника решений, то построением такого многогранника и обеспечивается целочисленность оптимального решения.
Если найти решение задачи (2.1.1)-(2.1.4) симплексным методом, то оно может оказаться как целочисленным, так и нет (примером задачи линейного программирования, решение которой всегда является целочисленным, служит транспортная задача). В общем же случае для определения оптимального плана задачи (2.1.1)-(2.1.4) требуется специальные методы. В настоящее время существует несколько таких методов, из которых наиболее известным является метод Гомори.
Метод Гомори. Метод решения поставленной задачи, предложенный Гомори, основан на симплексном методе и состоит в следующем. Симплексным методом находится оптимальный план задачи без учета условия целочисленности. Если оптимальный план целочисленный, то вычисления заканчивают, если же оптимальный план содержит хотя бы одну дробную компоненту
Недостатком метода Гомори является требование целочисленности для всех переменных: как основных, выражающих единицы продукции, так и для дополнительных, выражающих величину неиспользованных ресурсов, которые могут быть и дробными.
Дополнительное ограничение составляется следующим образом. Пусть оптимальный план
Предположим, что
где
Так как по условию
также целое неотрицательное число.
Преобразуя это неравенство в уравнение, вычитая из его левой части целую неотрицательную дополнительную переменную
Если в оптимальном плане несколько дробных
Из изложенного выше следует, что процесс определения оптимального плана задачи целочисленного программирования методом Гомори включает следующие основные этапы:
Используя симплексный метод, находят решение задачи (2.1.1)-(2.1.3) без учета требования целочисленности переменных.
Составляют дополнительное ограничение для переменной, которая в оптимальном плане задачи (2.1.1)-(2.1.3) имеет максимальное дробное значение, а в оптимальном плане задачи (2.1.1)-(2.1.4) должна быть целочисленной.
Используя двойственный симплекс-метод, находят решение задачи, получающейся из задачи (2.1.1)-(2.1.3) в результате присоединения дополнительного ограничения.
В случае необходимости составляют еще одно дополнительное ограничение и продолжают итерационный процесс до получения оптимального плана задачи (2.1.1)-(2.1.4) или установления ее неразрешимости.
Метод ветвей и границ. Продолжим рассмотрение задачи (2.1.1)-(2.1.4),состоящей в определении минимального значения линейной функции
при ограничениях
Как и при решении сформулированной задачи методом Гомори, первоначально надо найти симплексным методом или методом искусственного базиса оптимальный план задачи без учета целочисленности переменных. Пусть им является план
Если же среди компонент плана
Предположим, что найденный оптимальный план
При решении задач линейного программирования
Одна из задач неразрешима, а другая имеет целочисленный оптимальный план. Тогда этот план и значение целевой функции на нем и дают решение исходной задачи.
Одна из задач неразрешима, а другая имеет оптимальный план, среди компонент которого есть дробные числа. Тогда рассматриваем вторую задачу и в ее оптимальном плане выбираем одну из компонент, значение которой равно дробному числу, и строим две задачи, аналогичные задачам
Обе задачи разрешимы. Одна из задач имеет оптимальный целочисленный план, а в оптимальном плане другой задачи есть дробные числа. Тогда вычисляем значения целевой функции на этих планах и сравниваем их между собой. Если на целочисленном оптимальном плане значение целевой функции больше или равно ее значению на плане, среди компонент которого есть дробные числа, то данный целочисленный план является оптимальным для исходной задачи и он вместе со значением целевой функции на нем дает исходное решение.
Если же значение целевой функции больше на плане, среди компонент которого есть дробные числа, то следует взять одно из таких чисел и для задачи, план которой рассматривается, необходимо построить две задачи, аналогичные
4. Обе задачи разрешимы, и среди оптимальных планов обеих задач есть дробные числа. Тогда вычисляем значение целевой функции на данных оптимальных планах и рассматриваем ту из задач, для которой значение целевой функции является наибольшим. В оптимальном плане этой задачи выбираем одну из компонент, значение которой является дробным числом, и строим две задачи, аналогичные
Итак, процесс нахождения решения задачи целочисленного программирования (2.1.1)-(2.1.4) методом ветвей и границ включает следующие основные этапы:
1. Находят решение задачи целочисленного программирования (2.1.1)-(2.1.3).
2. Составляют дополнительные ограничения для одной из переменных, значение которой в оптимальном плане задачи (2.1.1)-(2.1.3) является дробным числом.
3. Находят решение задач
4. В случае необходимости составляют дополнительные ограничения для переменной, значение которой является дробным, формулируют задачи, аналогичные задачам
2.2 Пример решения задачи целочисленного программирования
Пример 2.2.1. Найти наименьшее значение
Решение. Умножим второе неравенство на (-1):
Для того чтобы перейти от неравенств к равенствам, добавим к левым частям неравенств дополнительные переменные:
За базисные переменные примем дополнительные переменные
Таблица 2.2.1
БП | СЧ | | | | | | |
| 1 | 2 | -1 | 1 | 1 | 0 | 0 |
| 2 | -4 | 2 | -1 | 0 | 1 | 0 |
| 5 | 3 | 0 | 1 | 0 | 0 | 1 |
С | 0 | -1 | 1 | 3 | 0 | 0 | 0 |
Таблица 2.2.2
БП | СЧ | | | | | | |
| 1 | 2 | -1 | 1 | 1 | 0 | 0 |
| 3 | -2 | 1 | 0 | 1 | 1 | 0 |
| 4 | 1 | 1 | 0 | -1 | 0 | 1 |
С | -3 | -7 | 4 | 0 | 0 | 0 | 0 |
Таблица 2.2.3
БП | СЧ | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 |
| 3 | -2 | 1 | 0 | 1 | 1 | 0 |
| 1 | 3 | 0 | 0 | -2 | -1 | 1 |
С | -15 | 1 | 0 | 0 | -7 | -4 | 0 |
Таблица 2.2.4
БП | СЧ | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 |
| 11/3 | 0 | 1 | 0 | -1/3 | 1/3 | 2/3 |
| 1/3 | 1 | 0 | 0 | -2/3 | -1/3 | 1/3 |
С | -46/3 | 0 | 0 | 0 | -19/3 | -11/3 | -1/3 |
Получили оптимальное решение этой задачи
Тогда согласно формуле (2.1.5), дополнительное ограничение имеет вид:
Умножим обе части последнего неравенства на (-1) и преобразуем его в уравнение:
Допишем коэффициенты этого уравнения снизу к таблице 2.2.4, добавим дополнительный столбец, соответствующий переменной
Таблица 2.2.5
БП | СЧ | | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 | 0 |
| 11/3 | 0 | 1 | 0 | -1/3 | 1/3 | 2/3 | 0 |
| 1/3 | 1 | 0 | 0 | -2/3 | -1/3 | 1/3 | 0 |
| -2/3 | 0 | 0 | 0 | -2/3 | -1/3 | -2/3 | 1 |
С | -46/3 | 0 | 0 | 0 | -19/3 | -11/3 | -1/3 | 0 |
Применим двойственный симплекс – метод, в результате получим
Таблица 2.2.6
БП | СЧ | | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 | 0 |
| 3 | 0 | 1 | 0 | -1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 0 | -1 | -1/2 | 0 | 1/2 |
| 1 | 0 | 0 | 0 | 1 | 1/2 | 1 | -3/2 |
С | -15 | 0 | 0 | 0 | -6 | -7/2 | 0 | -1/2 |
Оптимальное целочисленное решение:
3. Параметрическое программирование
Общая задача линейного программирования содержит постоянные величины: коэффициенты
Поэтому возникает необходимость исследовать поведение оптимального решения задачи линейного программирования при изменении ее коэффициентов и свободных членов. Исследования подобного рода составляют предмет параметрического линейного программирования. Параметрическое программирование возникло в связи с изучением задач планирования производства и дает возможность управлять оптимальным планированием различных экономических процессов, которые могут быть описаны линейной математической моделью.
3.1 Задача с параметром в целевой функции
Предположим, что коэффициенты линейной функции
Дана линейная функция
и система линейных ограничений
Считая значение параметра
В результате при данном значении
Для всех
В том случае, если задача при
1) если
2) если
3) если
Определив все значения параметра
После каждой итерации определяется либо промежуток, в котором для всех значений параметра задача имеет один и тот же оптимальный план, либо промежуток, в котором для всех значений параметра задача не имеет решения.
Процесс нахождения решения задачи включает следующие этапы:
1. Считая значение параметра
2. Определяют множество значений параметра
3. Полагают значения параметра
4. Определяют множество значений параметра
Пример 3.1.1. Для всех значений параметра
при условиях:
Решение. Возьмем (число 0 выбрано произвольно) и найдем симплекс-методом оптимальный план.
Таблица 3.1.1.
БП | СЧ | | | | | |
| 12 | 1 | 1 | 1 | 0 | 0 |
| 10 | 1 | -1 | 0 | 1 | 0 |
| 6 | -1 | 1 | 0 | 0 | 1 |
С | 0 | -2 | | 0 | 0 | 0 |
Таблица 3.1.2.
БП | СЧ | | | | | |
| 6 | 2 | 0 | 1 | 0 | 0 |
| 16 | 0 | 0 | 0 | 1 | 0 |
| 6 | -1 | 1 | 0 | 0 | 1 |
С | | | 0 | 0 | 0 | |
Таблица 3.1.3.
БП | СЧ | | | | | |
| 3 | 1 | 0 | 1/2 | 0 | -1/2 |
| 16 | 0 | 0 | 0 | 1 | 1 |
| 9 | 0 | 1 | 1/2 | 0 | 1/2 |
С | | 0 | 0 | | 0 | |
Определим значения
Следовательно, при
Таблица 3.1.4.
БП | СЧ | | | | | |
| 11 | 1 | 0 | 1/2 | 1/2 | 0 |
| 16 | 0 | 0 | 0 | 1 | 1 |
| 1 | 0 | 1 | 1/2 | -1/2 | 0 |
С | | 0 | 0 | | | 0 |
Этот план оптимален при условии:
Следовательно, при
Таблица 3.1.5.
БП | СЧ | | | | | |
| 10 | 1 | -1 | 0 | 1 | 0 |
| 16 | 0 | 0 | 0 | 1 | 1 |
| 2 | 0 | 2 | 1 | -1 | 0 |
С | 20 | 0 | | 0 | 2 | 0 |
Этот план оптимален при условии:
2. Задача с параметром в свободных членах системы ограничений
Дана линейная функция и система линейных ограничений
Алгоритм решения задачи (3.2.1)-(3.2.2) подобен рассмотренному выше алгоритму решения задачи (3.1.1)-(3.1.2). Полагая значение параметра
и числа
Если при
1. Считая значение параметра
2. Находят значения параметра
3. Выбирают значения параметра
4. Определяют множество значений параметра
Пример 3.2.1. Для каждого значения параметра найти максимальное значение функции
Решение. Считая
Таблица 3.2.1.
БП | СЧ | | | | | |
| | 1 | 1 | 1 | 0 | 0 |
| | 2 | -1 | 0 | 1 | 0 |
| | -2 | 2 | 0 | 0 | 1 |
С | | 10 | -1 | 0 | 0 | 0 |
Таблица 3.2.2.
БП | СЧ | | | | | |
| | 2 | 0 | 1 | 0 | -1/2 |
| | 1 | 0 | 0 | 1 | 1/2 |
| | -1 | 1 | 0 | 0 | 1/2 |
С | | 9 | 0 | 0 | 0 | 1/2 |
Оптимальный план при
Следовательно, при
Таблица 3.2.3.
БП | СЧ | | | | | |
| | 0 | 2 | 1 | 0 | 1/2 |
| | 0 | 1 | 0 | 1 | 1 |
| | 1 | -1 | 0 | 0 | -1/2 |
С | | 0 | 9 | 0 | 0 | 5 |
Если
При
Таблица 3.2.4.
БП | СЧ | | | | | |
| | -4 | 0 | -2 | 0 | 1 |
| | 3 | 0 | 1 | 1 | 0 |
| | 1 | 1 | 1 | 0 | 0 |
С | | 11 | 0 | 1 | 0 | 0 |
3. Задача, целевая функция и правая часть ограничений которой содержит параметр
Пример 3.3.1. Для всех значений параметра найти максимальное значение функции
Решение. Пусть
Таблица 3.3.1.
БП | СЧ | | | | |
| | 1 | -1 | 1 | 0 |
| | -1 | 2 | 0 | 1 |
С | | | | 0 | 0 |
Таблица 3.3.2.
БП | СЧ | | | | |
| | 1/2 | 0 | 1 | 1/2 |
| | -1/2 | 1 | 0 | 1/2 |
С | | | 0 | 0 | |
План
а среди компонент вектора
Следовательно, при
Если
Таблица 3.3.3.
БП | СЧ | | | | |
| | 0 | 1 | 1 | 1 |
| | 1 | -2 | 0 | -1 |
С | | 0 | | 0 | |
Вектор
то есть при
Если
Мы рассмотрели интервал
Таблица 3.3.4.
БП | СЧ | | | | |
| | 0 | 1 | 1 | 1 |
| | 1 | 0 | 2 | 1 |
С | | 0 | 0 | | |
Таким образом, при
4. Целочисленное параметрическое программирование
Математическое программирование представляет собой математическую дисциплину, занимающуюся изучением экстремальных задач и разработкой методов их решения. Наиболее изученным разделом математического программирования является линейное программирование. Для решения задач линейного программирования разработан целый ряд эффективных методов и алгоритмов. Отдельными классами задач математического программирования являются задачи целочисленного, параметрического и дробно-линейного программирования, примеры решения которых представлены практически во всех учебных пособиях. Но нигде не рассматриваются примеры решения задач комбинированного типа, например, параметрического целочисленного программирования или параметрического дробно-линейного программирования и так далее. Рассмотрим пример решения задачи параметрического целочисленного программирования.
4.1 Пример решения задачи целочисленного программирования с параметром в целевой функции
Пример 4.1.1. Для каждого значения
Решение. I способ. Перейдем от неравенств к равенствам, добавляя к левым частям неравенств дополнительные переменные:
Возьмем
Таблица 4.1.1.
БП | СЧ | | | | | | |
| 1 | 2 | -1 | 1 | 1 | 0 | 0 |
| 2 | -4 | 2 | -1 | 0 | 1 | 0 |
| 5 | 3 | 0 | 1 | 0 | 0 | 1 |
С | 0 | | 1 | 3+4 | 0 | 0 | 0 |
Таблица 4.1.2.
БП | СЧ | | | | | | |
| 1 | 2 | -1 | 1 | 1 | 0 | 0 |
| 3 | -2 | 1 | 0 | 1 | 1 | 0 |
| 4 | 1 | 1 | 0 | -1 | 0 | 1 |
С | -3 | | | 0 | -3 | 0 | 0 |
Таблица 4.1.3.
БП | СЧ | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 |
| 3 | -2 | 1 | 0 | 1 | 1 | 0 |
| 1 | 3 | 0 | 0 | -2 | -1 | 1 |
С | -15 | | 0 | 0 | | | 0 |
Таблица 4.1.4.
БП | СЧ | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 |
| 11/3 | 0 | 1 | 0 | -1/3 | 1/3 | 2/3 |
| 1/3 | 1 | 0 | 0 | -2/3 | -1/3 | 1/3 |
С | | 0 | 0 | 0 | | | |
Определим значения параметра t, при которых план, соответствующий таблице 4.1.4 останется оптимальным:
Следовательно, при
Таблица 4.1.5.
БП | СЧ | | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 | 0 |
| 11/3 | 0 | 1 | 0 | -1/3 | 1/3 | 2/3 | 0 |
| 1/3 | 1 | 0 | 0 | -2/3 | -1/3 | 1/3 | 0 |
| -2/3 | 0 | 0 | 0 | -2/3 | -1/3 | -2/3 | 1 |
С | | 0 | 0 | 0 | | | | 0 |
Применим двойственный симплекс-метод. Получим:
Таблица 4.1.6.
БП | СЧ | | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 | 0 |
| 3 | 0 | 1 | 0 | -1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 0 | -1 | -1/2 | 0 | 1/2 |
| 1 | 0 | 0 | 0 | 1 | 1/2 | 1 | -3/2 |
С | | 0 | 0 | 0 | | | 0 | |
Получили целочисленное решение. Рассмотрим, при всех ли
Следовательно, при
Из таблицы 4.1.6 получим
Таблица 4.1.7.
БП | СЧ | | | | | | | |
| 2 | 0 | 0 | 1 | 0 | 1 | -2 | 3 |
| 4 | 0 | 1 | 0 | 0 | 1/2 | 1 | -1/2 |
| 1 | 1 | 0 | 0 | 0 | 0 | 1 | -1 |
| 1 | 0 | 0 | 0 | 1 | 1/2 | 1 | -3/2 |
С | | 0 | 0 | 0 | 0 | -1/2 | | |
Получили целочисленное решение, посмотрим, является ли оно оптимальным:
Следовательно, для
Таблица 4.1.8.
БП | СЧ | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 |
| 3 | -2 | 1 | 0 | 1 | 1 | 0 |
| 1 | 3 | 0 | 0 | -2 | -1 | 1 |
С | - | | 0 | 0 | | | 0 |
Решение целочисленное. Определим
Следовательно, для
Таблица 4.1.9.
БП | СЧ | | | | | | |
| 2 | 0 | 0 | 1/2 | 1 | 1/2 | 0 |
| 13/3 | 0 | 1 | 1/6 | 0 | 1/2 | 2/3 |
| 5/3 | 1 | 0 | 1/3 | 0 | 0 | 1/3 |
С | | 0 | 0 | | 0 | -1/2 | |
Определим значения параметра
Решим с условием целочисленности.
Таблица 4.1.10.
БП | СЧ | | | | | | | |
| 2 | 0 | 0 | 1/2 | 1 | 1/2 | 0 | 0 |
| 13/3 | 0 | 1 | 1/6 | 0 | 1/2 | 2/3 | 0 |
| 5/3 | 1 | 0 | 1/3 | 0 | 0 | 1/3 | 0 |
| -1/3 | 0 | 0 | -1/6 | 0 | -1/2 | -2/3 | 1 |
С | | 0 | 0 | | 0 | -1/2 | | 0 |
Таблица 4.1.11.
БП | СЧ | | | | | | | |
| 2 | 0 | 0 | 1/2 | 1 | 1/2 | 0 | 0 |
| 4 | 0 | 1 | 0 | 0 | 0 | 0 | 1 |
| 3/2 | 1 | 0 | 1/4 | 0 | -1/4 | 0 | 1/2 |
| 1/2 | 0 | 0 | 1/4 | 0 | 3/4 | 1 | -3/2 |
С | | 0 | 0 | | 0 | | 0 | |
Таблица 4.1.12.
БП | СЧ | | | | | | | | |
| 2 | 0 | 0 | 1/2 | 1 | 1/2 | 0 | 0 | 0 |
| 4 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 |
| 3/2 | 1 | 0 | 1/4 | 0 | -1/4 | 0 | 1/2 | 0 |
| 1/2 | 0 | 0 | 1/4 | 0 | 3/4 | 1 | -3/2 | 0 |
| -1/2 | 0 | 0 | -1/4 | 0 | -3/4 | 0 | -1/2 | 1 |
С | | 0 | 0 | | 0 | | 0 | | 0 |
Таблица 4.1.13.
БП | СЧ | | | | | | | | |
| 2 | 0 | 0 | 1/2 | 1 | 1/2 | 0 | 0 | 0 |
| 3 | 0 | 1 | 1/2 | 0 | -3/2 | 0 | 0 | 2 |
| 1 | 1 | 0 | 0 | 0 | -1 | 0 | 0 | 1 |
| 2 | 0 | 0 | 1 | 0 | 3 | 1 | 0 | -3 |
| 1 | 0 | 0 | 1/2 | 0 | 3/2 | 0 | 1 | -2 |
С | | 0 | 0 | | 0 | | 0 | 0 | |
Получили, что не существует такого значения параметра
Основные этапы решения задачи параметрического целочисленного программирования:
1. При
2. Находят значения
3. Если найденный оптимальный план целочисленный, то переходят к следующему пункту. Если найденный оптимальный план не целочисленный, то вводят дополнительное ограничение и вычисления продолжают до получения нового оптимального плана. Если и он является не целочисленным, то вводят новое ограничение. Процесс продолжают до тех пор, пока не будет найден целочисленный оптимальный план, или будет доказано, что задача не имеет целочисленного оптимального решения. Находят значения
4. Выбирают
5. Вычисления продолжают до тех пор, пока не будут исследованы все значения параметра
II способ. При решении предыдущего примера мы, после нахождения оптимального плана, сначала находили значения параметра
Возьмем
Таблица 4.2.1.
БП | СЧ | | | | | | |
| 1 | 2 | -1 | 1 | 1 | 0 | 0 |
| 2 | -4 | 2 | -1 | 0 | 1 | 0 |
| 5 | 3 | 0 | 1 | 0 | 0 | 1 |
С | 0 | | 1 | 3+4 | 0 | 0 | 0 |
Таблица 4.2.2.
БП | СЧ | | | | | | |
| 1 | 2 | -1 | 1 | 1 | 0 | 0 |
| 3 | -2 | 1 | 0 | 1 | 1 | 0 |
| 4 | 1 | 1 | 0 | -1 | 0 | 1 |
С | -3 | | | 0 | -3 | 0 | 0 |
Таблица 4.2.3.
БП | СЧ | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 |
| 3 | -2 | 1 | 0 | 1 | 1 | 0 |
| 1 | 3 | 0 | 0 | -2 | -1 | 1 |
С | -15 | | 0 | 0 | | | 0 |
Таблица 4.2.4.
БП | СЧ | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 |
| 11/3 | 0 | 1 | 0 | -1/3 | 1/3 | 2/3 |
| 1/3 | 1 | 0 | 0 | -2/3 | -1/3 | 1/3 |
С | | 0 | 0 | 0 | | | |
План оптимальный, но не целочисленный. Составим дополнительное ограничение для переменной
Дополнительное ограничение имеет вид:
Таблица 4.2.5.
БП | СЧ | | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 | 0 |
| 11/3 | 0 | 1 | 0 | -1/3 | 1/3 | 2/3 | 0 |
| 1/3 | 1 | 0 | 0 | -2/3 | -1/3 | 1/3 | 0 |
| -2/3 | 0 | 0 | 0 | -2/3 | -1/3 | -2/3 | 1 |
С | | 0 | 0 | 0 | | | | 0 |
Применим двойственный симплекс-метод. Получим:
Таблица 4.2.6.
БП | СЧ | | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 | 0 |
| 3 | 0 | 1 | 0 | -1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 0 | -1 | -1/2 | 0 | 1/2 |
| 1 | 0 | 0 | 0 | 1 | 1/2 | 1 | -3/2 |
С | | 0 | 0 | 0 | | | 0 | |
Получили оптимальное целочисленное решение при
Следовательно, при
Таблица 4.2.7.
БП | СЧ | | | | | | | |
| 4 | 0 | 0 | 1 | 2 | 1 | 0 | 0 |
| 3 | -2 | 1 | 0 | 1 | 1 | 0 | 0 |
| 0 | 2 | 0 | 0 | -2 | -1 | 0 | 1 |
| 1 | 3 | 0 | 0 | -2 | -1 | 1 | 0 |
С | | | 0 | 0 | | | 0 | 0 |
Получили оптимальное целочисленное решение при
Следовательно, при
Таблица 4.2.8.
БП | СЧ | | | | | | | |
| 2 | 0 | 0 | 1 | 0 | 0 | -2 | 3 |
| 4 | 0 | 1 | 0 | 0 | 1/2 | 1 | -1/2 |
| 1 | 1 | 0 | 0 | 0 | 0 | 1 | -1 |
| 1 | 0 | 0 | 0 | 1 | 1/2 | 1 | -3/2 |
С | -7t-9 | 0 | 0 | 0 | 0 | -1/2 | 9t+6 | (-26t-19)/2 |
Получили целочисленное решение задачи, найдем значения параметра, при которых оно оптимально:
Следовательно, при
Таблица 4.2.9.
БП | СЧ | | | | | | | |
| 2/3 | 0 | 0 | 1/3 | 0 | 0 | -2 | 1 |
| 13/3 | 0 | 1 | 1/6 | 0 | 1/2 | 1 | 0 |
| 5/3 | 1 | 0 | 1/3 | 0 | 0 | 1 | 0 |
| 2 | 0 | 0 | 1/2 | 1 | 1/2 | 1 | 0 |
С | (5t-8)/3 | 0 | 0 | (26t+19)/6 | 0 | -1/2 | (t-1)/3 | 0 |
Получили оптимальный план, но он не целочисленный. Составим дополнительное ограничение для переменной
Таблица 4.2.10.
БП | СЧ | | | | | | | | |
| 2/3 | 0 | 0 | 1/3 | 0 | 0 | -2 | 1 | 0 |
| 13/3 | 0 | 1 | 1/6 | 0 | 1/2 | 1 | 0 | 0 |
| 5/3 | 1 | 0 | 1/3 | 0 | 0 | 1 | 0 | 0 |
| 2 | 0 | 0 | 1/2 | 1 | 1/2 | 1 | 0 | 0 |
| -1/3 | 0 | 0 | -1/6 | 0 | -1/2 | -2/3 | 0 | 1 |
С | (5t-8)/3 | 0 | 0 | (26t+19)/6 | 0 | -1/2 | (t-1)/3 | 0 | 0 |
Таблица 4.2.11.
БП | СЧ | | | | | | | | |
| 2 | 0 | 0 | 5/6 | 0 | 3/2 | 0 | 1 | -3 |
| 4 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 3/2 |
| 3/2 | 1 | 0 | 1/4 | 0 | -1/4 | 0 | 0 | 3/2 |
| 2 | 0 | 0 | 1/2 | 1 | 1/2 | 0 | 0 | 3/2 |
| 1/2 | 0 | 0 | 1/4 | 0 | 3/4 | 1 | 0 | -3/2 |
С | (3t-15)/2 | 0 | 0 | (51t+39)/12 | 0 | (-t-1)/2 | 0 | 0 | (t-1)/2 |
Таблица 4.2.12.
БП | СЧ | | | | | | | | | |
| 2 | 0 | 0 | 5/6 | 0 | 3/2 | 0 | 1 | -3 | 0 |
| 4 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 3/2 | 0 |
| 3/2 | 1 | 0 | 1/4 | 0 | -1/4 | 0 | 0 | 3/2 | 0 |
| 2 | 0 | 0 | 1/2 | 1 | 1/2 | 0 | 0 | 3/2 | 0 |
| 1/2 | 0 | 0 | 1/4 | 0 | 3/4 | 1 | 0 | -3/2 | 0 |
| -1/2 | 0 | 0 | -1/4 | 0 | -3/4 | 0 | 0 | -1/2 | 1 |
С | (3t-15)/2 | 0 | 0 | (51t+39)/12 | 0 | (-t-1)/2 | 0 | 0 | (t-1)/2 | 0 |
Таблица 4.2.13.
БП | СЧ | | | | | | | | | |
| 5 | 0 | 0 | 7/3 | 0 | 6 | 0 | 1 | 0 | -6 |
| 3 | 0 | 1 | 1/2 | 0 | -3/2 | 0 | 0 | 0 | 3 |
| 1 | 1 | 0 | 0 | 0 | -1 | 0 | 0 | 0 | 3 |
| 2 | 0 | 0 | 1/2 | 1 | 1/2 | 0 | 0 | 0 | 3 |
| 2 | 0 | 0 | 1 | 0 | 3 | 1 | 0 | 0 | 3 |
| 1 | 0 | 0 | 1/2 | 0 | 3/2 | 0 | 0 | 1 | -2 |
С | t-7 | 0 | 0 | (8t+7)/2 | 0 | (-2t+1)/2 | 0 | 0 | 0 | t-1 |
Решение целочисленное, посмотрим, при каких значениях параметра t оно оптимально:
Следовательно, для
2. Пример решения задачи целочисленного программирования с параметром в свободных членах системы ограничений
Пример 4.2.1 Для каждого значения
Решение. Перейдем от неравенств к равенствам, добавляя к левым частям неравенств дополнительные переменные:
Возьмем
Таблица 4.3.1.
БП | СЧ | | | | | | |
| 1+t | 2 | -1 | 1 | 1 | 0 | 0 |
| 2 | -4 | 2 | -1 | 0 | 1 | 0 |
| 5 | 3 | 0 | 1 | 0 | 0 | 1 |
С | 0 | -1 | 1 | 3 | 0 | 0 | 0 |
Таблица 4.3.2.
БП | СЧ | | | | | | |
| 1+t | 2 | -1 | 1 | 1 | 0 | 0 |
| 3+t | -2 | 1 | 0 | 1 | 1 | 0 |
| 4-t | 1 | 1 | 0 | -1 | 0 | 1 |
С | -3-3t | -7 | 4 | 0 | -3 | 0 | 0 |
Таблица 4.3.3.
БП | СЧ | | | | | | |
| 4+2t | 0 | 0 | 1 | 2 | 1 | 0 |
| 3+t | -2 | 1 | 0 | 1 | 1 | 0 |
| 1-2t | 3 | 0 | 0 | -2 | -1 | 1 |
С | -15-7t | 1 | 0 | 0 | -7 | -4 | 0 |
Таблица 4.3.4.
БП | СЧ | | | | | | |
| 4+2t | 0 | 0 | 1 | 2 | 1 | 0 |
| (11-t)/3 | 0 | 1 | 0 | -1/3 | 1/3 | 2/3 |
| (1-2t)/3 | 1 | 0 | 0 | -2/3 | -1/3 | 1/3 |
С | | 0 | 0 | 0 | -19/3 | -11/3 | -1/3 |
Решение
Дополнительное ограничение имеет вид:
Таблица 4.3.5.
БП | СЧ | | | | | | | |
| 4+2t | 0 | 0 | 1 | 2 | 1 | 0 | 0 |
| (11-t)/3 | 0 | 1 | 0 | -1/3 | 1/3 | 2/3 | 0 |
| (1-2t)/3 | 1 | 0 | 0 | -2/3 | -1/3 | 1/3 | 0 |
| -2/3 | 0 | 0 | 0 | -2/3 | -1/3 | -2/3 | 1 |
С | | 0 | 0 | 0 | -19/3 | -11/3 | -1/3 | 0 |
Применим двойственный симплекс-метод. Получим:
Таблица 4.3.6.
БП | СЧ | | | | | | | |
| 4+2t | 0 | 0 | 1 | 2 | 1 | 0 | 0 |
| (9-t)/3 | 0 | 1 | 0 | -1 | 0 | 0 | 1 |
| -2t/3 | 1 | 0 | 0 | -1 | -1/2 | 0 | 1/2 |
| 1 | 0 | 0 | 0 | 1 | 1/2 | 1 | -3/2 |
С | (-19t-45)/3 | 0 | 0 | 0 | -6 | -7/2 | 0 | -1/2 |
Получили оптимальное целочисленное решение
Таблица 4.3.7.
БП | СЧ | | | | | | |
| 5 | 3 | 0 | 1 | 0 | 0 | 1 |
| 7/2 | -1/2 | 1 | 0 | 0 | 1/2 | 1/2 |
| (2t-1)/2 | -3/2 | 0 | 0 | 1 | -1/2 | -1/2 |
С | 111/6 | -19/2 | 0 | 0 | 0 | -1/2 | -7/2 |
Получили, что
Дополнительное ограничение имеет вид:
Таблица 4.3.8.
БП | СЧ | | | | | | | |
| 5 | 3 | 0 | 1 | 0 | 0 | 1 | 0 |
| 7/2 | -1/2 | 1 | 0 | 0 | 1/2 | 1/2 | 0 |
| (2t-1)/2 | -3/2 | 0 | 0 | 1 | -1/2 | -1/2 | 0 |
| -1/2 | -1/2 | 0 | 0 | 0 | -1/2 | -1/2 | 1 |
С | 111/6 | -19/2 | 0 | 0 | 0 | -1/2 | -7/2 | 0 |
Таблица 4.3.9.
БП | СЧ | | | | | | | |
| 5 | 3 | 0 | 1 | 0 | 0 | 1 | 0 |
| 3 | -1 | 1 | 0 | 0 | 0 | 0 | 1 |
| t-1 | -2 | 0 | 0 | 1 | 0 | -1 | 1 |
| 1 | 1 | 0 | 0 | 0 | 1 | 1 | -2 |
С | 114/6 | -9 | 0 | 0 | 0 | 0 | -3 | -1 |
Получили оптимальное целочисленное решение
Интервалами оптимальности целочисленных планов для различных значений параметра являются:
Заключение
Отдельными классами задач математического программирования являются задачи целочисленного, параметрического и дробно – линейного программирования. В данной работе были рассмотрены задачи комбинированного типа, а именно задачи целочисленного параметрического программирования.
Определены основные этапы решения задачи целочисленного программирования с параметром в целевой функции. Рассмотрены алгоритмы решения задач целочисленного программирования с параметром в целевой функции и задач целочисленного программирования с параметром в системе ограничений, приведены соответствующие примеры. По результатам работы подготовлена и сдана в печать статья "Решение задачи целочисленного параметрического программирования". Основные этапы работы были представлены в виде доклада на итоговой научной конференции студентов ФМФ ЧГПУ им. И.Я.Яковлева по секции "Алгебра".
Список литературы
Кузнецов Ю.Н., Кузубов В.И., Волощенко А.Б. Математическое программирование. – М.: Высшая школа, 1980. – 300 с.
Копылов В.И. Лекции и практические занятия по математическому программированию. – Учебное пособие. – Чебоксары: Чувашский государственный педагогический университет имени И.Я.Яковлева, 2005. – 109 с.
Акулич И.Л. Математическое программирование в примерах и задачах. – М.: Высшая школа, 1986. –
Ашманов С.А. Линейное программирование. М.: Наука, 1981. – 304 с.
Юдин Д.Б., Гольдштейн Е.Г. Линейное программирование. - М.: Физматлит, 1963. – 776 с.
Васильев Ф.П., Иваницкий А.Ю. Линейное программирование. - М.: Факториал , 2003. - 347с.
57
57
! | Как писать дипломную работу Инструкция и советы по написанию качественной дипломной работы. |
! | Структура дипломной работы Сколько глав должно быть в работе, что должен содержать каждый из разделов. |
! | Оформление дипломных работ Требования к оформлению дипломных работ по ГОСТ. Основные методические указания. |
! | Источники для написания Что можно использовать в качестве источника для дипломной работы, а от чего лучше отказаться. |
! | Скачивание бесплатных работ Подводные камни и проблемы возникающие при сдаче бесплатно скачанной и не переработанной работы. |
! | Особенности дипломных проектов Чем отличается дипломный проект от дипломной работы. Описание особенностей. |
→ | по экономике Для студентов экономических специальностей. |
→ | по праву Для студентов юридических специальностей. |
→ | по педагогике Для студентов педагогических специальностей. |
→ | по психологии Для студентов специальностей связанных с психологией. |
→ | технических дипломов Для студентов технических специальностей. |
→ | выпускная работа бакалавра Требование к выпускной работе бакалавра. Как правило сдается на 4 курсе института. |
→ | магистерская диссертация Требования к магистерским диссертациям. Как правило сдается на 5,6 курсе обучения. |
Дипломная работа | Формирование устных вычислительных навыков пятиклассников при изучении темы "Десятичные дроби" |
Дипломная работа | Технологии работы социального педагога с многодетной семьей |
Дипломная работа | Человеко-машинный интерфейс, разработка эргономичного интерфейса |
Дипломная работа | Организация туристско-экскурсионной деятельности на т/к "Русский стиль" Солонешенского района Алтайского края |
Дипломная работа | Разработка мероприятий по повышению эффективности коммерческой деятельности предприятия |
Дипломная работа | Совершенствование системы аттестации персонала предприятия на примере офиса продаж ОАО "МТС" |
Дипломная работа | Разработка системы менеджмента качества на предприятии |
Дипломная работа | Организация учета и контроля на предприятиях жилищно-коммунального хозяйства |
Дипломная работа | ЭКСПРЕСС-АНАЛИЗ ФИНАНСОВОГО СОСТОЯНИЯ ООО «АКТ «ФАРТОВ» |
Дипломная работа | Психическая коммуникация |