Тема 2. Введение в линейное программирование (ЛП) 1 § 2.1. Правила построения математической модели Этапы формализация проблемы как задачи ЛП : понять проблему, составить описательную (вербальную) модель задачи; идентифицировать основные переменные задачи; выбрать количественную меру эффективности цели; представить эту меру эффективности как линейную функцию относительно основных переменных; идентифицировать и представить все ограничения как линейные уравнения или неравенства относительно основных переменных; собрать количественные данные или сделать соответствующие оценки для всех параметров модели. 2 Математические предположения для задачи ЛП: определенность (детерминированность) – все параметры модели известны точно или могут быть оценены; линейность (эквивалентна пропорциональности и аддитивности) – все функциональные соотношения модели линейны относительно основных переменных; пропорциональность – эффект влияния переменной задачи пропорционален значению этой переменной; аддитивность – эффект влияния нескольких переменных задачи равен сумме эффектов от каждой переменной; делимость – все основные переменные задачи могут принимать произвольные вещественные значения в определенном диапазоне (бесконечно делимы). 3 Пример 2.1.1. (Построение оптимального плана производства) Исходные Расход ресурсов на 1 ресурсы тонну готовой продукции Сахар Какао Прибыль Шоколад Конфеты 1 5 5 1 2 3 Запас ресурса 4 10 геометрич. решение 4 Переменные: x1 – суточный объем производства шоколада, x2 – суточный объем производства конфет. Целевая функция: Общая прибыль от реализации суточного плана определяется функцией z 5 x1 3 x2 Ограничения: содержательно ограничения на запас ресурсов можно записать следующим образом Расход Запас ресурса ресурса 5 Математически ограничения имеют вид (см. таблицу): на расход сахара ресурсы Расход ресурсов Запас x1 x2 4; ресурса Шоколад Конфеты на расход какао-бобов 5 x1 2x2 10; на знак переменных Сахар 1 1 4 Какао 5 2 10 Прибыль 5 3 x1 0, x2 0. Математическая модель max z max(5 x1 3 x2 ) x1 x2 4; 5 x1 2 x2 10; x1 0, x2 0. 6 § 2.2. Задача линейного программирования Математически задача ЛП – задача нахождения наибольшего (наименьшего) значения линейной функции многих переменных при линейных ограничениях типа равенств (неравенств), когда на переменные задачи есть (нет) ограничений на знак. задача максимизации ЛП задача минимизации ЛП max z max(c1x1 cn xn ) min z min(c1x1 cn xn ) при ограничениях при ограничениях ai 1x1 ain xn bi , i 1, m, a x a x b , i 1, m, i1 1 x j 0, j 1, n. in n i x j 0, j 1, n. x j , j 1, n переменные z c1x1 cn xn целевая функция x j 0, j 1, n условие неотрицательности переменной с j , aij , bi заданные параметры 7 Вектор X ( x1 , , xn ) удовлетворяющий всем ограничениям задачи, называется допустимым решением задачи ЛП. Допустимым множеством решений задачи ЛП называется множество векторов X ( x1 , , xn ) , удовлетворяющих всем ограничениям задачи. * * * X ( x , , x Вектор доставляющий максимум 1 n ), (минимум) функции z при заданных ограничениях, называется оптимальным решением задачи ЛП. Наибольшее (наименьшее) значение целевой функции называется значением задачи ЛП. Решить задачу ЛП означает найти оптимальное решение и значение целевой функции. 8 § 2.3. Геометрическая структура множества допустимых решений в задаче ЛП Множество M R n называется выпуклым, если для двух любых точек этого множества X 1, X 2 M и любого числа 0,1 выполняется условие: X 1 1 X 2 M Точка X 0 M называется крайней (экстремальной) точкой множества М, если из условия X 0 X 1 1 X 2 , X 1, X 2 M, 0,1 следует, что X 0 X1 X 2 9 Линейное ограничение типа неравенства задает в R n отрицательное (положительное) полупространство i X ai 1x1 ain xn bi X a x i i1 1 ain xn bi , ограниченное многомерной плоскостью i X ai 1x1 ain xn bi . Множество M M i называется многогранным множеством . i Свойства множества доп. решений задачи ЛП: • выпуклое, • замкнутое, • многогранное. 10 § 2.4. Геометрический метод решения задачи ЛП Пример 2.4.1. Решим графически задачу из примера 2.1.1: max z max(5 x1 3 x2 ), x1 x2 4, 5 x1 2 x2 10, grad z( x1, x2 ) 5,3 x1 0, x2 0. 5 x1 3 x2 const прямая Градиент функции y f ( x1, x2 ) : f f grad f ( x1, x2 ) f ( x1, x2 ) , x x 1 2 Свойства: • показывает направление наибольшего возрастания функции, • направлен перпендикулярно касательной к линии уровня функции f ( x1, x2 ) . const 11 Геометрический метод реализуется в два этапа: 2 5 x1 2x2 10 Этап 1: 1 x1 x2 4 •построение допустимого множества решений ЗЛП, 0 x1 2 x1задачи x1 4 оптимального x1 0 решения •нахождение ЛП. x2 x2 0 x2 4 x2 0 x2 5 Этап 2: 5 4 x1* x2* 4 * * 5 x 2 x 1 2 10 B grad z 5,3 * 1 z x ,x * 2 * 2 x1 3 x * 10 2 3 2 10 40 5 3 3 3 3 x1 O 2 2 4 1 Слайд 17 12 Теорема 2.4.1. (об оптимальных экстремальных точках). Если в задаче ЛП существует оптимальное решение, то существует и оптимальная экстремальная (угловая, крайняя) точка. Алгоритм графического метода для задач ЛП n 2 : записать каждое ограничение как равенство и нарисовать прямую; найти для каждого ограничения допустимую область и множество допустимых решений задачи ЛП; найти градиент целевой функции нарисовать линию уровня целевой функции z x1, x2 0; сдвигать линию уровня в направлении градиента, до последней точки пересечения с множеством доп. решений. 13 При решении задачи ЛП возможны случаи: 1. Задача ЛП имеет единственное решение примеры 2.4.1). * X • min grad z • (см. * X max 2. Задача ЛП имеет бесконечное множество решений (альтернативные решения). X* • grad z • X ** 14 При решении задачи ЛП возможны случаи: 3. Задача ЛП не имеет оптимального решения: • неограниченность множества • пустота множества допустимых решений допустимых решений 15 §2.5. Анализ на чувствительность Первая задача на чувствительность: ограничения активные (связывающие) неактивные (несвязывающие) дефицитные ресурсы недефицитные ресурсы Цели: макс. увеличение запаса дефицитного ресурса, позволяющее улучшить значение целевой функции; макс. уменьшение запаса недефицитного ресурса, не меняющее значение целевой функции. 16 Ресурс 1 L 0,5 x1 x2 4 b1 4, b1 x1 x2 0 5 5, x2 b1 5 4 1 5 L z L 5 x1 3 x2 5 0 5 3 15 4 40 5 1z z L z B 15 3 3 x1 2 2 4 1 17 Ресурс 2 5 x1 2x2 10 K 4,0 b2 10, b2 5 x1 2x2 5 4 20, x2 b2 b2 b2 20 10 10 z K 5 x1 3 x2 5 4 3 0 20 40 20 2z z K z B 20 3 3 4 K 2 4 x1 18 Результаты решения первой задачи анализа на чувствительность оформляются в виде таблицы: Ресурс Тип (статус) ресурса Максимальное Максимальное изменение изменение запаса дохода Ресурс 1 дефицитный 1 5/3 Ресурс 2 дефицитный 10 20/3 19 Вторая задача на чувствительность (вычисление стоимости ресурсов): Теневая (двойственная) цена ресурса показывает на сколько изменится доход при изменении запаса деф. ресурса на единицу. Вычисляется по формуле: yi Максимальное увеличение дохода Максимальное увеличение запаса i -го ресурса 20 3 2 5 y2 y1 10 3 1 Вывод: расширение производства за счет увеличения запаса первого ресурса наиболее выгодно. 20 max z 5 x1 3 x2 Третья задача на чувствительность (чувствительность к изменению цен): grad z 5, c2 x1 x2 4, 5 x1 2 x2 10, grad z 5,3 x1 0, x2 0. grad z c1,3 целевая функция z c1x1 c2 x2 a11x1 a12 x2 b1 1 B a21x1 a22 x2 b2 2 активные Диапазон оптимальности ограничения 1 z 2 tg1 tg z tg 2 2 z 2 1 z 1 1 c1 5 a11 c1 a21 1 c2 2 a12 c2 a22 21 max z 5 x1 3 x2 x1 x2 4, Диапазон оптимальности 1 c1 5 1 c2 2 5 x1 2 x2 10, x1 0, x2 0. если B если 1 5 5 c1 5 , 2 c2 5 1 c2 2 c2 3 1 c1 5 15 , 3 c1 1 3 2 2 22 Торговля валютой Арбитраж – получение прибыли в результате обменных операции. Таблица текущих обменных операций: 1 2 3 4 5 1 0,639 5,3712 1,5712 98,89 2 1,5648 8,4304 2,459 154,77 3 0,1856 0,1186 0,2921 18,412 4 0,6361 0,4063 3,4233 62,94 5 0,0101 0,0645 0,05431 0,0158 23 Математическая модель Пусть начальный валютный портфель содержит по одной единице каждого вида валют. aij количество валюты j, которое дают за единицу валюты i, aii 1. Таблица (матрица) текущих Переменные: обменных курсов: xij количество валюты i, которое меняется на a1n a11 a12 валюту j. a a a 2n A 21 22 x1n x11 x12 x x x a a a 22 2n n1 n 2 nn X 21 x x x n1 n2 nn Обменная операция 24 Цель: целью обменной операции является максимизация прибыли. Количественная мера прибыли валюта 1 (можно любую другую валюту). Целевая функция: Прибыль = Доход – Затраты CX X R X C X стоимость портфеля, выраженная в единицах валюты 1, C X a11 a21 an1 const. R X доход от валютной операции, R X a11x11 a21x21 an1xn1 a12 x12 a22 x22 an 2 xn 2 a21 a1n x1n a2n x2n ann xnn an1. 25 Ограничения: x11 x12 x1n 1 x21 x22 x2 n 1 x n1 x n 2 xnn 1 0 xij 1 Пусть X * оптимальное решение, * арбитраж есть, если X 0 если X * 0 арбитража нет. 26