
- •Методические указания
- •Тема 1. Задача линейного программирования.
- •1.1 Постановка задачи
- •1.2 Задачи на построение математической модели задач линейного программирования.
- •1.2.2 Задача на составление рациональных смесей.
- •Тема 2. Графический метод решения задач линейного программирования.
- •Тема 3. Симплексный метод решения задач линейного программирования.
- •Тема 4. Симплекс-метод с искусственным базисом.
- •Тема 5. Решение задач линейного программирования средствами табличного процессора ms Excel .
- •Тема 6. Транспортная задача.
- •Тема 7. Решение транспортной задачи средствами табличного процессора ms Excel .
- •Приложение 1
- •4. Требования к отчёту
- •4. Требования к отчёту
- •Практическая работа №3 Тема: Транспортная задача.
- •3. Задание
- •4. Требования к отчёту
- •Список использованной литературы
1.2.2 Задача на составление рациональных смесей.
Пусть организация имеет возможность готовить различные виды смесей (продуктов) из закупаемых различных видов сырья. Каждый вид сырья содержит разное количество питательных компонентов (ингредиентов).
Установлено, что продукция должна удовлетворять по крайней мере некоторым минимальным требованиям с точки зрения питательности (полезности). Перед руководством организации стоит задача определить количество каждого i-го сырья, образующего смесь минимальной стоимости при соблюдении требований к общему расходу смеси и ее питательности.
Введем условные обозначения: xi — количество i-го сырья в смеси; т — количество видов сырья; п — количество ингредиентов в сырье; аij — количество j-го ингредиента, содержащегося в единице i-го вида сырья; bj — минимальное количество j-го ингредиента, содержащегося в единице смеси; сi — стоимость единицы i-го сырья; q — минимальный вес смеси.
В общем виде задача может быть записана
при следующих ограничениях:
- на общий расход смеси;
- на питательность смеси;
- на неотрицательность переменных.
Пример 2. Для жизнедеятельности человека среднего возраста ежедневно необходимо потреблять 118 г белков, 56 г жиров, 500 г углеводов, 8 г минеральных солей. Количество питательных веществ, содержащихся в 1 кг продуктов питания, а также стоимость этих продуктов в магазине приведены в табл. 1.3. Требуется выявить суточный рацион, содержащий не менее указанных выше необходимых питательных веществ и обеспечивающий минимальную общую стоимость закупаемых продуктов.
Таблица 1.3
Питательные вещества |
Содержание питательных веществ в 1 кг продуктов, г | |||||
Мясо |
Рыба |
Масло |
Картофель |
Сыр |
Крупа | |
Белки |
180 |
190 |
70 |
21 |
260 |
130 |
Жиры |
20 |
3 |
865 |
2 |
310 |
30 |
Углеводы |
0 |
0 |
6 |
200 |
20 |
650 |
Минеральные соли |
9 |
10 |
12 |
70 |
60 |
20 |
Цена 1 кг продукта, руб |
250 |
150 |
200 |
40 |
180 |
60 |
Обозначим через x1, x2, x3, x4, x5, x6 количество покупаемого каждого вида сырья. Тогда целевая функция данной задачи должна обеспечить минимальные затраты на покупку продуктов питания - будет записана в виде:
при следующих ограничениях
Тема 2. Графический метод решения задач линейного программирования.
Графический метод основан на геометрической интерпретации задачи линейного программирования (ЗЛП) и применяется или решения задач с двумя переменными, когда ограничения выражены неравенствами.
Рассмотрим графический метод решения на примере.
Пример 3. ЗЛП имеет вид:
Целевая функция
при ограничениях
Решение: Каждое из неравенств системы ограничений геометрически определяет полуплоскость. Пересечение этих полуплоскостей задает область допустимых решений- планов ЗЛП.
В общем случае такая область представляет собой одну из следующих фигур: выпуклый многоугольник, неограниченная многоугольная область, луч, отрезок, точка или пустая область. В последнем случае говорят, что ограничения не совместны.
Для построения данной области необходимо начертить граничные прямые по уравнениям системы ограничений, в которых неравенства заменяются равенствами.
I
(I)
рис. 2.1.
Пример построения такой области для решаемой задачи приведен на рис. 2.1. Первым неравенством из примера 3 определяются две области на плоскости.
Одна
из них — это область возможных планов
задачи, другая — область, где этих планов
нет. Границей между ними будет прямая,
которую мы построим, заменив неравенство
равенством
(прямая I). Подставив точку O(0,0) в неравенство
и проверив его справедливость, определяем
область возможных решений.
По знаку первого неравенства находим
область решения задачи. Аналогично,
заменив неравенства равенствами,
строим остальные
и
определяем область решений задачи,
учитывая знаки неравенств.
(II) (III) рис.
2.2 рис.
2.3
рис.
2.4 (IV) рис.
2.5 (V)
(I) (II) (III) (IV) (V) A B C D E L
рис.
2.6
На
рисунке номер прямой определяет
порядковый номер ограничения.
Латинскими буквами обозначены точки
пересечения прямых. Неравенства
означают,
что область определения будет расположена
в 1-м квадранте координатной плоскости.
Таким образом, выделенная на рис. 2.6
область ABCDE
будет
областью допустимых решений, определенной
ограничениями задачи. Крайние точки
полученной выпуклой многогранной
области будут соответствовать допустимым
базисным решениям задачи.
Для нахождения оптимального плана необходимо построить многоугольник пересечения целевой плоскости с многогранной выпуклой областью ограничений и выбрать на нем вершину с максимальным значением. Для упрощения этой графической
задачи пользуются свойствами целевой плоскости, позволяющими получить решение, проецируя изображение на плоскость ограничений.
Сначала определяют направление максимального возрастания значения целевой функции, или что то же, направление наискорейшего подъема по целевой плоскости. Для этого находят вектор градиента G, координатами которого являются коэффициенты целевой функции. Для данного примера он имеет значение G=(1, 2). Прямая, идущая в направлении градиента, также обозначена на рисунке буквой G.
Для
определения оптимального решения
необходимо построить прямую L=,
перпендикулярную линии градиента и
перемещать ее параллельно вдоль линии
градиента до самой удаленной точки
области. Такие прямые, перемещаемые
вдоль линии градиента являются не чем
иным, как линиями уровня плоскости. Если
решается задача поиска максимума,
то линии уровня перемещаются в направлении
возрастания градиента до поиска самой
удаленной точки области ограничений.
В случае поиска минимума — линии
перемещаются в направлении, противоположном
возрастанию градиента до самой удаленной
точки. На рисунке показана линия
уровня L,
определяющая
оптимальную точку B,
в которой значение целевой функции
достигает своего максимума.
Зная, какая точка задает оптимальное решение, можно точно вычислить ее координаты. Для данного примера точка B находится на пересечении прямых III и I. Записав систему уравнений этих прямых, определяем координаты точки пересечения:
В результате получаем Хопт=(1,17; 5,68). Подставляя найденный результат в целевую функцию, имеем искомое оптимальное значение F(Хопт)=1·1,17+2·5,68=12,53.
В зависимости от вида области ограничений и типа целевой функции решением может быть не одна точка, а бесконечное множество точек отрезка. Так, если в приведенном выше примере градиент будет перпендикулярен линии ВС (см. рис. 2.6), то линия уровня целевой плоскости будет включать в себя весь отрезок BC полностью и, следовательно, в качестве решения можно брать любую из точек этого отрезка.
Пример 4. ЗЛП имеет вид:
Целевая
функция
при ограничениях
Решение:
Построив область допустимых решений, получаем, что она пуста из-за несовместности ограничений. Решений нет.
(I) (II) (III) (IV) рис.
2.7
Иногда решения может не быть вовсе. Так, очевидно, решение будет отсутствовать в случае несовместности ограничений, когда область допустимых решений является пустым множеством. Кроме того, решение может отсутствовать в том случае, когда область допустимых решений задана бесконечной полуплоскостью. Если она не ограничена сверху, то для нее невозможно отыскать максимум, а если снизу — минимум.
Пример 5. ЗЛП имеет вид:
Целевая функция
при ограничениях
Решение:
(I) (II) (III) G рис.
2.8 A
Из графика видно, что область допустимых решений одна точка A(0;2) - она и является оптимальным решением, так как целевая функция стремится к минимуму и оптимальная точка на области допустимых решений ищется в направлении, противоположном вектору-градиенту. Если бы целевая функция стремилась к максимуму, то ЗЛП не имела бы решения.