- •Н.А. Курганова
- •Тема 1. Постановка задачи линейного программирования. Геометрический метод решения задач линейного программирования. Основные понятия, теоремы, следствия. 6
- •Тема 2. Симплекс-метод. 45
- •Введение
- •Тема 1. Постановка задачи линейного программирования. Геометрический метод решения задач линейного программирования. Основные понятия, теоремы, следствия.
- •1.1. Постановка задачи линейного программирования
- •Виды задач лп:
- •Постановка задачи линейного программирования (лп).
- •1.2. Геометрический метод решения задач лп
- •Варианты одр:
- •Теоретические вопросы
- •Лабораторная работа №1. Геометрическое решение задачи лп при помощи математического пакета MathCad
- •I. Оформление исходных данных.
- •II. Определение области допустимых решений
- •III. Построение линии уровня
- •IV. Нахождение оптимального плана и оптимального значения целевой функции
- •Лабораторная работа №2. Геометрическое решение задачи лп при помощи математического пакета Maple
- •I. Оформление заголовка.
- •II. Определение области допустимых решений.
- •III. Построение линии уровня.
- •IV. Нахождение оптимального плана и оптимального значения целевой функции
- •Задания для самостоятельной работы
- •Задачи о составлении плана производства
- •Задачи о пищевом рационе
- •Лабораторная работа №3. Решение оптимизационных задач в системах MathCad, Maple, Excel, в специализированном пакете SimplexWin.
- •I. Оформление исходных данных.
- •II. Нахождение оптимального плана и оптимального значения целевой функции.
- •Решение оптимизационных задач в специализированном пакете SimplexWin. Http://www.Simplexwin.Narod.Ru/
- •I. Оформление исходных данных.
- •II. Нахождение оптимального плана и оптимального значения целевой функции.
- •I. Оформление исходных данных.
- •II. Нахождение оптимального плана и оптимального значения целевой функции.
- •Задания для самостоятельной работы
- •Тема 2. Симплекс-метод.
- •Для реализации симплекс-метода необходимо освоить
- •3 Основных момента [7]:
- •2.1. Табличный симплекс-метод (в чистом виде)
- •2.2. Табличный симплекс метод. Метод искусственного базиса (м-метод)
- •Общий алгоритм решения задачи м-методом.
- •Теоретические вопросы
- •Лабораторная работа №4. Реализация пошагового алгоритма решения задачи линейного программирования табличным симплекс-методом средствами Excel при выполнении всех условий
- •I. Проверка выполнения условий, необходимых для решения задачи табличным симплекс-методом в чистом виде.
- •II. Оформление исходных данных.
- •III. Нахождение оптимального плана и оптимального значения целевой функции.
- •Лабораторная работа №5. Реализация пошагового алгоритма решения задачи линейного программирование методом искусственного базиса (м-методом) средствами Excel
- •I. Проверка выполнения условий, необходимых для решения задачи табличным симплекс-методом.
- •II. Оформление исходных данных.
- •III. Нахождение оптимального плана и оптимального значения целевой функции.
- •Задания для самостоятельной работы
- •Приложение 1
- •Приложение 2
- •Библиографический список
Теоретические вопросы
Какая задача называется общей задачей линейного программирования?
Какая задача называется стандартной?
Какая задача называется канонической?
Какое решение называется базисным?
Что на плоскости задает каждое неравенство системы ограничений?
Как построить полуплоскость в заданной системе координат?
Какими из перечисленных точек (0,0); (1,-1); (1,1) может задаваться контрольная точка для определения полуплоскости неравенства x1+x2≥0?
Что на плоскости может представлять собой область допустимых решений? Какие варианты области допустимых решений возможны?
Что на плоскости графически представляет собой целевая функция?
Как на плоскости построить вектор ?
Что показывает вектор при решении задачи линейного программирования геометрическим методом при целевой функцииf(x)=c1x1+c2x2max?
Как на плоскости построить линии уровня целевой функции?
Через какие две точки проходит линия уровня, если ее рассматривать как вектор нормали к вектору ?
В чем заключается геометрическая интерпретация нахождения оптимального плана?
Что графически представляет собой оптимальный план, если область допустимых решений – выпуклый многоугольник?
Какие варианты оптимальных планов возможны?
Что означает запись относительно допустимых и оптимальных решений?
Что означает запись относительно допустимых и оптимальных решений?
Лабораторная работа №1. Геометрическое решение задачи лп при помощи математического пакета MathCad
Задание. Реализуйте все нижеприведенные шаги в математическом пакете MathCad, необходимые для решения задачи ЛП графическим методом.
Поясним последовательность действий при решения задачи на примере.
Рассмотрим задачу в стандартной форме с двумя переменными.
Задача. Найти значения переменных x1 и x2, при которых
при ограничениях
Поскольку в задаче только две переменные, можно рассмотреть геометрическую интерпретацию данной задачи на плоскости и найти ее решение геометрическим методом.
Порядок выполнения работы:
I. Оформление исходных данных.
Откройте математический пакет MathCad и введите заголовок Геометрический метод решения задач линейного программирования, выбрав команду Insert–Text Region.
Наберите целевую функцию, систему ограничений и условие неотрицательности переменных в текстовом процессоре (Word), используя редактор формул, а затем скопируйте «текст» задания на рабочий лист в пакете MathCad.
II. Определение области допустимых решений
Введите заголовок Определение области допустимых решений, выбрав команду Insert – Text Region.
Введите заголовок Построение прямых, выбрав команду Insert–Text Region.
Возьмите первое ограничение из системы и запишите его в виде равенства.
Не забудьте вести логическое равенство. Таким образом, первое ограничение задает полуплоскость, относительно прямой
Выразите x2.
Для этого:
- выделите x2;
- выберите команду Symbolics-Variable – Solve;
- получите выражение
.
Для построения этой прямой в MathCad присвойте данному выражению имя функции y1(x), которая будет задавать эту прямую, то есть .
Аналогичным образом поступите с остальными 3 ограничениями системы, опираясь на шаги 3-4.
Постройте графики функций y1(x), y2(x), y3(x), y4(x) на одном чертеже.
Для этого:
- на панели инструментов выберите иконку для построения графиков в декартовой системе координат;
- введите все функции y1(x), y2(x), y3(x), y4(x) через запятую в окне построения графика функций;
- щелкните дважды ЛКМ на окне построения графиков функций, и в появившемся окне выберите тип Crossed;
- задайте по осям Ox и Oy только положительные значения с клавиатуры, учитывая, что по условию определяют первую координатную четверть.
- увеличьте окно, отображающее графики функций (рис. 1).
Рис. 1. Прямые, ограничивающие искомые полуплоскости.
Определите полуплоскость для каждого ограничения системы, используя панель инструментов Programming.
Введите функцию, которая поможет определить какую полуплоскость, верхнюю или нижнюю, задает первое ограничение. Для этого запрограммируйте проверку принадлежности точки искомой полуплоскости. Если точка принадлежит полуплоскости, то в итоге должна получиться «истина»-«1», иначе – «0».
- введите u1(x):=
- выберите панель программирования и на ней Add line;
- поставьте курсор в появившийся маркер первой строки и наберите 1(верно);
- выберите на панели программирования if;
- наберите в появившемся маркере первое неравенство, как оно задано в системе ограничений;
- поставьте курсор в появившийся маркер второй строки и наберите 0;
- выберите на панели программирования if;
- наберите в появившемся маркере первое неравенство системы ограничений, но с противоположным знаком;
Таким образом, для первого ограничения функция имеет вид:
.
Точка с координатами первой прямой, то есть ее можно взять в качестве контрольной для определения полуплоскости.
- введите u1(0,0)=, т.е. подставьте в функцию u1(x1,x2) точку с координатами (0, 0)
- получите , т.е. точка (0,0) принадлежит полуплоскости, разделяемой прямойy1(x), в противном случае не принадлежит
Аналогичным образом определите полуплоскости для оставшихся ограничений системы, выбрав, в качестве контрольной, точку с координатами .
Для последних двух ограничений системы точка с координатами не принадлежит искомым полуплоскостям.
Мысленно выделите область допустимых решений, задаваемых данной системой ограничений. В итоге получился выпуклый пятиугольник.