Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

9788

.pdf
Скачиваний:
0
Добавлен:
25.11.2023
Размер:
3.22 Mб
Скачать

течение которого оборудование каждого типа занято изготовлением продукции каждого вида.

Пример 4. Составление плана реализации товара

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

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

лизации единицы любого товара, и прибыль от продажи заданы. Надо сформи-

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

Построение математической модели.

1.Цель – максимизация прибыли.

2.Параметры задачи:

n – число различных видов реализуемых товаров; m – число разных видов средств;

bi – запас средств i-го вида i 1, m ;

aij – число средств i-го вида, используемых для реализации единицы товара j-го вида, i 1, m, j 1, n ;

pi – прибыль от реализации единицы товара j-го вида, j 1, n .

3. Управляющие переменные xj, j 1, n – количество реализуемого товара j-го вида.

4. Область допустимых решений формируют ограничения по запасам средств и условия неотрицательности управляющих переменных.

а11х1 а12 х2 ... a1n xn b1a21x1 a22 x2 ... a2n xn b2

....................................

am1x1 am2 x2 ... amn xn bm

x 0, j 1, n .

j

n

5. Критерий оптимальности определяется по формуле f р j x j max ,

j 1

где f – суммарная прибыль.

10

В результате расчета этой модели определяется количество реализуемых

товаров каждого вида, обеспечивающее фирме максимальную прибыль.

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

Графический способ решения задач линейного программирования целесо-

образно использовать:

для решения задач с двумя переменными;

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

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

Для применения графического метода задачу линейного программирова-

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

n

f c j x j max ;

j 1

n

aij x j bi , i 1, m ;

j 1

x j 0, j 1,n .

Рассмотрим задачу с двумя переменными.

Каждое из неравенств системы ограничений задачи геометрически опреде-

ляет полуплоскость с граничными прямыми:

ai1x1 ai2 x2 bi , i 1, m ; x1 0 , x2 0 .

В случае, если система неравенств совместна, ее область допустимых ре-

шений (ОДР) есть множество точек, принадлежащих всем указанным полу-

плоскостям.

Множество точек пересечения данных полуплоскостей выпуклое, т. е. об-

ладает следующим свойством: если две точки А и В принадлежат этому множе-

ству, то и весь отрезок АВ принадлежит этому множеству.

Целевая функция (ЦФ) f при фиксированном значении определяет на плос-

кости прямую линию. Изменяя значения f, мы получим семейство параллель-

ных прямых, называемых линиями уровня.

11

Вектор-градиент линейной функции f f

(

f

c ,

f

c

 

) , перпенди-

x

x

 

 

 

 

1

2

 

2

 

 

 

1

 

 

 

 

 

кулярный этим прямым, указывает направление наискорейшего возрастания f, а

противоположный вектор – направление убывания f. Задача определения мак-

симума f сводится к нахождению в допустимой области точки, через которую проходит прямая f=const, которая соответствует наибольшему значению f.

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

являющейся выпуклой комбинацией этих вершин.

В общем случае возможны следующие варианты области допустимых ре-

шений (рис.1 и 2).

Рис.1. Область допустимых решений –

Рис. 2. Область допустимых решений – откры-

замкнутое множество (многоугольник)

тое множество

 

На рис. 1, 2 показаны варианты пересечения линии уровня целевой функ-

ции с областью допустимых решений. Может быть единственное решение – точка В, бесконечно много решений – отрезок СД (рис. 1), максимальным (ми-

нимальным) значением целевой функции может быть (рис. 2).

12

Рис.3. Область допустимых решений – пустое

Рис. 4. Область допустимых решений состоит

множество (система ограничений несовместна)

из единственной точки А

Алгоритм решения.

1.Построить прямые, соответствующие ограничениям.

2.Определить области, в которых выполняются ограничения задачи. Для этого выбрать произвольную точку и подставить ее координаты в первую часть одного из равенств. Если неравенство верно, то искомая полуплоскость нахо-

дится с той же стороны от прямой, что и точка, в противном случае искомая полуплоскость лежит с противоположной стороны от прямой. Эти действия по-

следовательно выполняются для всех неравенств (ограничений).

3. Определить многоугольник решений как область пересечения m полу-

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

4. Определить направление возрастания (убывания) целевой функции.

Это можно сделать двумя способами:

А. Построить вектор-нормаль n (c1,c2 ) с координатами из коэффициен-

тов ЦФ. Его направление показывает направление возрастания функции, в про-

тивоположном направлении функция убывает.

Б. Построить две линии уровня функции f=K1, f=K2 (K1, K2 – произвольные константы, K1 K2) и по их расположению определить направление возрастания

(убывания) функции.

5.Определяют граничную точку или точки области допустимых решений,

вкоторых целевая функция принимает максимальное или минимальное значе-

ние.

6. Вычисляют значение найденной точки, решая совместно уравнения, за-

дающие прямые, на пересечении которых находится эта точка, или выявляя уравнение граничной прямой области допустимых решений, с которой совпада-

ет линия уровня целевой функции.

Пример 5. Решим геометрически следующую задачу линейного програм-

мирования: F 2x1 2x2 min ;

13

при ограничениях:

x1 x2 3

 

 

 

7x2 42

x1 0, x2 0

6x1

2x

3x

2

6

 

 

1

 

 

 

Решение. Построим область ограничений. Строим прямую x1 x2 3 по двум точкам, координаты которых удовлетворяют уравнению: (-3; 0), (0, 3) (см.

рис. 5). Проверяем, какая полуплоскость

 

удовлетворяет неравенству x1 x2 3. Для

 

этого выберем произвольную точку и прове-

 

рим, удовлетворяют ли ее координаты дан-

 

ному

неравенству:

0 0 3 . Неравенство

 

верное, значит, точка с координатами (0, 0)

 

лежит

в нужной

полуплоскости. Рисуем

Рис. 5

«штрихи» по направлению к этой точке. Аналогично находим полуплоскости,

соответствующие оставшимся неравенствам. Пересечение получившихся плос-

костей является искомым ограничением (это пятиугольник, закрашенный се-

рым цветом).

Определим наклон уровней целевой функции. Для этого нарисуем прямую для конкретного значения целевой функции. Например, для F=2 уравнение це-

левой функции F 2 2x1 2x2 . Прямая проходит через точки (–1;0) и (0;1).

Стрелка показывает направление уменьшения значения F. Оптимальное (наи-

меньшее значение целевая функция примет «на выходе» из области ограниче-

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

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

Тогда Fmin 2 0 2 3 6 .

1.3. Симплексный метод решения задач линейного программирования

14

(впервые был предложен Дж. Данцингом в 1949 г., однако еще в 1939 г.

идеи метода были разработаны Л.В. Канторовичем)

Симплекс-метод основан на следующих свойствах ЗЛП (задачи линейного программирования):

1. Не существует локального экстремума, отличного от глобального. Дру-

гими словами, если экстремум есть, то он единственный.

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

(если оно не пусто).

3. Целевая функция достигает своего максимального значения в угловой точке многогранника решений (в его вершине). Если целевая функция прини-

мает свое оптимальное значение более чем в одной угловой точке, то она дос-

тигает того же значения в любой точке, являющейся выпуклой комбинацией этих точек.

4. Каждой угловой точке многогранника решений отвечает опорный план ЗЛП.

В случае двух переменных область допустимых решений, как правило,

представляет собой замкнутый многоугольник. Для n переменных областью допустимых решений является многомерный многогранник, подобный сим-

плексу. Оптимальное решение, как правило, это вершина (граничная точка) та-

кого многогранника.

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

дыдущего с точки зрения соответствующего значения целевой функции. Он по-

зволяет за конечное число шагов расчета либо найти оптимальное решение, ли-

бо установить его отсутствие.

Три основных элемента симплексного метода:

1) нахождение начального допустимого базисного решения.

15

Под допустимым базисным решением понимается решение системы с не-

отрицательными компонентами, в котором неосновные переменные равны 0.

Оптимальным решением ЗЛП называется такое допустимое решение, при кото-

ром целевая функция достигает экстремума;

2)осуществление перехода от одного допустимого базисного решения к другому, на котором значение целевой функции ближе к оптимальному;

3)определение критерия завершения процесса решения задачи, позволяю-

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

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

вания должна быть приведена к каноническому виду, т.е. система ограничений

должна быть представлена в виде уравнений.

Для применения симплекс-метода задачу следует записать в канонической форме: Z (x) f (х1, х2 ,...,xn ) max (min) .

а11х1 а12 х2

... a1n xn

b1

 

 

 

a22 x2

... a2n xn

b2

a21x1

 

....................................

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

x

a

m2

x

2

... a

mn

x

n

b

 

 

m1 1

 

 

 

 

m

x j

0,

j 1,2,...,n , bi

0,

i 1,2,...,m.

Будем считать, что правые части всех уравнений системы ограничений не-

отрицательны, иначе умножим это уравнение на (–1).

В канонической форме записи все переменные неотрицательны, ограниче-

ниями являются уравнения, и требуется найти такие значения x j , j 1, n , при которых целевая функция имеет максимум.

Переход к канонической форме записи производится следующим образом:

1)если требуется найти минимум, f заменяется на –f, переходят к задаче максимизации, так как min f= –max(–f);

2)если ограничение имеет знак , от него переходят к равенству, добавляя

влевую часть ограничения дополнительную неотрицательную переменную;

16

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

4)если в задаче какая-либо из переменных произвольна, ее заменяют раз-

ностью двух неотрицательных переменных (например, для произвольной переменной х4, х4=х5х6, где х5 0, х6 0).

Пример 6. Записать в канонической форме ЗЛП.

f 5x1 2x2 3x3 min

2x1 3x2 x3 10x1 8x2 2x3 85x1 2x2 7x3 20

x1 0, x2 0

Решение. Запишем новую функцию f1 f 5x1 2x2 3x3 .

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

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

Произвольную переменную х3 заменяем разностью двух неотрицательных переменных: х3=х6х7, х6 0, х7 0.

Окончательно получаем каноническую форму записи:

f 5x1 2x2 3x6 3x7 max

2x1 3x2 x6 x7 x4 10x1 8x2 2x6 2x7 x5 7

5x1 2x2 7x6 7x7 20

x1 0, x2 0, x4 0, x5 0, x6 0, x7 0

Алгоритм симплексного метода

На каждом шаге метода выбираются группы основных и неосновных пе-

ременных.

1. Получение начального решения.

17

Выбирается m переменных, называемых базисными (основными) и обла-

дающих следующим свойством: они входят с коэффициентом 1 только в одно уравнение и с коэффициентом 0 в остальные уравнения системы ограничений.

На первом шаге удобно в качестве основных переменных выбрать добавочные переменные. Остальные m−n переменных называют свободными (неосновны-

ми). Первоначальный опорный план имеет вид

Х (x1 b1, , xm bm , xm 1 0, , xn 0).

Если все bi 0, то начальное решение является допустимым и осуществля-

ется переход к шагу 2. В противном случае используется алгоритм нахождения допустимого начального решения.

2. На каждом следующем шаге в результате анализа функции цели и системы ограничений выбирается одна неосновная переменная, которая будет переходить в группу основных переменных, и одна основная, переходящая в

группу неосновных переменных.

Если решается задача максимизации функции цели, то:

данная неосновная переменная должна входить в формулу функции це-

ли с положительным коэффициентом, тогда ее перевод может привести к уве-

личению значения функции цели;

базисная (основная) переменная, переходящая в группу неосновных, оп-

ределяется по минимальной оценке, вычисляемой по одному из оценочных от-

ношений.

Все возможные случаи оценочных отношений для уравнения

x j bj aij xi .., здесь b j – свободный член, xi – переводимая неос-

новная переменная.

 

 

 

 

 

 

 

b j

 

 

 

 

 

 

 

 

 

, если b

 

0

и a 0 – разного знака;

i

 

j

 

 

aij

 

 

 

ij

 

 

 

 

 

 

 

 

i 0, если b j

0 и aij 0 ;

i , если aij

0 .

 

 

 

 

 

 

 

 

 

 

18

3. Затем выполняются эквивалентные преобразования системы ограниче-

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

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

4. Формула целевой функции записывается с помощью свободных (неос-

новных) переменных, тогда свободный член формулы функции цели будет по-

казывать ее значение для анализируемого базисного решения.

5. Критерием оптимальности анализируемого допустимого базисного ре-

шения является отсутствие выбора нового базисного решения, которое оказа-

лось бы лучше данного.

Так, критерием оптимальности анализируемого допустимого базисного решения при максимизации целевой функции является отсутствие положитель-

ных коэффициентов при неосновных переменных в формуле функции цели.

Критерий оптимальности при отыскании минимума целевой функции:

если в выражении целевой функции через неосновные переменные отсутствуют отрицательные коэффициенты при неосновных переменных, то решение опти-

мально.

Алгоритм нахождения допустимого начального решения

1. Если начальное решение недопустимо, то рассмотрим уравнение, со-

держащее отрицательный свободный член (любое, если их несколько) и пере-

ведем в основные ту переменную, которая входит в это уравнение с положи-

тельным коэффициентом (любую, если их несколько). Если при этом по мини-

мальной оценке будет получено разрешающее уравнение, не содержащее отри-

цательного свободного члена, то в новом базисном решении число отрицатель-

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

тельным коэффициентом.

2. Шаг 1 нужно повторять до тех пор, пока не получим допустимое на-

чальное базисное решение или пока все возможные переменные не будут про-

19

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]