Главная страница
Навигация по странице:

  • Решить задачу симплекс-методом

  • 4. Решить с применением теорем двойственности

  • Решить графическим методом


  • задачи линейного и нелинейного программирования. Задачи ЛП и НП. Задачи линейного программирования


    Скачать 0.96 Mb.
    НазваниеЗадачи линейного программирования
    Анкорзадачи линейного и нелинейного программирования
    Дата10.06.2022
    Размер0.96 Mb.
    Формат файлаdocx
    Имя файлаЗадачи ЛП и НП.docx
    ТипРешение
    #584476

    1. Задачи линейного программирования


    Решить графическим методом задачу линейного программирования.

    F(x) = 2x1 + 3x2  min



    x1  0, x2  0.


    Решение:

    Геометрический (графический) метод решения задачи линейного программирования состоит в следующем. Строится допустимый многоугольник решений системы неравенств.

    Сначала в декартовой системе координат строим прямые, уравнения которых получаются в результате замены в ограничениях знаков неравенств на знаки точных равенств:



    Каждое ограничение-неравенство определяет координатную полуплоскость. В зависимости от знака неравенств стрелок укажем требуемые полуплоскости. Для построения прямой из уравнения выразим .

    Прямая делит плоскость на две полуплоскости, в одной из которых справедливо неравенство а в другой – противоположное ему. Множество решений отдельно взятого линейного неравенства представляет собой полуплоскость.

    Для того чтобы проверить, какая из полуплоскостей состоит из решений неравенства следует взять точку из какой-либо полуплоскости и проверить, выполняется ли это равенство в этой точке. Возьмем точку с координатами х1=0, х2=0. Неравенство неверное, поэтому данная точка лежит не в той полуплоскости (рис. 1.1).


    Рис. 1.1. Нахождение нужной полуплоскости
    Аналогично строим остальные прямые. Множество точек на плоскости, удовлетворяющих системе ограничений, составляет некоторую выпуклую многоугольную область. Условия неотрицательности переменных X1  0 и X2  0 приводят к тому, что эта область находится в первой координатной четверти.

    В результате пересечения всех полуплоскостей находим неограниченный многоугольник решений - треугольник ABС (рис. 1.2).


    Рис. 1.2. Построение многоугольника решений

    Построим линию уровня целевой функции F(x) = 2x1 + 3x2, и градиент целевой функции .

    Передвигая линию уровня вдоль градиента параллельно самой себе, находим точки экстремума. Точкой минимума будет точка первого касания линии уровня с допустимым многоугольником (рис.1.3).


    Рис.1. 3. Линия уровня целевой функции.
    Минимум целевой функции достигается в точке А. Найдем ее координаты:



    Решая систему линейных уравнений, находим координаты точки А (2;2).

    Значение целевой функции в точке А:

    Fmin=F(А) = 4+ 6=10

    Точкой максимума – точка отрыва линии уровня от допустимого многоугольника. В нашем это точка В.


    1. Решить задачу симплекс-методом

    F(x) = x1 + 3x2 + 3x3  max



    x1  0, x2  0, x3  0.
    Решение:

    Решим данную задачу симплекс-методом. Введем дополнительные переменные х4, х5 для приведения задачи к каноническому виду. Перепишем ограничения в каноническом виде:



    Решим систему уравнений относительно базисных переменных: x4, x5
    Полагая, что свободные переменные равны 0, получим первый опорный план: X0 = (0,0,0,1400,2000)

    Составим симплекс-таблицу

    базис

    b

    Х1

    Х2

    Х3

    Х4

    Х5

    Х4

    1400

    3,5

    7

    4,2

    1

    0

    Х5

    2000

    4

    5

    8

    0

    1

    F(x)

    0

    -1

    -3

    -3

    0

    0

    Текущий опорный план не оптимален, так как в индексной строке находятся отрицательные коэффициенты.

    Определение новой базисной переменной:

    В качестве ведущего выберем столбец, соответствующий переменной x3, так как это наибольший коэффициент по модулю.

    Определение новой свободной переменной:

    Вычислим значения Di по строкам как частное от деления: bi / ai3
    и из них выберем наименьшее:

    min (1400 : 4,2; 2000 : 8 ) = 250

    Следовательно, 2-ая строка является ведущей.

    Разрешающий элемент равен (8) и находится на пересечении ведущего столбца и ведущей строки

    базис

    b

    Х1

    Х2

    Х3

    Х4

    Х5

    min

    Х4

    1400

    3,5

    7

    4,2

    1

    0

    333,33

    Х5

    2000

    4

    5

    8

    0

    1

    250

    F(x)

    0

    -1

    -3

    -3

    0

    0




    Вместо переменной x5 в план 1 войдет переменная x3.
    Строка, соответствующая переменной x3, получена в результате деления всех элементов строки x5 предыдущего плана на разрешающий элемент 8. На месте разрешающего элемента получаем 1. В остальных клетках столбца x3 записываем нули.

    Таким образом, в новом плане заполнены строка x3 и столбец x3. Все остальные элементы нового плана, включая элементы индексной строки, определяются по правилу прямоугольника.

    Для этого выбираем из старого плана четыре числа, которые расположены в вершинах прямоугольника и всегда включают разрешающий элемент.
    Получаем новую симплекс-таблицу:

    базис

    b

    Х1

    Х2

    Х3

    Х4

    Х5

    Х4

    350

    1,4

    35/8

    0

    1

    -0,525

    Х3

    250

    1/2

    5/8

    1

    0

    1/8

    F(x)

    750

    1/2

    -9/8

    0

    0

    3/8

    Текущий опорный план не оптимален, так как в индексной строке находятся отрицательные коэффициенты.
    Определение новой базисной переменной.

    В качестве ведущего выберем столбец, соответствующий переменной x2, так как это наибольший коэффициент по модулю.

    Вычислим значения Di по строкам как частное от деления: bi / ai2
    и из них выберем наименьшее: min (350 : 43/8 , 250 : 5/8 ) = 80

    Следовательно, 1-ая строка является ведущей.

    Разрешающий элемент равен (43/8) и находится на пересечении ведущего столбца и ведущей строки.

    базис

    b

    Х1

    Х2

    Х3

    Х4

    Х5

    min

    Х4

    350

    1,4

    35/8

    0

    1

    -0,525

    80

    Х3

    250

    1/2

    5/8

    1

    0

    1/8

    400

    F(x)

    750

    1/2

    -9/8

    0

    0

    3/8




    Формируем следующую часть симплексной таблицы. Вместо переменной x4 в план 2 войдет переменная x2.

    Строка, соответствующая переменной x2 в плане 2, получена в результате деления всех элементов строки x4 плана 1 на разрешающий элемент 43/8. На месте разрешающего элемента получаем 1. В остальных клетках столбца x2 записываем нули.

    Таким образом, в новом плане заполнены строка x2 и столбец x2. Все остальные элементы нового плана, включая элементы индексной строки, определяются по правилу прямоугольника.

    Получаем новую симплекс-таблицу:


    базис

    b

    Х1

    Х2

    Х3

    Х4

    Х5

    Х2

    80

    0,32

    1

    0

    8/35

    -0,12

    Х3

    200

    0,3

    0

    1

    -1/7

    0,2

    F(x)

    840

    0,86

    0

    0

    8/35

    0,24


    Среди значений индексной строки нет отрицательных. Поэтому эта таблица определяет оптимальный план задачи.

    Оптимальный план можно записать так:
    x1 = 0, x2 = 80, x3 = 200
    F(X) = 1*0 + 3*80 + 3*200 = 840

    Проверка решения с помощью надстройки Поиск решения



    1. Транспортная задача

    Пункты отправления

    Пункты назначения

    Запасы


    B1

    B2

    B3

    B4

    B5




    A1

    28

    27

    18

    27

    24

    200

    A2

    18

    26

    27

    32

    21

    250

    A3

    27

    33

    23

    31

    34

    200

    Потребности

    190

    100

    120

    110

    130




    Решение:

    Опорный план перевозок найдем методом северо-западного угла и методом минимального элемента, проведем сравнение транспортных издержек по этим двум планам.

    Общее наличие груза у поставщиков

    Общая потребность в грузе у потребителей

    Так как , то модель транспортной задачи является закрытой.

    Решим задачу методом северо-западного угла:

    Опорный план должен содержать 3+5-1=7 заполненных клеток. Заполнение таблицы начинаем с левого верхнего угла, используем запасы поставщиков, спускаясь вниз полностью удовлетворяя потребности потребителей.


    Пункты отправления

    Пункты назначения

    Запасы


    B1

    B2

    B3

    B4

    B5




    A1

    19028

    1027

    18

    27

    24

    200

    A2

    18

    9026

    12027

    4032

    21

    250

    A3

    27

    33

    23

    7031

    13034

    200

    Потребности

    190

    100

    120

    110

    130





    Получили опорный план:



    Общая стоимость перевозок:



    Решим задачу методом минимального элемента.

    Метод минимального элемента основан на выборе клетки с минимальным тарифом (на каждом шаге выбирают клетку с минимальным тарифом и рассматривают пункты назначения и пункты отправлений, соответствующие выбранной клетке).

    Пункты отправления

    Пункты назначения

    Запасы


    B1

    B2

    B3

    B4

    B5




    A1

    28

    10 27

    120 18

    27

    70 24

    200/80/10

    A2

    190 18

    26

    27

    32

    60 21

    250/60

    A3

    27

    90 33

    23

    110 31

    34

    200

    Потребности

    190

    100/90

    120

    110

    130/70




    1) C21 =18 – min; рассматриваем А2 и B1; исключаем клетки В1 из потребности А2 равны 60.

    2) С13=18 –min; рассматриваем А1 и B3 исключаем клетки В3 из потребности А1 становится равным 80

    3) С25=21 – min; рассматриваем А2 и B5 исключаем клетки А2 из потребности B5 становится равным 70

    4) С15=24- min; рассматриваем А1 и B5 исключаем клетки B5 из запасов А1 становится равным 10

    5) С12=27 - min; рассматриваем А1 и B2 исключаем клетки А1 из запасов В2 становится равным 90

    6) С32=33; рассматриваем А3 и B2 исключаем клетки B2 из запасов А3 исключаем из потребностей.
    Опорный план:



    Общая стоимость перевозок:

    .

    Сравнивая полученные результаты делаем вывод, что при нахождении плана методом минимальных элементов, общая стоимость перевозок значительно ниже, чем при нахождении методом северо-западного угла. Это основано на том, что метод северо-западного угла не ориентируется на тарифы.

    Уточним опорный план методом потенциалов.

    Считаем потенциалы клеток. За минимальное 0 выбираем ту строку, у которой больше заполненных клеток: V1=0. Считаем потенциалы строк и столбцов, используя заполненные клетки:

    Пункты отправления

    Пункты назначения

    Запасы


    B1

    B2

    B3

    B4

    B5

    A1

    28

    10 27

    120 18

    27

    70 24

    V1=0

    A2

    190 18

    26

    27

    32

    60 21

    V2=-3

    A3

    27

    90 33

    23

    110 31

    34

    V3=6

    Потребности

    U1=15

    U2=27

    U3=18

    U4=25

    U5=24





    Считаем потенциалы незаполненных клеток

    Пункты отправления

    Пункты назначения

    Запасы


    B1

    B2

    B3

    B4

    B5

    A1

    2128

    1027+

    12018-

    2527

    7024

    V1=0

    A2

    19018

    2426

    1527

    2232

    6021

    V2=-3

    A3

    2727

    9033-

    2423+

    11031

    3034

    V3=6

    Потребности

    U1=21

    U2=27

    U3=18

    U4=25

    U5=24





    Так как есть клетка в которой вычисленный потенциал больше, чем необходимо, то составим цикл пересчета. Найдем потенциалы заполненных клеток.

    Пункты отправления

    Пункты назначения

    Запасы


    B1

    B2

    B3

    B4

    B5

    A1

    28

    10027

    3018

    27

    7024

    V1=0

    A2

    19018

    26

    27

    32

    6021

    V2=-3

    A3

    27

    33

    9023

    11031

    34

    V3=5

    Потребности

    U1=21

    U2=27

    U3=18

    U4=26

    U5=24





    Считаем потенциалы незаполненных клеток


    Пункты отправления

    Пункты назначения

    Запасы


    B1

    B2

    B3

    B4

    B5

    A1

    2128

    10027

    3018

    2627

    7024

    V1=0

    A2

    19018

    2426

    1527

    2332

    6021

    V2=-3

    A3

    2627

    3233

    9023

    11031

    2934

    V3=5

    Потребности

    U1=21

    U2=27

    U3=18

    U4=26

    U5=24





    Так как для каждой клетки выполняется равенство , то опорный план найден.

    Опорный план:



    Общая стоимость перевозок:


    Проверим правильность нахождения решения с помощью надстройки Поиск решения. Запишем решение:



    4. Решить с применением теорем двойственности

    F(x) =6 x1 -2x2 -4x3-3x4 min



    x1  0, x2  0, x3, х4  0.
    Решение:

    Упорядочим задачу линейного программирования. Решаем задачу на минимум. Так как если есть ограничения в виде "≤", то умножим данную строку на −1:

    F(x) =6 x1 -2x2 -4x3-3x4 min



    x1  0, x2  0, x3, х4  0.

    Вектор коэффициентов целевой функции прямой задачи:

    Свободные члены системы ограничений прямой задачи: B=(−3;13)

    Матрица коэффициентов прямой задачи:

    Так как целевая функция исходной задачи исследуется на минимум, до целевая функция двойственной задачи исследуется на максимум.

    Коэффициенты целевой функции двойственной задачи совпадают с свободными членами системы ограничений прямой задачи: Cдв=BT=(−3;13)

    Свободные члены двойственной задачи равны коэффициентам целевой функции прямой задачи



    Матрица коэффициентов двойственной задачи равно матрице коэффициентов прямой задачи, взятой в транспонированном виде.



    Количество переменных двойственной задачи равно количеству ограничений прямой задачи, а количество ограничений двойственной задачи равно количеству переменных прямой задачи.

    Двойственная задача линейного программирования:

    Q(y) =-3y1 +13y2  max



    y1  0, y2  0.

    Решим задачу графическим методом:

    Построим допустимый многоугольник решений системы неравенств. Получили четырехугольник ABCD (рис. 4.1).



    Рис. 4.1

    Построим линию уровня целевой функции Q(y) = -3y1 + 13y2, и градиент целевой функции .

    Передвигая линию уровня вдоль градиента параллельно самой себе, находим точки экстремума.

    Точкой минимума (точкой входа) будет точка С. Точкой максимума – точка В (рис. 4.2).

    Найдем координаты точки В.



    Решая систему линейных уравнений, находим координаты точки



    Рис. 4.2.

    Двойственный оптимальный план: . В результате получим Q*(y) =14, .

    Для решения двойственной задачи используем теоремы двойственности.

    По теореме 1 исходная (прямая) задача также имеет оптимальный план

    Чтобы найти X*, подставим в систему уравнений из теоремы 2.



    Получаем



    Решая систему, находим

    Оптимальный план:


    1. Решить графическим методом

    F(x12) = 2x1 + 4x2 - x12- 2x22 max



    x1  0, x2  0.

    Решение:

    Сначала построим область допустимых решений в первой четверти, ограниченную прямыми:



    Получаем выпуклый многоугольник ОABC (рис. 5.1)



    Рис. 5.1 Построение области допустимых значений
    Преобразуем целевую функцию

    Получим



    - уравнение эллипса с центром в точке (1;1)

    Теперь строим линии уровня целевой функции: концентрические эллипсы с центром в точке (1,1).

    Чем больше радиус, тем меньше значение целевой функции. Таким образом, наибольшее значение функция примет в точке (1;1), так как центр эллипса находится в области допустимых значений функции.


    Максимальное значение функции:

    F(x12) = 2x1 + 4x2 - x12- 2x22=2+4-1-2=3

    6. Решить методом множителей Лагранжа

    Используя метод множителей Лагранжа найти условный экстремум функции при ,


    Решение:

    Решая задачу графически, можно заметить, что максимального значения функция не достигает. Минимальное значение найдем, используя метод множителей Лагранжа.

    Обозначив , составим функцию Лагранжа:



    Найдем частные производные:

    Запишем систему уравнений для определения стационарных точек функции Лагранжа:



    Решая систему находим координаты стационарной точки

    Выясним характер экстремума в каждой стационарной точке:

    Вычислим определитель Н в точке:




    Следовательно, в точке функция имеет условный минимум, .


    написать администратору сайта