Скачать презентацию Симплекс-метод решения задачи линейного программирования Автор Козьминых В Скачать презентацию Симплекс-метод решения задачи линейного программирования Автор Козьминых В

Симплекс метод.pptx

  • Количество слайдов: 24

Симплекс-метод решения задачи линейного программирования Автор: Козьминых В. Г. Нижний Новгород 2013 г. Симплекс-метод решения задачи линейного программирования Автор: Козьминых В. Г. Нижний Новгород 2013 г.

Свойства задач линейного программирования 1) Задача линейного программирования имеет оптимальное решение, если область допустимых Свойства задач линейного программирования 1) Задача линейного программирования имеет оптимальное решение, если область допустимых решений не пуста и ограничена в направлении оптимума. 2) Если задача линейного программирования имеет оптимальное решение, тогда хотя бы одна из вершин выпуклого многогранника в n-мерном пространстве, образующего область допустимых решений, соответствует оптимальному решению. n число переменных задачи линейного программирования

Общий вид канонической задачи линейного программирования 1. F=с1 x 1+с2 x 2+с3 x 3+. Общий вид канонической задачи линейного программирования 1. F=с1 x 1+с2 x 2+с3 x 3+. . . +сnxn max/min 2. a 11 x 1+a 12 x 2+a 13 x 3+. . . +a 1 nxn=b 1 a 21 x 1+a 22 x 2+a 23 x 3+. . . +a 2 nxn=b 2 a 31 x 1+a 32 x 2+a 33 x 3+. . . +a 3 nxn=b 3. . . . am 1 x 1+am 2 x 2+am 3 x 3+. . . +amnxn=bm x 1 0; x 2 0; x 3 0; . . . ; xn 0

Допустимое решение канонической задачи линейного программирования называется опорным решением, если векторы условий задачи, соответствующие Допустимое решение канонической задачи линейного программирования называется опорным решением, если векторы условий задачи, соответствующие ненулевым координатам допустимого решения, образуют линейно независимую систему векторов. 1. F=3 x 1+4 x 2 max 2. x 1+x 2+x 3+x 4 =3 2 x 1+2 x 2 -x 3+x 4=2 x 1 0; x 2 0; x 3 0; x 4 0 Проверим решения x 1(0; 0; 1/2; 5/2) ДР, ОР x 2(1; 0; 1; 1) ДР, ОР x 3(1; -1; 1/2; 5/2) ДР, ОР x 4(1; 0; 1; 1) ДР, ОР

Свойства опорных решений канонической задачи линейного программирования 1) Если множество допустимых решений канонической задачи Свойства опорных решений канонической задачи линейного программирования 1) Если множество допустимых решений канонической задачи линейного программирования не пусто, то задача имеет опорные решения. 2) Опорные решения соответствуют вершинам выпуклого многогранника в n-мерном пространстве, образующего область допустимых решений. 3) Каноническая задача линейного программирования имеет конечное число различных опорных решений (либо не имеет их вовсе).

Общая идея симплекс-метода решения задачи линейного программирования состоит: 1) в умение находить начальный опорный Общая идея симплекс-метода решения задачи линейного программирования состоит: 1) в умение находить начальный опорный план; 2) в наличие признака оптимальности опорного плана; 3) в умение переходить к лучшему опорному плану.

Будем решать симплекс-методом каноническую задачу линейного программирования на максимум 1. F=20 x 1+30 x Будем решать симплекс-методом каноническую задачу линейного программирования на максимум 1. F=20 x 1+30 x 2 max 2. 25 x 1+35 x 2+x 3+x 4 =190 15 x 1+45 x 2+3 x 3 -x 4=210 x 1 0; x 2 0; x 3 0; x 4 0

1. F=20 x 1+30 x 2 max 2. 25 x 1+35 x 2+x 3+x 1. F=20 x 1+30 x 2 max 2. 25 x 1+35 x 2+x 3+x 4 =190 15 x 1+45 x 2+3 x 3 -x 4=210 x 1 0; x 2 0; x 3 0; x 4 0 Запишем задачу в симплекс таблицу. Пусть начальный базис А 3 А 4 Базис 20 30 0 0 Ci 0 x 1 x 2 x 3 x 4 b 0 35 1 190 1 x 3 25 0 45 -1 210 3 x 4 15

 Базис Ci 0 xi 0 0 x 3 0 x 4 Стр. оц. Базис Ci 0 xi 0 0 x 3 0 x 4 Стр. оц. 20 0 3 b x 1 x 2 x 3 x 4 25 5 1 1 190 3 15 5 3 -1 210 4

Найдем опорное решение При нахождении опорного решения разрешаем неизвестные x 3 x 4 - Найдем опорное решение При нахождении опорного решения разрешаем неизвестные x 3 x 4 - при этом, 1 должны находиться на пересечении соответствующих неизвестных Базис Ci 0 xi 0 0 x 3 0 x 4 Стр. оц. 20 30 0 b x 1 x 2 x 3 x 4 25 35 1 190 1 15 45 -1 210 3 Iн=Iст 25 35 1 190 1 -60 0 -4 -360 IIн=IIст+Iн (-3) 10 20 0 100 Iн=Iст+IIн (-1) 1 15 1 90 IIн=IIст (-¼) 0 1 2 3 4 ? ? ?

 Базис Ci 0 xi 0 0 x 3 0 x 4 Стр. оц. Базис Ci 0 xi 0 0 x 3 0 x 4 Стр. оц. 20 30 0 0 b x 1 x 2 x 3 x 4 10 20 1 0 100 15 15 0 1 90 1 2 3 4 F Получили опорное решение x 3, 4(0; 0; 90; 100) F 3, 4=0 Строим строку оценок вместе со значением F строка со знаком минус и 0 1 строка C 10 -20 2 2 строка C 0 + 0 1 2 3 4 F 0 -20 -30 0 0 0

 Ci 0 0 0 Базис 20 30 0 xi 0 x 1 x Ci 0 0 0 Базис 20 30 0 xi 0 x 1 x 2 x 3 10 20 1 x 3 15 15 0 x 4 Стр. оц. -20 -30 0 0 b x 4 0 100 1 90 0 0 Свойства оценок базиса 1. Если для данного опорного решения, все оценки базиса 1 2 3. . . n неотрицательны, тогда найденное опорное решение является оптимальным. 2. Если для данного опорного решения существует хотя бы одна оценка k < 0, такая что все элементы столбца Xk <0 отрицательные, тогда данная задача не имеет оптимального решения так как целевая функция неограниченна в направлении оптимума.

 Базис Ci 0 xi 0 0 x 3 0 x 4 Стр. оц. Базис Ci 0 xi 0 0 x 3 0 x 4 Стр. оц. 20 30 0 x 1 x 2 x 3 10 20 1 15 15 0 -20 -10 0 0 b x 4 0 100 1 90 0 0 100: 10=10 90: 15=6 min Новый базис x 3 x 1 Свойства оценок базиса (продолжение) 3. Если для данного опорного решения существует хотя бы одна оценка k< 0, а среди элементов столбца xk есть положительные элементы, тогда базис которому соответствует лучшее опорное решение мы получим заменив вектор условий задачи Ak на вектор Ak для которых отношение bj/akj>0 минимально.

 Базис 20 30 0 Ci 0 x 1 x 2 x 3 0 Базис 20 30 0 Ci 0 x 1 x 2 x 3 0 10 20 1 x 3 20 15 15 0 x 1 0 x 3 0 1 20 x 1 1 0 Стр. оц. 0 b x 4 0 100 1 90

 Базис Ci 0 xi 0 0 x 3 20 x 1 Стр. оц. Базис Ci 0 xi 0 0 x 3 20 x 1 Стр. оц. 20 30 0 0 b x 1 x 2 x 3 x 4 10 20 1 0 100 15 0 1 90 0 1 -10/15 40 Iн=Iст+IIн (-10) 1 1 0 1/15 6 IIн=IIн 1/15 20/ 0 -10 0 120 15 Получили опорное решение x 3, 1(6; 0; 40; 0) F 3, 1=120 + -20 0 -30 0 20 -10 0 0 0 20/ 15 0 0 120

 Базис Ci 0 xi 0 0 x 3 20 x 1 Стр. оц. Базис Ci 0 xi 0 0 x 3 20 x 1 Стр. оц. 20 30 0 0 b x 1 x 2 x 3 x 4 0 10 1 -10/15 40 1/ 1 1 0 6 15 20/ 0 -10 0 120 15 Новый базис x 2 x 1 40: 10=4 min 6: 1=6

 Базис 20 30 0 0 Ci 0 b xi 0 x 1 x Базис 20 30 0 0 Ci 0 b xi 0 x 1 x 2 x 3 x 4 -10 30 0 10 1 /15 40 x 2 20 1 1 0 1/15 6 x 1 0 x 2 0 1 20 x 1 1 0 Стр. оц.

 Базис 20 30 0 0 Ci 0 x 1 x 2 x 3 Базис 20 30 0 0 Ci 0 x 1 x 2 x 3 x 4 b 30 x 2 0 10 -10/15 1 40 1 20 x 1 1 1 0 /15 6 -1/ Iн=Iст 1/10 30 x 2 0 1 1/10 4 15 2/ 20 x 1 1 0 -1/10 Iн=IIст+Iн (-1) 2 I 15 2/ Стр. оц. 0 0 1 160 3 Получили опорное решение x 2, 1(2; 4; 0; 0) F 2, 1=160 -20 -30 0 0 30 3 -2 120 + 40/ 20 20 -2 40 15 2/ 1 0 1 160 3

 Базис Ci 0 x 1 x 2 30 x 2 0 1 b Базис Ci 0 x 1 x 2 30 x 2 0 1 b x 3 x 4 1/ 4 -1 10 15 x 1 Стр. оц. 1 0 -1/ 0 0 1 20 20 30 0 0 2 /15 2 10 2/ 3 160 Выполняется первое свойство оценок базиса Ответ: xopt(4; 2; 0; 0); Fopt=160 Ответ: x 1 opt=4 ед. ; x 2 opt= 2 ед. ; x 3 opt= 0 ед. ; x 4 opt= 0 ед. ) fopt=160

Решение задачи линейного программирования в MS Excel Решение задачи линейного программирования в MS Excel

Спасибо за внимание! Спасибо за внимание!