
- •Общая и основная задачи линейного программирования.
- •Свойства задач линейного программирования. Графический метод решения задач линейного программирования.
- •Графический метод
- •Алгоритм симплекс-метода.
- •Методы искусственного базиса
- •Двойственная задача линейного программирования
- •Постановка транспортной задачи
- •Методы нахождения начального допустимого плана перевозок груза
- •Метод потенциалов
- •Алгоритм решения транспортной задачи методом потенциалов
С
Исследование операций
одержание математического программирования. Постановка общей и основной задач линейного программирования.
Линейное программирование является основным разделом математического программирования. Термин математическое программирование появился приблизительно в 1950 г., его предложил математик Р. Дорфман. Содержание математического программирования составляют теория и методы решения задач о нахождении экстремумов функций на множествах, определяемых линейными и нелинейными ограничениями (равенствами и/или неравенствами). Математическое программирование является одним из разделов науки об исследовании операций.
К задачам линейного программирования относятся задачи, в которых требуется найти максимальное или минимальное значение некоторой линейной целевой функции на множестве, определяемом системой линейных равенств или неравенств. В линейном программировании существует класс задач, структура которого позволяет создать специальные методы их решения, выгодно отличающиеся от методов решения задач общего характера. Так в линейном программировании появился раздел транспортных задач.
Наиболее исследованной областью математического программирования является линейное программирование. Полученные результаты столь значительны, что достигнутый здесь уровень позволяет решать большинство практических задач.
При выборе наиболее подходящего способа описания реальных процессов приходится сталкиваться с рядом трудностей, которые можно подразделить на две группы. Одна группа связана с построением математической модели процесса, а другая - с методами решения этой модели. Теория математических моделей является предметом специального курса и требует от исследователя знания той области, которой принадлежит моделируемый объект. Здесь же будут рассмотрены традиционные примеры, иллюстрирующие применение метода математического моделирования в экономических задачах.
Для практического решения экономической задачи математическими методами прежде всего ее следует записать с помощью математических выражений (уравнений, неравенств и т. п.),
т. е. составить экономико-математическую: модель. Приведем общую схему формирования такой модели:
1) выбор некоторого числа переменных величин, заданием числовых значений которых однозначно определяется одно из возможных состояний исследуемого явления;
2) выражение взаимосвязей, присущих решению, в виде математических соотношений (уравнений, неравенств). Эти соотношения образуют систему ограничений задачи
3) количественное выражение выбранного критерия оптимальности в форме целевой функции;
4) математическая формулировка задали как задачи нахождения экстремума целевой функции при условии выполнения ограничений накладываемых на переменные.
Общая и основная задачи линейного программирования.
Общая задача. Найти максимальное значение линейной целевой функции.
z = c1x1 + c2x2 + … + cnxn
при линейных ограничениях
xj >= 0, j = 1, n = {1,2,…,n}
Определение 1.1. Совокупность чисел х = (х1, х2,..., хn), удовлетворяющих ограничениям (1.2), называется допустимым решением или планом.
Определение 1.2. План х* =(х1*, х2*,...,хn*), при котором целевая функция (1.1) принимает свое максимальное значение, называется оптимальным.
Каноническая форма. Задачу линейного программирования будем считать приведенной к каноническому виду, если
1) требуется найти максимум целевой функции;
2) система ограничений (1.2) содержи! только равенства;
3) правые части системы ограничений неотрицательны.
Переход от общей формы к канонической:
1) если в задаче требуется найти минимум целевой функции, то вводим новую целевую функцию z1 = -z, тогда max z1 = -min z;
2) чтобы перейти от неравенства к равенству в системе ограничений, необходимо прибавить (вычесть) дополнительную неотрицательную переменную к левой части неравенства;
3) если в правой части системы ограничений имеются отрицательные числа, то необходимо умножить на "-1" обе части равенства, в котором в правой части стоит отрицательное число.
Задачу линейного программирования в канонической форме называют основной задачей.
Свойства задач линейного программирования. Графический метод решения задач линейного программирования.
Свойства задач линейного программирования.
Рассмотрим следующую основную задачу линейного программирования:
z = c1x1 + c2x2 + … + cnxn max
при ограничениях
,
Перепишем ограничения этой задачи к немирной форме:
x1Р,+х2Р2+... + х n Р n , (1.3)
где Р1, ,...,Рn и Р0 - k-мерные вектор-столбцы, составленные из коэффициентов при неизвестных и свободных членах системы ограничений основной задачи:
Определение 1. План х = (x1,х2,...,хn) называется
опорным планом основной задачи линейного программирования, если его положительные коэффициенты (хj >0) стоят при линейно независимых векторах Рj.
Так как векторы Р: являются k-мерными, то из определения
опорного плана следует, что число его положительных компонент не может быть больше числа К.
Определение 2. Опорный план называется невырожденным, если он содержит ровно k положительных компонент, в противном случае он называется вырожденным.
Свойства задач линейного программирования тесным образом связаны со свойствами выпуклых множеств.
Определение 3. Пусть х(|),...х(m) - произвольные точки евклидова пространства Rn. Выпуклой линейной комбинацией этих точек называется сумма: а,х(|) + ...+ аmх(m), где аi; -произвольные неотрицательные числа, сумма которых равна 1.
Определение 4. Множество называется выпуклым, если вместе с любыми двумя своими точками оно содержит и отрезок прямой, соединяющий эти точки.
Определение 5. Точка х выпуклого множества называется угловой, если она не может быть представлена в виде выпуклой линейной комбинации каких-нибудь двух других различных точек данного множества.
Сформулируем первое свойство задач ЛП.
Теорема 1.1. Множество планов любой задачи линейного программирования является выпуклым (если оно не пусто).
Определение 7. Непустое множество планов задачи линейного программирования называется многогранником решений, а всякая угловая точка многогранника решений — вершиной.
Сформулируем второе свойство задач ЛП.
Теорема 1.2. Если задача линейного программирования имеет оптимальный план, то экстремальное значение целевая функция задачи принимает в одной из вершин многогранника решений. Если экстремальное значение целевая функция принимает более чем в одной вершине, то она принимает его на ребре (грани), содержащем эти вершины.
Теорема
1.3. Если
система векторов Р1,...Рm
()
линейно независима и такова, что
х1Р1+... + хmРm=Р0,
где все хj >= 0, то точка х = (х,, х2,..., хт,0,...,0) является вершиной многогранника решений.
Теорема 1.4. Если х = (х,,х2,..., хп) - вершина многогранника решений, то векторы Рj , соответствующие положительным хj > 0, линейно независимы.