
MathematicalOptimization
.pdf
Начальная вершина |
|
Конечная вершина |
Вес ребра ( ) |
|
|
W-функция |
|
|
|
|
|
|
|
|
|
|
|
1 |
|
2 |
0,5 |
12 |
9 |
0, 5 * (12 + |
29 2) |
|
1 |
|
4 |
0,5 |
28 |
16 |
0, 5 * (28 + |
162 |
2) |
2 |
|
5 |
1 |
14 |
9 |
(14 + 9 2) |
|
|
|
|
|
|
|
|
2 |
|
|
3 |
|
1 |
0,6 |
11 |
4 |
0, 6 * (11 + |
24 2) |
|
3 |
|
3 |
0,4 |
33 |
16 |
0, 4 * (33 + |
162 |
2) |
4 |
|
2 |
0,1 |
11 |
4 |
0, 1 * (11 + |
24 2) |
|
4 |
|
3 |
0,3 |
33 |
25 |
0, 3 * (33 + |
252 |
2) |
4 |
|
5 |
0,2 |
45 |
25 |
0, 2 * (45 + |
252 |
2) |
4 |
|
6 |
0,4 |
23 |
16 |
0, 4 * (23 + |
162 |
2) |
5 |
|
6 |
1 |
43 |
25 |
(43 + 25 2) |
||
|
|
|
|
|
|
2 |
|
|
|
Таблица 4: Производящие функции моментов |
|
|
|
Вероятность выхода в завершающий узел графа:
= (0).
Для моделирования работы был написан скрипт, представленный в листинге 7.
|
|
|
|
|
Листинг 7: Код для вычисления заданных выражений |
|||||
1 |
%Исходные |
данные : |
|
|
|
|
||||
2 |
%М − математиче ское |
ожидание |
|
|||||||
3 |
%D − дисперсия |
|
|
|
|
|
||||
4 |
%P − вероятность |
|
|
|
|
|
||||
5 |
M12 |
= |
12; |
D12 |
= 9 |
; |
P12 |
= 0 . 5 ; |
||
6 |
M14 |
= |
28; |
D14 |
= |
16; |
P14 |
= 0 . 5 ; |
||
7 |
M25 |
= |
14; |
D25 |
= 9 |
; |
P25 |
= 1 |
; |
|
8 |
M31 |
= |
11; |
D31 |
= 4 |
; |
P31 |
= 0 . 6 ; |
||
9 |
M33 |
= |
33; |
D33 |
= |
16; |
P33 |
= 0 . 4 ; |
||
10 |
M42 |
= |
11; |
D42 |
= 4 |
; |
P42 |
= 0 . 1 ; |
||
11 |
M43 |
= |
33; |
D43 |
= |
25; |
P43 |
= 0 . 3 ; |
||
12 |
M45 |
= |
45; |
D45 |
= |
25; |
P45 |
= 0 . 2 ; |
||
13 |
M46 |
= |
23; |
D46 |
= |
16; |
P46 |
= 0 . 4 ; |
||
14 |
M56 |
= |
43; |
D56 |
= |
25; |
P56 |
= 1 |
; |
15
16syms s ;
17%W − функции
18 W12 = P12 * exp (M12 * s + D12/2 * s ^2) ;
21

19 |
W14 |
= P14 |
* |
exp (M14 * |
s + D14/2 |
* |
s ^2) ; |
|
20 |
W25 |
= P25 |
* |
exp (M25 * |
s + D25/2 |
* |
s ^2) ; |
|
21 |
W31 |
= P31 |
* |
exp (M31 * |
s + D31/2 |
* |
s ^2) ; |
|
22 |
W33 |
= P33 |
* |
exp (M33 * |
s + D33/2 |
* |
s ^2) ; |
|
23 |
W42 |
= P42 |
* |
exp (M42 * |
s + D42/2 |
* |
s ^2) ; |
|
24 |
W43 |
= P43 |
* |
exp (M43 |
* |
s + D43/2 |
* |
s ^2) ; |
25 |
W45 |
= P45 |
* |
exp (M45 |
* |
s + D45/2 |
* |
s ^2) ; |
26 |
W46 |
= P46 |
* |
exp (M46 |
* |
s + D46/2 |
* |
s ^2) ; |
27 |
W56 |
= P56 |
* |
exp (M56 |
* |
s + D56/2 |
* |
s ^2) ; |
28
29 WE = (W12*W25*W56 + W14*W42*W25*W56 + W14*W45*W56 + W14*W46 − W33*
W12*W25*W56 − W33*W14*W42*W25*W56 − W33*W14*W45*W56 − W33*W14*W46 ) /(1 − W14*W43*W31 − W33)
30 |
|
|
|
|
|
31 |
We = |
s i m p l i f y (WE) |
|
||
32 |
We0 = |
subs (We, |
’ s ’ , 0) |
% We(0) |
|
33 |
|
|
|
|
|
34 |
% Нахождение мат . ожидания и дисперсии |
||||
35 |
Me = We / We0; |
|
|
||
36 |
|
|
|
|
|
37 |
% Нахождение производной 1−го порядка при s = 0 |
||||
38 |
m1 = |
d i f f (Me, |
’ s ’ ) ; |
|
|
39 |
% Замена символа s на 0 в выражении m1 |
||||
40 |
m1 = |
subs (m1, |
’ s ’ , 0) |
|
|
41 |
|
|
|
|
|
42 |
% Нахождение производной 2−го порядка при s = 0 |
||||
43 |
m2 = |
d i f f (Me, |
’ s ’ , 2) ; |
|
|
44 |
% Замена символа s на 0 в выражении m2 |
||||
45 |
m2=subs (m2, |
’ s ’ , 0) |
|
||
46 |
|
|
|
|
|
47 |
% Нахождение |
дисперсии |
времени выхода проце с са в завершающий уз ел гр |
||
|
афа |
|
|
|
|
|
|
|
|
||
48 |
D = m2 − (m1)^2 |
|
22

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Результаты работы представлены в листинге 8.
Листинг 8: Результат работы скрипта
>> main
WE = |
|
|
|
|
|
|
|
|
−((exp (8* s^2 + 23* s ) *exp (8* s^2 + |
28* s ) ) /5 − |
(2* exp (8* s^2 + |
23* s ) *exp |
|||||
(8* s^2 + 28* s ) *exp (8* s^2 + 33* s ) ) /25 |
+ ( exp ((9* s ^2) /2 + |
12* s ) *exp |
||||||
((9* s ^2) /2 + 14* s ) *exp ((25* s ^2) /2 + |
43* s ) ) /2 + ( exp (8* s^2 + 28* s ) |
|||||||
*exp ((25* s ^2) /2 + 43* s ) *exp ((25* s ^2) /2 + |
45* s ) ) /10 + ( exp (2* s^2 + |
|||||||
11* s ) *exp ((9* s ^2) /2 + 14* s ) *exp (8* s^2 + |
28* s ) *exp ((25* s ^2) /2 + |
|||||||
43* s ) ) /20 − ( exp ((9* s ^2) /2 + 12* s ) *exp ((9* s ^2) /2 + 14* s ) *exp (8* s |
||||||||
^2 + |
33* s ) *exp ((25* s ^2) /2 |
+ |
43 |
* s ) ) /5 − ( exp (8* s^2 + 28* s ) *exp (8* s |
||||
^2 + |
33* s ) *exp ((25* s ^2) /2 |
+ |
43 |
* s ) *exp ((25* s ^2) /2 + 45* s ) ) /25 − ( |
||||
exp (2* s^2 + 11* s ) *exp ((9* s ^2) /2 + 14 |
* s ) *exp (8* s^2 + 28* s ) *exp (8* s |
|||||||
^2 + |
33* s ) *exp ((25* s ^2) /2 |
+ |
43 |
* s ) ) /50) /((2* exp (8* s^2 + |
33* s ) ) /5 + |
|||
(9* exp (2* s^2 + 11* s ) *exp (8* s^2 + 28 |
* s ) *exp ((25* s ^2) /2 |
+ 33* s ) ) |
||||||
/100 − 1) |
|
|
|
|
|
|
|
We = |
|
|
|
|
−(exp (16 |
* s^2 + 51* s ) *(50* exp ((11 |
* s ^2) /2 + 18* s ) − 8*exp (8* s^2 + 33* s |
||
) + 5 |
*exp (11* s^2 + 45* s ) − 20 |
*exp ((27* s ^2) /2 + 51* s ) |
+ 10*exp (17 |
* |
s^2 + 65* s ) − 2*exp (19* s^2 + |
78* s ) − 4*exp (25* s^2 + |
98* s ) + 20) ) |
|
|
/(40* exp (8* s^2 + 33* s ) + 9*exp ((45* s ^2) /2 + 72* s ) − |
100) |
|
We0 =
1
m1 =
88.4706
23

22
23 m2 =
24
25 1.0299 e+04
26
27
28 D =
29
30 2.4723 e+03
31
32>>
2.3Результат
По итогам проведённых расчётов были получены следующие результаты:
1.Вероятность выхода в завершающий узел графа равна 100% ( = = 1).
2.Математическое ожидание 88,46.
3.Дисперсия времени выхода процесса в завершающий узел графа 2472,3.
24
3Поиск оптимальной стратегии принятия решений с использованием марковских моделей.
3.1Постановка задачи
Пусть имеется машина (станок), которая обслуживается периодически один раз в час. В каждый момент она может находиться в одном из двух состояний: рабочем (состояние 1) и нерабочем (состояние 2).
Если машина на некотором шаге проработала непрерывно 1 час, то доход равен 3 рублям. При этом вероятность остаться на следующем шаге в состоянии 1 равна 0,7, а вероятность перейти в состояние 2 равна 0,3. Если машина отказала на некотором шаге, то её можно отремонтировать двумя способами. Первый является ускоренным, требует затрат в 2 рубля (доход равен -2 рубля) и обеспечивает переход в состояние 1 с вероятностью в 0,6. Второй, обычный способ требует затрат в 1 рубль и обеспечивает переход в состояние 1 с вероятностью 0,4.
Найти оптимальную стратегию для = ∞ методом итераций по стратегиям, и перечислить все стационарные стратегии; построить марковскую модель принятия решений.
3.2Марковская модель принятия решений
Матрицы переходных вероятностей ( 1 и 2) и матрицы доходов ( 1 и 2) имеют следующий вид:
1 |
= |
( 0, 6 |
0, 4 ) |
2 |
= |
( 0, 4 |
0, 6 ) |
|||
|
|
0, 7 |
0, 3 |
|
|
|
0, 7 |
0, 3 |
||
|
1 = ( |
2 |
0 ) |
2 |
= |
( |
|
1 0 ) |
||
|
|
|
3 |
0 |
|
|
|
|
3 |
0 |
|
|
− |
|
|
|
|
|
− |
|
|
Модель представлена на рисунке 3.
После работы, машина можем:
∙Остаться в исправном состоянии 1 = 1; 1
∙Перейти в неисправное состояние 2 = 1; 2
25

0,7
1
0,6 |
0,4 |
1 |
0,3 |
2 |
0,4 |
|
0,6 |
2 |
|
1 |
2
Рис. 3: 1 и 2 состояния системы; 1 и 2 принимаемые решения; красные рёбра - траты, чёрные - вероятность перехода
Таким образом, возможны следующие стационарные стратегии:
1 = ( 1, 1)
2 = ( 1, 2)
3 = ( 2, 1)
4 = ( 2, 2)
3.3Метод итерации по стратегиям
Этап оценивания параметров. Выбираем произвольную стратегию = ( 1, 2, . . . , ) . Используя соответствующие стратегии , матрицу переходных вероятностей ( ) = ( ( ))
и матрицу доходов ( ) = ( ( )) и полагая ( ) = 0, решаем систему линейных
алгебраических уравнений + ( ) − ∑ ( ) ( ) = ( ), = 1, , относительно
=1
, (1), . . . , ( − 1).
Этап улучшения стратегии. Для каждого состояния , находим допустимое решение
|
|
* , на котором достигается max( )( ( ) + |
∑ |
( ) ( )) |
|
|
=1 |
Эти оптимальные решения образуют новую стратегию = ( *1, *2, . . . * ) . Если = , то стратегия и является оптимальной. В противном случае нужно обозначить стратегию t через и вернуться к первому этапу.
26
Воспользовавшись матрицами 1, 2, 1, 2 и их независимостью от номера этапа, вычислим ожидаемые доходы, при различных вариантах допустимых решений:
1( 1) = 0, 7 * 3 + 0, 3 * 0 = 2, 1
2( 1) = 0, 6 * (−2) + 0, 4 * 0 = −1, 2
1( 2) = 0, 7 * 3 + 0, 3 * 0 = 2, 1
2( 2) = 0, 4 * (−1) + 0, 6 * 0 = −0, 4
В качестве произвольной стратегии используем стратегию номер два. В этом случае на этапе оценивания параметров, учитывая, что (2) = 0, получаем систему линейных алгебраических уравнений
|
|
+ (1 − 0, 7) (1) |
= |
|
2, 1 |
|
|
|||
|
|
|
|
− |
0, 6 |
= |
− |
1, 2 |
|
|
|
|
|
|
|
|
|
|
|
||
которая имеет единственное решение: = 0, 78, (1) = 3, 3. |
|
|
||||||||
Результаты соответствующих вычислений приведены в табл. 5. |
|
|
||||||||
|
|
|
|
|
|
|||||
|
( ) = ( ) + 1( ) * (1) |
|
max |
* |
||||||
i = 1 |
|
i = 2 |
|
|
|
|
|
|||
1 |
2,1+0,7*3,3=4,41 |
|
2,1+0,7*3,3=4,41 |
4,41 |
2 |
|||||
|
|
|
|
|
|
|||||
2 |
-1,2+0,6*3,3=0,78 |
|
-0,4+0,4*3,3=0,92 |
0,78 |
2 |
|||||
|
|
|
|
|
|
|
|
|
|
|
Таблица 5: Решение с оценочными параметрами
Новая стратегия = ( 2, 2) отличается от стратегии , поэтому нужно на этап оценивания параметров, полагая = ( 2, 1) .
Новой стратегии t соответствует следующая система линейных алгебраических уравнений:
|
+ (1 − 0, 7) (1) |
= |
|
2, 1 |
||
|
|
− |
0, 4 |
= |
− |
0, 4 |
|
|
|
|
|
которая имеет единственное решение: = 0, 85, (1) = 3, 125.
Результаты соответствующих вычислений приведены в табл. 6.
Новая стратегия совпала с предыдущей, таким образом оптимальная стратегия определена: оптимальное использовать более дешевый ремонт с меньшей гарантией успешного завершения.
27
|
( ) = ( ) + 1( ) * (1) |
max |
* |
|
i = 1 |
i = 2 |
|||
1 |
2,1+0,7*3,125=4,2875 |
2,1+0,7*3,125=4,2875 |
4,2875 |
2 |
|
|
|
|
|
2 |
-1,2+0,6*3,125=0,675 |
-0,4+0,4*3,125=0,85 |
0,85 |
2 |
Таблица 6: Проверочное решение
3.4Метод линейного программирования
Все параметры посчитаны, мы можем сформулировать задачу в виде задачи линейного
программирования, для проверки ранее полученных результатов.
|
|
|
|
|
2, 1 11 |
+ 2, 1 12 − 1, 2 21 − 0, 4 22− > |
max |
|||||
|
|
|
|
|
0, 3 11 + 0, 3 12 − 0, 6 21 − 0, 4 22 = |
0 |
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0, 3 11 |
|
0.3 12 + 0, 6 21 + 0, 4 22 = |
0 |
|||
|
|
|
|
|
|
|
||||||
|
|
|
|
|
− |
|
− |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
2 |
|
|
0 |
|
|
|
|
|
|
|
|
|
= 1, |
≥ |
|
||
|
|
|
|
|
|
|
=1 =1 |
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
∑∑ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Код скрипта представлен в листинге 9. |
|
|
|
|
|||||||
|
|
Листинг 9: Код для вычисления задачи линейного программирования |
||||||||||
1 |
x0 = [ 0 ; 0 ; 0 ; 0 ] |
|
|
|
|
|
|
|
|
|||
2 |
A=[−1 0 0 |
0 ; 0 −1 |
0 |
0 ; 0 |
0 |
−1 0 ; 0 0 0 |
−1] |
|
|
|
||
3 |
b=[0; 0 ; 0 ; 0 ] |
|
|
|
|
|
|
|
|
|||
4 |
Aeq=[0.3 |
0.3 −0.6 |
−0.4; |
|
|
|
|
|
|
|||
5 |
|
−0.3 |
−0.3 0.6 |
|
0 . 4 ; |
|
|
|
|
|
|
|
6 |
|
1 1 |
1 |
1 ] ; |
|
|
|
|
|
|
|
|
7 |
beq = [ 0 ; 0 ; 1 ] ; |
|
|
|
|
|
|
|
|
|||
8 |
%Максимизирование функции |
|
|
|
|
|
||||||
9 |
[ x , |
f v a l ] |
= |
fmincon ( i n l i n e ( ’ −(2.1*x (1) +2.1*x (2) −1.2*x (3) −0.4*x (4) ) ’ ) |
||||||||
|
, |
x0 , A, |
b , Aeq , |
beq ) |
|
|
|
|
|
|
||
10 |
|
|
|
|
|
|
|
|
|
|
|
|
11 |
q11 |
= x (1) /( x (1)+x (2) ) |
|
|
|
|
|
|
||||
12 |
q21 |
= x (2) /( x (1)+x (2) ) |
|
|
|
|
|
|
||||
13 |
q12 |
= x (3) /( x (3)+x (4) ) |
|
|
|
|
|
|
||||
14 |
q22 |
= x (4) /( x (3)+x (4) ) |
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
28

Результат выполнения в листинге 10.
Листинг 10: Результат работы скрипта линейного программирования
1 >> l i n e a r
2
3 x0 =
4
50
60
70
80
9 |
|
|
|
|
|
|
|
|
|
|
10 |
|
|
|
|
|
|
|
|
|
|
11 |
A = |
|
|
|
|
|
|
|
|
|
12 |
|
|
|
|
|
|
|
|
|
|
13 |
−1 |
0 |
0 |
0 |
|
|
|
|
|
|
14 |
0 |
−1 |
0 |
0 |
|
|
|
|
|
|
15 |
0 |
0 |
−1 |
0 |
|
|
|
|
|
|
16 |
0 |
0 |
0 |
−1 |
|
|
|
|
|
|
17 |
|
|
|
|
|
|
|
|
|
|
18 |
|
|
|
|
|
|
|
|
|
|
19 |
b = |
|
|
|
|
|
|
|
|
|
20 |
|
|
|
|
|
|
|
|
|
|
21 |
0 |
|
|
|
|
|
|
|
|
|
22 |
0 |
|
|
|
|
|
|
|
|
|
23 |
0 |
|
|
|
|
|
|
|
|
|
24 |
0 |
|
|
|
|
|
|
|
|
|
25 |
|
|
|
|
|
|
|
|
|
|
26 |
Local minimum |
found |
that |
s a t i s f i e s |
the c o n s t r a i n t s . |
|
|
|||
27 |
|
|
|
|
|
|
|
|
|
|
28 |
Optimization |
completed because |
the |
o b j e c t i v e |
function i s |
non− |
||||
|
decreasing in |
|
|
|
|
|
|
|
||
29 |
f e a s i b l e |
d i r e c t i o n s , |
to |
within |
the |
d e f a u l t value of |
the function |
|||
|
tolerance , |
|
|
|
|
|
|
|
|
|
30 |
and c o n s t r a i n t s are |
s a t i s f i e d |
to within the |
d e f a u l t |
value |
of the |
||||
|
c o n s t r a i n t t o l e r a n c e . |
|
|
|
|
|
|
|||
31 |
|
|
|
|
|
|
|
|
|
|
32 |
<stopping c r i t e r i a d e t a i l s > |
|
|
|
|
|
29

33 |
|
|
|
|
34 |
Active |
i n e q u a l i t i e s |
( to within |
options . TolCon = 1e −06) : |
35 |
lower |
upper |
i n e q l i n |
ineqnonlin |
36 |
|
|
3 |
|
37 |
|
|
|
|
38 |
x = |
|
|
|
39 |
|
|
|
|
40 |
0.2857 |
|
|
|
41 |
0.2857 |
|
|
|
42 |
|
0 |
|
|
43 |
0.4286 |
|
|
|
44 |
|
|
|
|
45 |
|
|
|
|
46 |
f v a l = |
|
|
|
47 |
|
|
|
|
48 |
−1.0286 |
|
|
|
49 |
|
|
|
|
50 |
|
|
|
|
51 |
q11 = |
|
|
|
52 |
|
|
|
|
53 |
0.5000 |
|
|
|
54 |
|
|
|
|
55 |
|
|
|
|
56 |
q21 = |
|
|
|
57 |
|
|
|
|
58 |
0.5000 |
|
|
|
59 |
|
|
|
|
60 |
|
|
|
|
61 |
q12 = |
|
|
|
62 |
|
|
|
|
63 |
0 |
|
|
|
64 |
|
|
|
|
65 |
|
|
|
|
66 |
q22 = |
|
|
|
67 |
|
|
|
|
68 |
1 |
|
|
|
69 |
|
|
|
|
|
|
|
|
|
30