
- •1.Теоретическая часть
- •1.1 Линейное программирование
- •1.2 Общий вид задач линейного программирования
- •1.3 Транспортная задача
- •1.3.1 Общий вид транспортной задачи
- •Замечание(для открытых задач)
- •1.3.2 Опорный план транспортной задачи
- •1.3.3 Метод северо- западного угла
- •1.3.4 Минимальной стоимости по строке
- •1.3.5 Минимальной стоимости по столбцу
- •1.4 Распределительный метод оптимального плана
- •1.5 Метод потенциалов.
- •1.5.1Формулировка транспортной задачи
- •1.5.2 Алгоритм решения метода потенциалов
- •1.5.3 Вычисление общей стоимости транспортировки
- •1.5.4 Разделение ячеек на базисные и свободные
- •1.5.5 Проверка плана на вырожденность
- •1.5.6 Вычисление потенциалов
- •1.5.7 Проверка решения на оптимальность
- •1.5.8 Построение цикла
- •1.5.9 Перераспределение поставок по циклу
- •1.5.10 Зацикливание решения
- •1.6 Пример решения задачи
1.Теоретическая часть
1.1 Линейное программирование
Линейное программирование – это направление математического программирования, изучающее методы решения экстремальных задач, которые характеризуются линейной зависимостью между переменными и линейным критерием.
Необходимым условием постановки задачи линейного программирования являются ограничения на наличие ресурсов, величину спроса, производственную мощность предприятия и другие производственные факторы.
Сущность линейного программирования состоит в нахождении точек наибольшего или наименьшего значения некоторой функции при определенном наборе ограничений, налагаемых на аргументы и образующих систему ограничений, которая имеет, как правило, бесконечное множество решений. Каждая совокупность значений переменных (аргументов функции F), которые удовлетворяют системе ограничений, называется допустимым планом задачи линейного программирования. Функция F, максимум или минимум которой определяется, называется целевой функцией задачи. Допустимый план, на котором достигается максимум или минимум функции F, называется оптимальным планом задачи.
Система ограничений, определяющая множество планов, диктуется условиями производства. Задачей линейного программирования (ЗЛП) является выбор из множества допустимых планов наиболее выгодного (оптимального).
1.2 Общий вид задач линейного программирования
В общей постановке задача линейного программирования выглядит следующим образом:
Имеются какие-то переменные х = (х1 , х2 , … хn ) и функция этих переменных f(x) = f (х1 , х2 , … хn ), которая носит название целевой функции. Ставится задача: найти экстремум (максимум или минимум) целевой функции f(x) при условии, что переменные x принадлежат некоторой области G:
В зависимости от вида функции f(x) и области G и различают разделы математического программирования: квадратичное программирование, выпуклое программирование, целочисленное программирование и т.д. Линейное программирование характеризуется тем, что а) функция f(x) является линейной функцией переменных х1 , х2 , … хn б) область G определяется системой линейных равенств или неравенств.
Математическая модель любой задачи линейного программирования включает в себя:
нахождения минимума линейной целевой функции (линейной формы) вида:
задача в которой фигурируют ограничения в форме неравенств, называется — основной задачей линейного программирования (ОЗЛП)
,
.
Задача линейного программирования будет иметь канонический вид, если в общей задаче вместо первой системы неравенств имеет место система уравнений с ограничениями в форме равенства.
,
Основную задачу можно свести к канонической путём введения дополнительных переменных.
Задачи линейного программирования наиболее общего вида (задачи со смешанными ограничениями: равенствами и неравенствами, наличием переменных, свободных от ограничений) могут быть приведены к эквивалентным (имеющим то же множество решений) заменами переменных и заменой равенств на пару неравенств.
Легко заметить, что задачу нахождения максимума можно заменить задачей нахождения минимума, взяв коэффициенты с обратным знаком.
максимум или минимум целевой функции (критерий оптимальности);
систему ограничений в форме линейных уравнений и неравенств;
требование неотрицательности переменных.