реферат, рефераты скачать
 

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


Для приведения данной задачи к стандартной форме необходимо лишь

перейти от ограничений – неравенств к равенствам. Для этого введем

дополнительные балансовые неотрицательные переменные. Также для упрощения

дальнейших вычислений разделим обе части ограничений на комплектацию

деталей на 5:

X1 + X2 + X3 + X7 = 8;

X4 + X5 + X6 + X8 = 8;

2X1 – X2 + 6X4 – 3X5 = 0;

2X1 – 2X3 + 6X4 – 2X6 =0;

X1 , X2 , X3 , X4 , X5 , X6 , X7 , X8 ? 0.

E= X1 + X2 + 2X3 + 3X4 + 3X5 + 2X6 ( max

где Х7 , Х8 – остаточные переменные.

Итак, нашу исходную задачу мы привели к стандартной форме основной

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

4.2. ОПРЕДЕЛЕНИЕ НАЧАЛЬНОГО ДОПУСТИМОГО РЕШЕНИЯ

Для задачи, представленной в стандартной форме, количество переменных

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

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

переменных, равное количеству уравнений) через остальные n-m переменных,

принять эти n-m переменных равными нулю и, таким образом, найти значения m

переменных (в заданной задаче m=4 и n=8). Переменные, значения которых

принимаются равными нулю, называются небазисными, а остальные m переменных

- базисными. Значения базисных переменных неотрицательны (некоторые из них

могут оказаться равными нулю). Количество базисных переменных всегда равно

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

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

ограничениям.

Начальное решение проще всего найти в случае, когда в каждом

ограничении есть переменная, которая входит в него с коэффициентом 1 и при

этом отсутствует в других ограничениях. Такие переменные принимаются в

качестве базисных (они образуют начальный базис задачи). Остальные

(небазисные) переменные принимаются равными нулю. Таким образом, базисные

переменные принимают значения, равные правым частям ограничений.

Итак, для нахождения начального допустимого решения необходимо, чтобы

в каждое из уравнений входила переменная с коэффициентом 1 и не входила в

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

базисные переменные (X7 и X8) , не хватает еще двух базисных переменных. Их

можно создать с помощью специального способа, который называется

построением искусственного базиса.

4.3. ПОСТРОЕНИЕ ИСКУССТВЕННОГО БАЗИСА

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

базиса (т.е. для получения начального решения) в случаях, когда его

построение непосредственно на основе стандартной формы невозможно. При

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

недопустимым; от него по определенным алгоритмам выполняется переход к

начальному допустимому решению.

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

уравнение стандартной формы, не содержащее базисных переменных (т.е.

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

искусственной переменной. В нашем случае это:

2X1 – X2 + 6X4 – 3X5 + Х9 = 0;

2X1 – 2X3 + 6X4 – 2X6 + Х10 =0.

где Х9 и Х10 – искусственные переменные, не имеющие никакого физического

смысла, причем Х9 , Х10 ?0.

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

переменным, кроме базисных, получим начальный базис: Х7 , Х8 , Х9 , Х10 .

Всего в базисе имеется четыре переменные и их значения равны правым частям

ограничений, т.е.:

Х7 = 8;

Х8 = 8;

Х9 = 0;

Х10 = 0.

Теперь необходимо решить эту задачу, т.е. найти оптимальное допустимое

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

4.4. ПЕРВЫЙ ЭТАП ДВУХЭТАПНОГО СИМПЛЕКС-МЕТОДА

Итак, на первом этапе двухэтапного метода отыскивается начальное

допустимое решение. Для этого выполним следующие действия:

1. Строим искусственную целевую функцию – сумму всех искусственных

переменных:

W = X9 + X10 ( min

2. Так как целевая функция должна быть выражена только через

небазисные

переменные, то выражаем искусственные переменные X9 и X10 через небазисные

переменные, а затем, упростив полученное выражение, переписываем

искусственную целевую функцию:

X9 = - 2X1 + X2 - 6X4 + 3X5;

X10 = - 2X1 + 2X3 - 6X4 + 2X6.

W = - 4X1 + X2 + 2X3 – 12X4 + 3X5 + 2X6 ( min

3. Для приведения к стандартной форме направим искусственную целевую

функцию на максимум, для этого умножим обе ее части на –1:

-W = 4X1 - X2 - 2X3 + 12X4 - 3X5 - 2X6 ( max

4. Определяем начальное, недопустимое решение. Базис состоит из

четырех

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

переменные принимают значения, равные ограничениям задачи. Остальные

переменные считаем равными нулю. В этом случае целевая функция Е принимает

значение 0, искусственная целевая функция –W также принимает значение 0.

5. Составляем исходную симплекс-таблицу:

|БП |X1 |X2 |X3 |X4 |X5 |X6 |X7 |X8 |X9 |X10 |БР |

|E |-1 |-1 |-2 |-3 |-3 |-2 |0 |0 |0 |0 |0 |

|-W |-4 |1 |2 |-12 |3 |2 |0 |0 |0 |0 |0 |

|X7 |1 |1 |1 |0 |0 |0 |1 |0 |0 |0 |8 |

|X8 |0 |0 |0 |1 |1 |1 |0 |1 |0 |0 |8 |

|X9 |2 |-1 |0 |6 |-3 |0 |0 |0 |1 |0 |0 |

|X10 |2 |0 |-2 |6 |0 |-2 |0 |0 |0 |1 |0 |

Таблица 2. Симплекс-таблица №1.

Итак, в первом столбце таблицы указаны базисные переменные, в

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

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

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

6. Реализуем первый этап двухэтапного метода: с помощью процедур

симплекс-

метода выполняем максимизацию функции -W. При этом переменные, включаемые в

базис, выбираются по W-строке (т.е. на каждом цикле в базис включается

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

элемент в W-строке; столбец, соответствующий этой переменной, становится

ведущим). В нашем случае это столбец X4, т. к. коэффициент при этой

переменной в W-строке равен –12. Ведущую строку определяем следующим

образом: рассчитываем так называемые симплексные отношения, т. е. отношения

текущих значений базисных переменных к положительным коэффициентам

ведущего столбца, соответствующим данным базисным переменным. Затем берем

минимальное из этих отношений и по тому, какой строке оно соответствует,

определяем ведущую строку. У нас есть три таких отношения: по переменной Х8

(8/1=8), Х9 (0/6=0) и Х10 (0/6=0). Получилось два минимальных значения,

значит, возьмем любое из них, например по переменной Х9. После находим

ведущий элемент, он расположен на пересечении ведущей строки и ведущего

столбца (в нашем случае он равен 6). Затем определяем переменные, которые

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

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

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

обычным формулам симплекс-метода или по "правилу прямоугольника".

Преобразованиям подвергается вся симплекс-таблица, включая E-строку, W-

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

|БП |X1 |X2 |X3 |X4 |X5 |X6 |X7 |X8 |X9 |X10 |БР |

|E |0 |-1,5 |-2 |0 |-4,5 |-2 |0 |0 |0,5 |0 |0 |

|-W |0 |-1 |2 |0 |-3 |2 |0 |0 |2 |0 |0 |

|X7 |1 |1 |1 |0 |0 |0 |1 |0 |0 |0 |8 |

|X8 |-0,33|0,17 |0 |0 |1,5 |1 |0 |1 |-0,17|0 |8 |

|X4 |0,33 |-0,17 |0 |1 |-0,5 |0 |0 |0 |0,17 |0 |0 |

|X10 |0 |1 |-2 |0 |3 |-2 |0 |0 |-1 |1 |0 |

Таблица 3. Симплекс-таблица №2.

Мы получили новое решение (Х7,Х8,Х4,Х10)=(8,8,0,0). Это решение

недопустимо, так как в базисе содержится искусственная переменная Х10.

Выполим очередную итерацию. По строке –W для включения в базис выбираем

переменную X5 (т.к. –3 – максимальное по модулю отрицательное число).

Столбец X5 становится ведущим. По минимальному симплексному отношению (

8/1,5=5,33; 0/3=0) для исключения из базиса выбираем переменную Х10.

Ведущий элемент равен 3. После проведенных пересчетов получаем новую

симплекс-таблицу:

|БП |X1 |X2 |X3 |X4 |X5 |X6 |X7 |X8 |X9 |X10 |БР |

|E |0 |0 |-5 |0 |0 |-5 |0 |0 |-1 |1,5 |0 |

|-W |0 |0 |0 |0 |0 |0 |0 |0 |1 |1 |0 |

|X7 |1 |1 |1 |0 |0 |0 |1 |0 |0 |0 |8 |

|X8 |-0,33|-0,33 |1 |0 |0 |2 |0 |1 |0,33 |-0,5 |8 |

|X4 |0,33 |0 |-0,33|1 |0 |-0.33|0 |0 |0 |0,17 |0 |

|X5 |0 |0,33 |-0,67|0 |1 |-0,67|0 |0 |-0,33|0,33 |0 |

Таблица 4. Симплекс-таблица №3.

4.5. ВТОРОЙ ЭТАП ДВУХЭТАПНОГО СИМЛЕКС-МЕТОДА

Итак, как видно из Таблицы 4, все искусственные переменные вышли из

базиса, искусственная целевая функция обнулилась – значит, первый этап

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

решение: (Х1,X2,X3,X4,X5,X6) = (0,0,0,0,0,0), целевая функция Е=0. Теперь

переходим к реализации второго этапа: вычеркиваем из таблицы строку

искусственной целевой функции и столбцы искусственных переменных; над новой

таблицей выполняем обычные процедуры симплекс-метода, а именно: ведущий

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

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

отрицательный коэффициент находим по Е-строке целевой функции. Расчет ведем

до тех пор, пока в Е-строке не останется отрицательных коэффициентов:

|БП |X1 |X2 |X3 |X4 |X5 |X6 |X7 |X8 |БР |

|E |0 |0 |-5 |0 |0 |-5 |0 |0 |0 |

|X7 |1 |1 |1 |0 |0 |0 |1 |0 |8 |

|X8 |-0,33|-0,33 |1 |0 |0 |2 |0 |1 |8 |

|X4 |0,33 |0 |-0,33 |1 |0 |-0,33 |0 |0 |0 |

|X5 |0 |0,33 |-0,67 |0 |1 |-0,67 |0 |0 |0 |

Таблица 5. Симплекс-таблица №4.

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

строке содержатся отрицательные коэффициенты. Определим по Е-строке новую

переменную для включения в базис. Это переменная X3, т.к. –5 – максимальное

по модулю отрицательное число (коэффициент Е-строки при переменной X6 также

равен –5, поэтому выбрали любую из этих переменных, например X3). Столбец

X3 становится ведущим. По минимальному симплексному отношению ( 8/1=8;

8/1=8) для исключения из базиса выбираем переменную Х7 (симплексное

отношение при переменной X8 также равно 8, поэтому выбрали любую из этих

переменных). Ведущий элемент равен 1. После проведенных пересчетов получаем

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

|БП |X1 |X2 |X3 |X4 |X5 |X6 |X7 |X8 |БР |

|E |5 |5 |0 |0 |0 |-5 |5 |0 |40 |

|X3 |1 |1 |1 |0 |0 |0 |1 |0 |8 |

|X8 |-1,33|-1,33 |0 |0 |0 |2 |-1 |1 |0 |

|X4 |0,67 |0,33 |0 |1 |0 |-0,33 |0,33 |0 |2,67 |

|X5 |0,67 |1 |0 |0 |1 |-0,67 |0,67 |0 |5,33 |

Таблица 6. Симплекс-таблица №5.

Итак, как видно из таблицы, некоторые из искомых переменных , а именно

Х3, Х4 и Х5, начали расти, что привело и к росту значения целевой функции –

из нулевого значения она приняла значение 40. Это можно объяснить тем, что

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

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

функции максимален. Однако в Е-строке есть еще отрицательный коэффициент,

поэтому продолжим расчеты.

Определим по Е-строке новую переменную для включения в базис. Это

переменная X6, т.к. –5 – максимальное по модулю отрицательное число.

Столбец X6 становится ведущим. По минимальному симплексному отношению (

0/2=0) для исключения из базиса выбираем переменную Х8. Получаем новую

симплекс-таблицу:

|БП |X1 |X2 |X3 |X4 |X5 |X6 |X7 |X8 |БР |

|E |1,67 |1,67 |0 |0 |0 |0 |2,5 |2,5 |40 |

|X3 |1 |1 |1 |0 |0 |0 |1 |0 |8 |

|X6 |-0,67|-0,67 |0 |0 |0 |1 |-0,5 |0,5 |0 |

|X4 |0,44 |0,11 |0 |1 |0 |0 |0,17 |0,17 |2,67 |

|X5 |0,22 |0,55 |0 |0 |1 |0 |0,33 |0,33 |5,33 |

Таблица 7. Симплекс-таблица №6.

Так как все коэффициенты E-строки таблицы 7 положительные, то

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

станок работал над деталями типа 3 8 часов за смену, то есть всю рабочую

смену, и не работал над деталями типа 1 и 2 вообще. Станок-автомат должен

работать за смену 2,67 часа над деталями типа 1 и 5,33 часа над деталями

типа 2 и не должен работать над деталями типа 3. При этом за смену будет

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

40 комплектов. Ни один из станков не будет простаивать.

5. АНАЛИЗ МОДЕЛИ НА ЧУВСТВИТЕЛЬНОСТЬ

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

содержится не только само оптимальное решение, но и другая информация. На

основе последней симплекс-таблицы решаются задачи анализа на

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

на оптимальное решение. Интерпретация симплекс-таблицы и анализ на

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

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

именно ресурсов времени.

5.1. СТАТУС РЕСУРСОВ

По статусу ресурсы делятся на дефицитные и недефицитные. Если

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

он называется дефицитным, если не полностью - недефицитным.

Статус ресурсов определяется по значениям остаточных переменных Х7 и

Х8, введенных в исходную систему ограничений для приведения ее к

стандартной форме. Эти переменные означают остатки ресурсов при реализации

оптимального плана. Ни одна из остаточных переменных не входит в

оптимальное решение, т.е. их значения равны нулю. Это означает, что

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

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

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

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

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

5.2. ЦЕННОСТЬ РЕСУРСОВ

Ценность ресурса - это величина увеличения значения целевой функции при

увеличении запасов данного ресурса на единицу (или соответственно величина

уменьшения целевой функции при снижении запаса ресурса). Другое название

этой величины - теневая (скрытая) цена. В симплекс-таблице, соответствующей

оптимальному решению, теневые цены содержатся в E-строке и представляют

собой коэффициенты при остаточных переменных, соответствующим остаткам

ресурсов. Таким образом, ценность времени работы токарного станка и станка-

автомата соответственно равна по 2,5 комплекта деталей. Другими словами,

если запас времени работы токарного станка увеличить (уменьшить) на 1 час,

то количество производимых комплектов деталей увеличится (уменьшится) на

2,5 единицы, и, аналогично, если увеличить (уменьшить) время работы станка-

автомата станка на 1 час, то количество комплектов увеличится (уменьшится)

на 2,5 комплекта.

5.3. АНАЛИЗ НА ЧУВСТВИТЕЛЬНОСТЬ К ИЗМЕНЕНИЯМ ПРАВЫХ ЧАСТЕЙ ОГРАНИЧЕНИЙ

Для анализа решения на чувствительность к изменению запасов времени

работы станков (без изменения других исходных данных задачи) используются

коэффициенты из столбцов остаточных переменных Х7 и Х8 (соответственно для

токарного станка и станка-автомата) в последней симплекс-таблице. Например,

если запас времени работы токарного станка изменился на d часов и стал

равен 8+d часов, то новое оптимальное решение находится по следующим

формулам:

Х3 = 8 + 1*d

X6 = 0 – 0,5*d

X4 = 2,67 + 0,17*d

X5 = 5,33 + 0,33*d

E = 40 + 2,5*d

При составлении этих формул использовали коэффициенты из столбца

остаточной переменной Х7 в последней симплекс-таблице. По содержательному

смыслу эти формулы означают изменение времени работы токарного станка или

станка-автомата над каждой из деталей в сутки при изменении запаса

дефицитного ресурса. Формула E = 40 + 2,5*d означает изменение количества

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

токарного станка станет не 8, а 6 часов в сутки, т.е. уменьшится на 2 часа

(d=-2), то базисные переменные, а также целевая функция примут следующие

значения:

Х3 = 6; Х6 = 1; Х4 = 2,33; Х5 = 4,67; Е = 35.

Все остальные переменные равны нулю (они не являются базисными).

Как видно, из-за уменьшения запаса времени работы токарного станка

уменьшилось время работы этого станка над деталями типа 3, но вместе с тем

увеличилось время работы станка-автомата над этими же деталями. Так как

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

он уменьшил свое время работы над деталями типа 1 и 2 (ранее он отдавал все

свое время на обработку только этих деталей). И, очевидно, что если время

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

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

Таким образом, для исследования влияния изменения запаса ресурса на

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

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

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

подставить в них величину изменения запаса ресурса (значение d).

Изменение запасов ресурсов (т.е. правых частей ограничений) может

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

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

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

(т. е. диапазон допустимых значений d) находят из системы неравенств. Таким

образом, допустимый диапазон изменения запаса времени работы токарного

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

изменяется, находится из условия:

Х3 = 8 + 1*d > 0

Х6 = 0 – 0,5*d > 0

Х4 = 2,67 + 0,17*d > 0

Х5 = 5,33 + 0,33*d > 0

Решив данную систему неравенств, получим, что –8 < d < 0. Таким

образом, базис оптимального решения будет состоять из переменных

(Х3,Х6,Х4,Х5), если запас времени работы токарного станка будет находиться

в диапазоне от 0 до 8 часов. Выход значения d за границы этого диапазона

приведет к недопустимости найденного нами оптимального решения, так как

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

Страницы: 1, 2, 3


ИНТЕРЕСНОЕ



© 2009 Все права защищены.