442
.pdf81
13.3. Контрольные вопросы
Как называется решение модели симплекс-методом, если:
1.При решении математической модели симплекс-методом проверка условия допустимости приводит к неоднозначному выбору исключаемой переменной?
2.При решении математической модели прямая представляющая целевую функцию параллельна прямой соответствующей связывающему неравенству и целевая функция принимает одно и тоже оптимальное значение на некотором множестве точек границ пространства решений?
3.Пространство допустимых решений является не ограниченным?
4.Невозможно одновременно выполнить ограничения модели?
82
14. ОПТИМИЗАЦИЯВЫПУСКАПРОДУКЦИИМЕБЕЛЬНОГОЦЕХА
14.1. Основные положения и методические указания
Намечается выпуск продукции двух видов – шкаф, офисный стол. Для производства шкафа требуется 1м3 МДФ, 2м3 ДСП и 1 чел.-день. трудозотрат; для офисного стола – 3,5м3 МДФ, и 0.5м3 ДСП и тоже 1 чел.-день. трудозатрат. Для производства мебели имеется 350м3 МДФ, 240 м3 ДСП и 150 чел.-дней трудозатрат. По плану мебели не должно быть менее 110 штук и необходимо обеспечить прибыль не менее 1400 у.е. Требуется определить оптимальное число мебели каждого вида, обеспечивающее максимальную прибыль, если прибыль от реализации шкафа составляет 10 у.е., а от офисного стола 20 у.е. [5]
14.2. Решим задачу методом динамического программирования.
Пусть х1 – число шкафов, а х2 – число офисных столов. Прибыль от шкафов составляет 10х1 у.е., а от столов 20х2 у.е., т.е. необходимо максимизировать целевую функцию f ( x ) =10x1 + 20x2 .
Расход МДФ составляет x1 + 3,5x2 , ДСП 2x1 + 0,5x2 , трудовых ресурсов х1+х2. Поэтому ограничения задачи имеют вид:
x1 + 3,5x2 ≤ 350; 2x1 + 0,5x2 ≤ 240; x1 + x2 ≤150;
10x1 + 20x2 ≥1400; x1 ≥ 0;x2 ≥ 0.
Первые три неравенства описывают ограничения по ресурсам, четвёртое и пятое – соответственно плановое задание по общему числу мебели и ограничение по прибыли.
Для решения задачи симплекс-методом сведем систему ограничений к равенствам путем введения неотрицательных слабых переменных х3,х4,х5,х6,х7
83
(в первом и втором ограничениях проведём умножение на 2, а в пятом сократим
обе части неравенства на 10): |
|
|
2х1+7х2+х3 |
|
=700; |
4х1+х2 |
+х4 |
=480; |
х1+х2 |
+х5 |
=150; |
-х1-х2 |
+х6 |
= -110; |
-х1-2х2 |
+х7 |
= -140; |
хj≥0, j =1,7.
Первым этапом в симплекс-методе является отыскание опорного решения
– допустимого базисного решения, с которого начинается поиск оптимального решения. Чтобы решение было опорным, базисные переменные должны быть неотрицательны, т.е. элементы bi(i =1,5 ) столбца свободных членов должны быть неотрицательны. Для поиска опорного решения надо сформулировать дополнительную фиктивную целевую функцию ϕ(х), элементы которой равны сумме элементов строк, отражающих те ограничения, где bi <0. С помощью симплекс-метода фиктивная целевая функция максимизируется. Если ϕ(х)=0 и при этом все коэффициенты в строке для ϕ(х) нулевые, то базисное решение будет опорным. Тогда, исключая строку для ϕ(х), переходим к отысканию оптимального решения исходной задачи. Исходная таблица симплекс-метода для нашей задачи имеет вид табл. 2.1
|
|
|
|
|
|
|
|
|
|
Таблица 2.1 |
|
|
|
|
Исходная таблица симплекс-метода |
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
Базисные |
Столбец |
-x1 |
|
-x2 |
-x3 |
-x4 |
-x5 |
-x6 |
-x7 |
|
Контроль |
переменные |
свободных |
|
|
|
|
|
|
|
|
|
|
|
членов bi |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
х3 |
700 |
2 |
|
4 |
1 |
0 |
0 |
0 |
0 |
|
710 |
х4 |
480 |
4 |
|
1 |
0 |
0 |
0 |
0 |
0 |
|
486 |
х5 |
150 |
1 |
|
1 |
0 |
0 |
1 |
0 |
0 |
|
153 |
х6 |
-110 |
-1 |
|
-1 |
0 |
0 |
0 |
1 |
0 |
|
-111 |
х7 |
-140 |
-1 |
|
-2 |
0 |
0 |
0 |
0 |
1 |
|
-142 |
f(x) |
0 |
-10 |
|
-20 |
0 |
0 |
0 |
0 |
0 |
|
-30 |
|
|
|
|
|
|
|
|
|
|
|
|
ϕ(x) |
-250 |
-2 |
|
-3 |
0 |
0 |
0 |
1 |
1 |
|
-253 |
|
|
|
|
|
|
|
|
|
|
|
|
84
Согласно табл. 2.1. f(x)=-10(-xi)+(-20)(-x2)=10x1+20x2. Проведём максими-
зацию функции ϕ(х). Берём меньший отрицательный коэффициент, равный -3; он указывает, что переменную х2 надо перевести в базисные. Чтобы определить какую переменную из базисных надо перевести в свободные, рассмотрим по-
ложительные отношения bi к соответствующим элементам |
столбца х2: |
700/7=100; 480/1=480; 150/1=150; -110/(-1)=110; |
|
- 140/(-2)=70. Минимальное значение, равное 70, указывает, что х7 надо перевести в свободные, а генеральным (разрешающим) элементом является (-2).Для получения следующей симплекс таблицы применим метод полного исключения Жордана (табл. 2.2).
Разрешающую строку (для х7) делим на (-2) и заносим в табл. 2.2; столбец х2 заполняем нулями. Столбцы для х3,х4,х5,х6 переносим без изменения, так как они пересекают нулевые элементы разрешающей строки. Остальные элементы таблицы пересчитываем по правилу прямоугольника. Проверяем, совпадает ли сумма чисел в строке с числом в контрольном (последнем) столбце. Если сов-
падения нет, произошла ошибка в расчёте. Вместе с функцией ϕ(х) пересчитываю и целевую функцию f(х).
|
|
|
|
|
|
|
|
|
Таблица 2.2 |
||
|
|
|
|
Первая итерация |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
Базисные |
Столбец |
-x1 |
-x2 |
-x3 |
-x4 |
-x5 |
-x6 |
-x7 |
|
Контроль |
|
переменные |
свободных |
|
|
|
|
|
|
|
|
|
|
|
членов bi |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
х3 |
210 |
-3/2 |
0 |
1 |
0 |
0 |
0 |
7/2 |
|
213 |
|
х4 |
410 |
7/2 |
0 |
0 |
1 |
0 |
0 |
1/2 |
|
415 |
|
х5 |
80 |
1/2 |
0 |
0 |
0 |
1 |
0 |
1/2 |
|
82 |
|
х6 |
-40 |
-1/2 |
0 |
0 |
0 |
0 |
1 |
-1/2 |
|
-40 |
|
х7 |
70 |
1/2 |
1 |
0 |
0 |
0 |
0 |
-1/2 |
|
71 |
|
f(x) |
1400 |
0 |
0 |
0 |
0 |
0 |
0 |
-10 |
|
1390 |
|
|
|
|
|
|
|
|
|
|
|
|
|
ϕ(x) |
-40 |
-1/2 |
0 |
0 |
0 |
0 |
1 |
-1/2 |
|
-40 |
|
|
|
|
|
|
|
|
|
|
|
|
|
85
Продолжаем максимизировать ϕ(х). В базисные переменные можно пере-
вести х1 и х7, так как для них есть отрицательные коэффициенты в строке ϕ(х). Переводим х1 в базисные переменные. По минимуму положительных отношений bi к элементам столбца (-x1) выбираем элемент х6, который надо перевести в свободные, генеральный элемент – (-1/2), разрешающую строку для х6 и разрешающий столбец для х1. Получим табл. 2.3.
|
|
|
|
|
|
|
|
|
Таблица 2.3 |
||
|
|
|
|
Вторая итерация |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
Базисные |
Столбец |
-x1 |
-x2 |
-x3 |
-x4 |
-x5 |
-x6 |
-x7 |
|
Контроль |
|
переменные |
свободных |
|
|
|
|
|
|
|
|
|
|
|
членов bi |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
х3 |
330 |
0 |
0 |
1 |
0 |
0 |
-3 |
5 |
|
333 |
|
х4 |
130 |
0 |
0 |
0 |
1 |
0 |
7 |
-3 |
|
135 |
|
х5 |
40 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
|
42 |
|
х6 |
80 |
1 |
0 |
0 |
0 |
0 |
-2 |
1 |
|
80 |
|
х7 |
30 |
0 |
1 |
0 |
0 |
0 |
1 |
-1 |
|
31 |
|
f(x) |
1400 |
0 |
0 |
0 |
0 |
0 |
0 |
-10 |
|
1390 |
|
|
|
|
|
|
|
|
|
|
|
|
|
ϕ(x) |
0 |
-10 |
0 |
0 |
0 |
0 |
0 |
0 |
|
0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
Из табл. 2.3. видно, что достигнет максимум фиктивной целевой функции
(ϕ(х)=0), и все коэффициенты в строке ϕ(х) равны нулю, т.е. получено опорное решение х6+х7=0, х1=80, х2=20, х3=330, х4=130, х5=40. Это решение не является оптимальным, так как в строке f(x) имеется отрицательный коэффициент.
Продолжаем улучшать решение симплекс-методом. Строку ϕ(х) исключаем. Генеральным будет элемент (1,7), равный 5; х7 переводим в базис (вместо х3). Получим табл. 2.4, затем табл. 2.5. В табл. 2.4. отмечен генеральный элемент.
86
|
|
|
|
Третья итерация |
|
|
Таблица 2.4 |
||||
|
|
|
|
|
|
|
|
|
|||
Базисные |
Столбец |
-x1 |
-x2 |
-x3 |
-x4 |
-x5 |
-x6 |
-x7 |
|
Контроль |
|
переменные |
свободных |
|
|
|
|
|
|
|
|
|
|
|
членов bi |
|
|
|
|
|
|
|
|
|
|
х3 |
66 |
0 |
0 |
1/5 |
0 |
0 |
-3/5 |
5/5 |
|
333/5 |
|
х4 |
328 |
0 |
0 |
3/5 |
1 |
0 |
26/5 |
0 |
|
1674/5 |
|
х5 |
40 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
|
42 |
|
х6 |
14 |
1 |
0 |
-1/5 |
0 |
0 |
-7/5 |
0 |
|
67/5 |
|
х7 |
96 |
0 |
1 |
1/5 |
0 |
0 |
2/5 |
0 |
|
488/5 |
|
f(x) |
2060 |
0 |
0 |
2 |
0 |
0 |
-6 |
0 |
|
2056 |
|
|
|
|
|
Оптимальное решение |
|
|
Таблица 2.5 |
|||||
|
|
|
|
|
|
|
|
|
||||
Базисные |
Столбец |
-x1 |
-x2 |
|
-x3 |
-x4 |
-x5 |
-x6 |
-x7 |
|
Контроль |
|
переменные |
свободных |
|
|
|
|
|
|
|
|
|
|
|
|
членов bi |
|
|
|
|
|
|
|
|
|
|
|
х3 |
90 |
0 |
0 |
|
1/5 |
0 |
3/5 |
0 |
1 |
|
459/5 |
|
х4 |
120 |
0 |
0 |
|
3/5 |
1 |
-26/5 |
0 |
0 |
|
582/5 |
|
х5 |
40 |
0 |
0 |
|
0 |
0 |
1 |
1 |
0 |
|
42 |
|
х6 |
70 |
1 |
0 |
|
-1/5 |
0 |
7/5 |
0 |
0 |
|
361/5 |
|
х7 |
80 |
0 |
1 |
|
1/5 |
0 |
-2/5 |
0 |
0 |
|
404/5 |
|
f(x) |
2300 |
0 |
0 |
|
2 |
0 |
6 |
0 |
0 |
|
2308 |
|
В табл. 2.5. все коэффициенты строки f(x) неотрицательны, значит максимум достигнут и получено соответствующее ему решение: х1=70, х2=80, fmax(x)=2300. Таким образом, максимальная прибыль составит 2300 у.е. при производстве 70 шкафов и 80 офисных столов. Слабые переменные остались равными х3=0, х4=120, х5=0, х6=40, х7=90. Значения х3,х4,х5 показывают остатки ресурсов: МДФ и трудовые ресурсы израсходованы полностью, ДСП осталось 120м3; х6 и х7 показывают, на сколько перевыполнены плановые задания по числу мебели и по прибыли.
14.3.Контрольные вопросы
1.Каким образом составляются ограничения по ресурсам, прибыли общему числу продукции?
2.Чтоназываетсяопорным, базиснымрешением, фиктивнойцелевойфункцией?
3.Как проводятся первая, вторая и третья итерации?
4.Что показывают переменные х1,х2,х3,х4,х5,х6,х7?
87
15. РАСПРЕДЕЛЕНИЕ МАТЕРИАЛЬНЫХ СРЕДСТВ СРЕДИ ДВУХ ПРЕДПРИЯТИЙ С ЦЕЛЬЮ МАКСИМИЗАЦИИ ДОХОДА
15.1. Основные положения и методические указания
Для двух предприятий выделено 1400 единиц денежных средств. Как распределить все средства в течение 4 лет, чтобы доход был наибольшим, если
известно, |
что доход от х единиц, вложенных |
в |
первое |
предприятие |
равен |
f1 (x) = 3x , |
а доход от у единиц, вложенных |
в |
первое |
предприятие |
равен |
f2 ( y) = 4y ? Остаток средств к концу года составляет g1 (x) = 0,5x - для первого предприятия, - для второго предприятия [6].
15.2. Решим задачу методом динамического программирования.
Процесс распределения средств разобьем на 4 этапа – по соответствующим годам.
Обозначим ak = xk + yk - средства, которые распределяются на k–ом шаге как сумма средств по предприятиям.
Суммарный доход от обоих предприятий на к–ом шаге:
zk = f1 (xk ) + f2 (ak − xk ) = 3xk + 4(ak − xk ) = 4ak − xk |
(15.1) |
Остаток средств от обоих предприятий на k–ом шаге: |
|
ak +1 = g1 (xk ) + g2 (ak − xk ) = 0,5xk + 0,3(ak − xk ) = 0,3ak + 0,2xk |
(15.2) |
Обозначим zk (ak ) - максимальный доход, полученный от распределения средств ak между двумя предприятиями с k-го шага до конца рассматриваемого периода.
Рекуррентные соотношения Беллмана для этих функций
z4 (a4 ) = max {4a4 − x4 } |
(15.3) |
0≤x4 ≤a4 |
|
zk (ak ) = max {4ak − xk + zk +1 (0,3ak + 0,2xk )} |
(15.4) |
0≤xk ≤ak |
|
88
Проведем оптимизацию, начиная с четвертого шага:
4-й шаг.
Оптимальный доход равен: z (a ) = max {4a − x }= 4a , т.к. линейная убы-
4 4 0≤x4 ≤a4 4 4 4
вающая функция достигает максимума в начале рассматриваемого промежутка, т.е. при x4 = 0 .
3-й шаг.
z3 (a3 ) = max {4a3 |
− x3 + 4(0,3a3 |
+ 0,2x3 )}= max {5,2a3 −0,2x3 )}= 5,2a3 , т.к. линейная убы- |
0≤x3 ≤a3 |
|
0≤x3 ≤a3 |
вающая функция достигает максимума в начале рассматриваемого промежутка, т.е. при x3 = 0 .
2-й шаг.
z2 (a2 ) = max {4a2 |
− x2 |
+5,2(0,3a2 |
+ 0,2x2 )}= max {5,56a2 + 0,04x2 )}= 5,6a2 , т.к. линейная |
0≤x2 ≤a2 |
|
|
0≤x2 ≤a2 |
возрастающая функция достигает максимума в конце рассматриваемого промежутка, т.е. при x2 = a2 .
1-й шаг.
z1 (a1 ) = max {4a1 |
− x1 +5,6(0,3a1 |
+ 0,2x1 )}= max {5,68a1 + 0,12x1 )}= 6,8a1 , т.к. линейная |
0≤x1 ≤a1 |
|
0≤x1 ≤a1 |
возрастающая функция достигает максимума в конце рассматриваемого промежутка, т.е. при x1 = a1 .
Результаты оптимизации:
z (a ) = 6,8a ; |
x = a |
|||
1 |
1 |
1 |
1 |
1 |
z2 (a2 ) = 5,6a2 ; |
x2 = a2 |
|||
z3 (a3 ) = 5,2a3 ; |
x3 = 0 |
|
||
z4 (a4 ) = 4a4 ; x4 = 0 |
|
Определим количественное распределение средств по годам: Т.к. a1 = a =1400, x1 =1400 , получаем a2 = 0,3a1 + 0,2x1 = 700
a3 = 0,3a2 + 0,2x2 = 350
a4 = 0,3a3 + 0,2x3 =105
Представим распределение средств в виде таблицы:
89
|
|
|
|
|
Таблица 15.1 |
|
Распределение средств по годам |
|
|||
|
|
|
|
|
|
предприятие |
|
|
год |
|
|
|
|
|
|
|
|
|
1 |
2 |
|
3 |
4 |
|
|
|
|
|
|
1 |
1400 |
700 |
|
0 |
0 |
|
|
|
|
|
|
2 |
0 |
0 |
|
350 |
105 |
|
|
|
|
|
|
При таком распределении средств за 4 года будет получен доход, равный
zmax = z1 (a1 ) = 6,8 1400 = 9520 . |
(15.5) |
15.3.Контрольные вопросы
1.Этапы динамического программирования.
2.Оптимизация распределения средств по годам на базе динамического программирования.
3.Какие факторы влияют на максимизацию прибыли предприятия с точки зрения динамического программирования?
90
16. МОДЕЛИРОВАНИЕ СИСТЕМЫ МАССОВОГО ОБСЛУЖИВАНИЯ НА ПРИМЕРЕ ДЕРЕВООБРАБАТЫВАЮЩЕГО ЦЕХА
16.1. Основные положения и методические указания
Деревообрабатывающий цех имеет 5 станков. Поток заявок на обработку древесины простейший. Среднее число заявок, поступающих в цех за сутки, равно 140. Время обработки одной заявки на одном станке распределено по показательному закону и составляет в среднем 40 минут. Определить, существует ли стационарный режим работы цеха; вероятность того, что заявка застанет все станки занятыми; среднее число заявок в цеху; среднее число заявок в очереди; среднее время ожидания свободного станка; среднее время пребывания заявки в цеху.
Для решения задач такого типа следует изучить раздел «Марковские системы массового обслуживания», познакомиться с классификацией СМО, показателями эффективности, параметрами и характеристиками СМО. Изучить решение задачи Эрланга, расчет показателей эффективности для различных типов СМО [6].
16.2. Определение режима работы деревообрабатывающего цеха
Рассматриваемая в задаче СМО относится к классу многоканальных систем с неограниченной очередью [9]. Число каналов k =5. Найдем λ-
интенсивность потока заявок:λ = М1[Т] , где М[T ] = 14024 ≈ 0,17 (час.) - среднее время между двумя последовательными заявками входящего потока пользова-
телей. Тогда λ = |
|
1 |
≈ 5,85 польз./час. Найдем µ -интенсивность потока об- |
|||
0,17 |
||||||
|
|
|
|
|||
служивания: µ = |
|
|
1 |
|
, где М[Т обсл.]=40 мин=0,67 часа - среднее время |
|
М[Tообс.] |
|