- •ВВЕДЕНИЕ
- •1.1. Формулировка задачи линейного программирования
- •1.2. Распределение специализированных бригад скорой помощи по категориям больных
- •1.3. Некоторые другие задачи на распределение
- •1.4. Разработка комплексной лекарственной терапии
- •1.5. Выработка оптимального плана массового лечения
- •1.6. Определение линейных разделяющих функций
- •2.1. Метод динамического программирования
- •2.4. Выравнивание символьных последовательностей
- •3. ПРИМЕНЕНИЕ ТЕОРИИ ИГР ДЛЯ ОПТИМИЗАЦИИ КЛИНИЧЕСКИХ РЕШЕНИЙ В ХИРУРГИИ
- •3.1. Игры и методы их решения
- •3.2. Элементы теории статистических решений
- •3.3. Критерии принятия решений в условиях неопределенности
- •3.4. Принятие решений при острых хирургических заболеваниях органов брюшной полости
- •3.5. Минимизация риска хирургического вмешательства в онкологии
- •Список литературы
- •ПРИЛОЖЕНИЯ
При наличии значительного числа признаков m для решения этой задачи целесообразно применить итерационный симплекс-метод, что позволяет одновременно находить решение и прямой задачи [13].
Данный подход, основанный на теории двойственности, показывает возможность применения методов линейного программирования при построении разделяющей гиперплоскости. В процессе вычислений может быть решена и более общая задача распознавания образов, а именно, оценена мера «неразделимости» исследуемых классов объектов.
2.УПРАВЛЕНИЕ СОСТОЯНИЕМ ОРГАНИЗМА
ВБИОТЕХНИЧЕСКИХ СИСТЕМАХ
НА ОСНОВЕ ДИНАМИЧЕСКОГО ПРОГРАММИРОВАНИЯ
2.1. Метод динамического программирования
Рассмотрим управляемый процесс, который переводит некоторую систему G из начального состояния S0 в конечное состояние Sm . При наличии
промежуточных состояний такой перевод представляется в виде траектории, состоящей из конкретной последовательности промежуточных состояний (рис. 2.1). Если промежуточные состояния могут быть различными, то траектория перевода G из S0 в Sm неоднозначна и зависит от вырабатываемых управляющих воздействий x .
x' |
W(x') |
|
Введя какую-либо целевую функцию |
|||
|
W =W (x), зависящую от выбранного управ- |
|||||
W(x'') |
Sm |
|||||
x'' |
ления x , можно сравнивать (по величине |
|||||
S0 |
W* |
|
|
|||
x* |
W(x''') |
|
W ) траектории друг с другом и ставить з |
а- |
||
|
|
|
дачу об отыскании оптимальной траектории, |
|||
x''' |
|
|
|
|||
|
|
|
при которой достигается экстремум |
W . |
||
|
Рис. 2.1 |
|
|
|||
|
|
|
В зависимости от содержания целевой функ- |
|||
|
|
|
|
|||
ции в процессе оптимизации ее стремятся либо максимизировать, либо ми-
нимизировать. Далее будет рассматриваться оптимизация, |
при которой |
W → min . Таким образом, задача заключается в отыскании |
оптимального |
управления x *, при котором целевая функция W достигает своего минимального значения W *, т. е.
W* = min{W (x)}.
x
35
Представим себе процесс управления состоящим из конечного числа последовательных шагов. В этом случае траектория перехода G из S0 в Sm будет иметь вид последовательности промежуточных состояний S0, S1, S2, , Sm , которая является результатом пошагового управления x , также имеющего вид последовательности x = x1, x2, , xm . Будет считать, что Si обозначает состояние системы G , а xi – управление на i-м шаге для произвольной траектории. Для конкретной же траектории конкретное управление xi′ переводит G в конкретное состояние Si′. Нужно иметь в виду, что управления x1, x2, , xm в общем случае не числа, а векторы, функции, какие-либо предписания и т. п. Пусть на каждом отдельном i-м шаге, заключающемся в переходе из Si−1 в Si , известно значение целевой функции W , которое обозначается wi . Считая выбранный критерий W аддитивным, т. е. полагая, что
m
W = ∑wi ,
i=1
задачу оптимизации можно сформулировать следующим образом. Требуется найти такое оптимальное управление x = x1 , x2, , xm (где xi – оптимальное шаговое управление на i-м шаге), при котором целевая функция W принимает минимальное значение, т. е.
m
W = ∑wi min .
i=1
Последовательность оптимальных шаговых управлений x1 , x2, , xm
приводит к оптимальной траектории S0, S1*, S2*, , Sm* −1, Sm перевода G из S0 в Sm .
36
S1′ |
w2′ |
S2′ |
w3′ |
S3 |
|
|
|
||||
|
w4 |
|
|||
|
|
|
|
S4 |
|
w1′ |
|
|
|
|
|
|
|
|
w3′′ |
|
|
|
|
|
|
|
|
S0 |
|
|
|
|
|
w1′′ |
|
w2′′ |
S2′′ |
|
|
|
|
|
|
S1′′
Рис. 2.2
Для примера, приведенного на рис. 2.2, существуют два варианта управлений и две возможных траектории, для каждой из которых можно подсчитать значение целевой функции.
|
I вариант |
II вариант |
Управление |
x′= x1′, x2′ , x3′, x4 |
x′′= x1′′, x2′′, x3′′, x4 |
Траектория |
S0, S1′, S2′, S3, S4 |
S0, S1′′, S2′′, S3, S4 |
Целевая функция |
W ′= w1′ + w2′ + w3′ + w4 |
W ′′ = w1′′+ w2′′ + w3′′ + w4 |
Пусть W ′>W ′′, |
тогда второй вариант является оптимальным, т. е. |
|
x = x′′, W =W ′′.
Поиск оптимального управления x методом динамического программирования основан на использовании общего принципа, известного как принцип оптимальности. Он формулируется следующим образом [7].
Каково бы ни было состояние S системы G в результате какого-то числа шагов, мы должны выбирать управление на ближайшем шаге так, чтобы оно в совокупности с оптимальным управлением на всех последующих шагах приводило к минимальному значению целевой функции на всех оставшихся шагах, включая данный.
При решении задач динамического программирования полезно пользоваться схемой решения, данной в [6], [7]. После выбора способа описания состояний управляемой системы и разбиения всего процесса управления на шаги применяется следующая процедура [7].
1. Перечислить набор шаговых управлений xi для каждого шага и налагаемые на них ограничения.
37
2. Для каждого i-го шага определить значение wi в функции от состо я- ния Si−1 на (i −1)-м шаге и от шагового управления xi
wi = fi (Si−1, xi ).
3. Определить, как изменяется состояние Si−1 системы G под влиянием
управления xi на i-м шаге: оно переходит в новое состояние |
|
Si = ϕi (Si−1, xi ). |
(2.1) |
4. Пусть Wi (Si−1 ) – условный оптимум целевой функции, получаемый
на всех последующих шагах, начиная с i-го и до конца. Надо записать основное рекуррентное уравнение динамического программирования, выражающее Wi (Si−1 ) через уже известную функцию Wi+1 (Si ),
Wi (Si−1 )= minx {fi (Si−1, xi )+Wi+1 (ϕi (Si−1, xi ))}. |
(2.2) |
i |
|
Этому условному оптимуму целевой функции соответствует условное оптимальное управление на i-м шаге xi (Si−1 ), которое совместно с оптимальным
управлением на всех последующих шагах обращает целевую функцию на всех оставшихся шагах, начиная с данного, в минимум.
5. Произвести условную оптимизацию последнего, m-го шага, задав множество состояний Sm−1, из которых можно за один шаг дойти до конечного состояния, вычисляя для каждого Sm−1 условный оптимум целевой функции по формуле
Wm (Sm−1 )= min{fm (Sm−1, xm )} |
(2.3) |
x |
|
m |
|
и находя условное оптимальное управление xm (Sm−1 ), для которого этот ми-
нимум достигается.
6. Произвести условную оптимизацию (m – 1)-го, (m – 2)-го и т.д. шагов по формуле (2.2), полагая в ней i = (m −1), (m −2), , и для каждого шага указать
условное оптимальное управление xi (Si−1 ), при котором достигается минимум. Так как начальное состояние системы S0 одно и оно известно, то на первом шаге варьировать состояние системы не нужно – оптимальное значение целевой функции для S0 находится непосредственно. Это и есть оптимум
функции цели за весь процесс перевода:
W =W1 (S0 ).
38
7. Произвести безусловную оптимизацию управления, учитывая выработанные ранее рекомендации на каждом шаге. На первом шаге оптимальное
шаговое управление x1* = x1 (S0 ). Пользуясь (2.1), находим изменившееся состояние системы S1, для него определяем оптимальное управление на втором шаге x2 , и т. д. до конца.
2.2.Управление переходом организма из начального
вконечное состояние при наличии промежуточных состояний
Управляемый процесс перевода системы G из начального S0 - в конечное Sm -состояние можно интерпретировать как процесс лечения, который переводит организм человека из состояния «болен» в состояние «здоров», или процесс нормализации состояния человека-оператора, переводящий организм из состояния «не норма» в состояние «норма». Если при этом реализуется возможность выделения конечного множества состояний организма, являющихся промежуточными между S0 и Sm , и можно описать шаговые управления, переводящие организм из одного состояния в другое, то для оптимизации процесса лечения или нормализации состояния можно применить метод динамического программирования. С помощью этого метода может быть заранее рассчитана оптимальная траектория перевода организма из S0 в Sm .
В качестве критериев оптимизации, т. е. целевых функций W , могут выступать следующие: время лечения (нормализации состояния, выздоровления, вывода из опасного состояния и т. п.), токсичность применяемых медикаментов – «вредность» лечения, его стоимость, вероятность благоприятного исхода, риск осложнений и др. Для реальных задач предпочтительнее использовать одновременно несколько критериев, но это приводит к более сложным процедурам многокритериальной оптимизации. Далее в примерах мы будем использовать лишь один аддитивный критерий – время лечения или нормализации состояния.
Одна из известных задач, рассмотренная в [6], [7] под названием выбора наивыгоднейшего пути между двумя пунктами (или наиболее экономного набора скорости и высоты летательным аппаратом), в применении к процессу лечения может быть сформулирована следующим образом. Имеется два заболевания B1 и B2 , каждое из которых состоит из n последовательных
39
стадий болезни: 1-й, 2-й, …, n -й. Стадия n – это |
В1 |
|
|
|
Sm |
«норма», а стадия 1 – наибольшая выраженность |
5 |
|
|
|
|
|
|
|
|
||
заболевания. За один шаг лечения посредством |
4 |
|
|
|
|
направленных лечебных воздействий можно изме- |
3 |
|
|
|
|
нить (увеличить) стадию только одного заболева- |
2 |
|
|
|
|
ния на 1. Условия задачи иллюстрирует рис. 2.3, где |
1 S |
0 |
|
|
|
при n = 5 все возможные состояния пациента зада- |
|
1 |
2 3 |
4 |
5 В2 |
ются узлами построенной прямоугольной сетки. Для |
|
|
Рис. 2.3 |
|
|
|
|
|
|
|
|
зада- |
|
|
|
|
|
ния значений целевой функции на отрезках прямых, соединяющих узлы сет- |
|||||
ки, должны быть проставлены числа, равные времени перевода организма из |
|||||
состояния в состояние. Траектория перевода организма из |
S0 в |
Sm |
будет |
||
иметь вид ступенчатой линии. Требуется найти такую траекторию, при кото- |
|||||
рой общее время лечения будет минимальным. Решение этой задачи рас- |
|||||
смотрим в виде следующего конкретного примера. |
|
|
|
|
|
Пример 2.1. У оператора два показателя жизнедеятельности |
B1 |
и B2 |
|||
вышли за пределы нормы. С помощью управляющих воздействий эти показатели можно привести в норму. Каждый из показателей измеряется в порядковой шкале и принимает 5 значений. Значение 5 соответствует норме, а значение 1 – наихудшему случаю. Управление нормализацией состояния происходит по шагам. На каждом шаге возможно улучшение лишь одного из показателей на 1. Все возможные состояния оператора изображаются в виде узлов сетки (рис. 2.4).
В начале процесса управления оператор находится в состоянии S0 . Целевое состояние S0 соответствует норме. На ребрах сетки проставлены чис-
40
В1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
S8 |
||
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
5 |
|
|
|
|
|
10 |
|
|
|
|
|
4 |
|
|
|
|
|
8 |
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
4 |
|
8 |
|
|
|
6 |
|
|
|
|
|
3 |
|
|
|
5 |
|
|
|
6 |
|
|
|||||||
|
|
|
|
|
|
|
|||||||||||||||||||||||
|
|
|
|
|
8 |
|
|
|
|
11 |
|
|
|
|
|
4 |
|
|
|
|
|
8 |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
3 |
|
5 |
|
|
|
7 |
|
|
|
|
|
7 |
|
|
|
9 |
|
|
|
8 |
|
|
|||||||
|
|
|
|
|
|
|
|||||||||||||||||||||||
|
|
|
|
|
2 |
|
|
|
|
4 |
|
|
|
|
|
10 |
|
|
|
|
|
9 |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
8 |
|
|
|
5 |
|
|
|
|
|
5 |
|
|
|
7 |
|
|
|
8 |
|
|
|||||||
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||
2 |
|
|
|
|
|
7 |
|
|
|
|
8 |
|
|
|
|
|
6 |
|
|
|
|
5 |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
2 |
|
|
8 |
|
|
|
4 |
|
6 |
|
7 |
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
1 |
|
|
|
|
|
4 |
|
|
|
|
9 |
|
|
|
|
|
7 |
|
|
|
|
|
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
S0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
В2 |
|
1 |
|
2 |
|
|
|
|
3 |
|
|
4 |
|
|
5 |
|
||||||||||||||
Рис. 2.4
ла, равные времени улучшения показателя на одном шаге управления. Требуется так рассчитать траекторию управления состоянием оператора при переводе его из S0 в S8 , чтобы суммарное время нормализации его состояния было минимальным.
Из рисунка видно, что число шагов при переводе организма из состояния S0 в S8 всегда равно 8. Требуется выбрать такой путь из S0 в S8 , для которого сумма чисел, стоящих на отрезках, составляющих этот путь, минимальна. В соответствии с п. 4–6 вышеописанной процедуры решения задач динамического программирования и следуя ходу решения таких задач, изложенному в [6], произведем условную оптимизацию, начиная с последнего, 8-го шага.
S7′
8 |
8 |
S8 |
|
||
|
|
6 |
|
|
6 S7′′ |
Рис. 2.5
S7′
12 |
4 |
8 |
8 |
S6′
5
13 |
8 |
|
S6′′ |
Рассмотрим правый угол нашей сетки (рис. 2.5). После 7-го шага организм может находиться в состоянии либо S7′ , либо S7′′. Если он находится в S7′ , то управление однозначно (увеличить B2 на 1) и условный оптимум целевой функции равен времени перехода из
S' |
в |
S , т. е. W |
(S′ )=8. Запишем это число в кружке у |
||||||
7 |
|
|
|
|
8 |
8 |
7 |
|
|
точки S7′ , а оптимальное (и в данном случае единствен- |
|||||||||
|
|
|
|
|
|
ное) |
управление |
изобразим стрелкой, |
|
|
|
|
|
|
S |
направленной из S7′ |
в S8 . Для состояния S7′′ |
||
|
|
|
|
|
8 |
управление также вынужденное (увеличить |
|||
|
|
|
|
|
|
||||
|
|
|
|
|
|
B на 1), а W |
(S′′)= 6 . Запишем и это число |
||
|
|
6 |
|
|
|||||
|
|
|
|
|
|
1 |
8 |
7 |
|
|
|
|
|
|
S7′′ |
в кружке у точки S7′′, а оптимальное управ- |
|||
|
|
6 |
|
||||||
|
|
||||||||
|
|
|
|
|
|
|
41 |
|
|
|
|
8 |
|
|
|
|
|
|
|
|
|
14 |
S6′′′ |
|
|
|
|
||
Рис. 2.6
ление в этом случае покажем стрелкой, направленной из S7′′ в S8 . Таким образом, условная оптимизация последнего шага сделана, условный оптимум целевой функции для каждого из состояний S7′ и S7′′ найден и записан в соответствующем кружке.
Теперь займемся оптимизацией предпоследнего, 7-го шага. Перед ним |
|
(т. е. после |
6-го шага) организм мог оказаться лишь в одном из трех состо я- |
ний: S6′, S6′′ |
, S6′′′ (рис. 2.6). Найдем для каждого из них условное оптимальное |
управление и условный оптимум целевой функции. Для S6′ управление вы-
нужденное: |
переход |
|
в S7′ , |
поэтому ставим стрелку из S6′ |
в S7′ . Временные затраты на этом пути |
до S8 |
составляют 12 единиц (4 на данном шаге плюс 8, записанных в кружке |
|
у S7′ ), которые мы также записываем в кружке у S6′. Аналогично для S6′′ управление также вынужденное (переход в S7′′, который мы обозначаем соответствующей стрелкой), а на весь этот путь до конца уйдет 14 единиц времени, что мы и отмечаем в кружке у S6′′′. Для S6′′ управление уже не вынужденное: мы можем двигаться как по вертикали, так и по горизонтали. В первом случае траектория из S6′′ до конца занимает 13единиц времени (5 на данном шаге, плюс 8, записанных в кружке у S7′ ), а во втором 14 (8 + 6). Значит, условное оптимальное управление в S6′′ – это перевод организма в состояние S7′ . Отмечаем это стрелкой, а число 13 записываем в кружке у S6′′.
Действуя аналогично и двигаясь от конца к началу, для каждого узла сетки найдем условное оптимальное управление, которое обозначим стрелкой, и условный оптимум целевой функции (время перевода в конечное состояние), который запишем в кружке. Вычисляется он так: время перевода на данном шаге складывается с уже оптимизированным расходом времени, записанным в кружке, куда ведет стрелка. Таким образом, на каждом шаге мы оптимизируем только этот шаг, а следующие за ним – уже оптимизированы. Конечный результат процедуры оптимизации показан на рис. 2.7. Теперь, находясь в любом узле сетки, мы знаем, какое управление применять (стрелка) и в какие временные затраты нам обойдется путь до конца (число в кружке). В кружке при S0 записаны оптимальные (минимальные) затраты на всю
процедуру нормализации состояния.
42
Теперь в соответствии с п. 7 приведенной ранее процедуры решения задачи динамического программирования построим безусловное оптимальное управление – траекторию, ведущую из S0 в S8 с минимальным временем нормализации состояния. Для ее построения нужно лишь выделить (из имеющихся) непрерывную цепочку стрелок, ведущую из S0 в S8 . Такая опти-
мальная траектория, для которой W =W1 (S0 )= 36 , выделена жирными
стрелками на рис. 2.7. Оптимальная траектория может оказаться не единственной, тогда задача имеет несколько эквивалентных решений.
|
27 |
5 |
22 |
10 |
12 |
4 |
8 |
8 |
S8 |
|
8 |
|
6 |
|
3 |
|
5 |
|
6 |
|
34 |
8 |
26 |
11 |
15 |
4 |
13 |
8 |
6 |
|
5 |
|
7 |
|
7 |
|
9 |
|
8 |
|
28 |
2 |
26 |
4 |
22 |
10 |
22 |
9 |
14 |
|
6 |
|
5 |
|
5 |
|
7 |
|
8 |
|
34 |
7 |
31 |
8 |
27 |
6 |
27 |
5 |
22 |
|
2 |
|
8 |
|
4 |
|
6 |
|
7 |
S0 |
36 |
4 |
39 |
9 |
31 |
7 |
33 |
4 |
29 |
Рис. 2.7
В рассмотренной задаче промежуточные состояния организма описывались с помощью прямоугольной сетки. В общем случае это не обязательно. Множество состояний и возможные переходы из состояния в состояние можно задать и в виде ориентированного графа. В этом случае задачи управляемого перевода организма из одного состояния в другое можно представить как поиск кратчайшего пути на ориентированной ациклической (т. е. без петель и контуров) сети [14]. Решаются такие задачи точно так же, как и на прямоугольной сетке. Заметим, что использованная нами для решения прямоугольная сетка также является ориентированной ациклической сетью, если на ее отрезках проставить стрелки всех возможных управлений. Ниже приведена задача, описываемая в виде сети.
Пример 2.2. Решается задача управляемого перевода организма G из исходного состояния S0 в конечное состояние S4 (лечение или нормализация
43
состояния оператора). При этом существует 8 промежуточных состояний, S1′, S1′′, S1′′′, S2′ , S2′′, S2′′′, S3′, S3′′, а возможные переходы из одного состояния в
другое изображены на рис. 2.8 в виде ориентированного графа.
На ребрах графа проставлено время, требующееся для перевода организма из одного состояния в другое. Предполагается, что выбор маршрута переходов полностью управляем. Требуется определить оптимальную траекторию перевода организма из S0 в S4 , при которой общее время этого пере-
вода будет минимально.
|
|
|
|
|
|
11 |
|
|
|
8 |
|
|
|
|
|
|
||
|
|
|
|
S1′ |
|
|
|
|
S2′ |
|
|
|
S3′ |
|
|
|||
|
|
|
|
|
|
4 |
|
|
3 |
|
|
|
|
|
||||
|
8 |
|
|
|
|
|
|
|
|
|
|
6 |
|
|||||
|
|
|
1 |
|
|
|
7 |
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
6 |
|
|
|
8 |
|
|
|
|
|
|
||||||
S0 |
|
|
S1′′ |
|
|
|
S2′′ |
|
|
|
|
|
|
|
S4 |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15 |
|
|
|
|
|
|
|
4 |
5 |
|
|||||||
|
|
|
10 |
|
|
|
5 |
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
S′′′ |
|
|
|
|
|
S2′′′ |
|
|
|
|
|
S′′ |
|
|
|
|
|
|
1 |
|
11 |
|
|
|
|
2 |
|
|
|
3 |
|
|
|
Рис. 2.8
Начнем решение этой задачи с перечисления шаговых управлений, начиная с последнего шага и указывая результат этого управления. Запись
xi ={Sk → S j } будет означать, что управление xi (на i-м шаге) переводит G
из Sk в S j : |
|
|
|
|
|
|
|
|
|
(1) |
′ |
→ S4}; |
(5) |
′′′ |
′ |
(5) |
′′ |
′′′ |
|
|
|
|
|||||||
x4 ={S3 |
x3 ={S2 |
|
→ S3}; |
x2 ={S1 |
→ S2}; |
||||
x4(2) ={S3′′ → S4}; |
x3(6) ={S2′′′→ S3′′}; |
x2(6) ={S1′′′→ S2′′}; |
|||||||
(1) |
′ |
′ |
(1) |
′ |
|
′ |
(7) |
′′′ |
′′′ |
|
|
|
|
||||||
x3 ={S2 |
→ S3}; |
x2 ={S1 |
→ S2}; |
x2 ={S1 → S2}; |
|||||
x3(2) ={S2′ → S3′′}; |
x2(2) ={S1′ → S2′′}; |
x1(1) ={S0 → S1′}; |
|||||||
(3) |
′′ |
′ |
(3) |
′′ |
|
′ |
(2) |
|
′′ |
|
|
|
|
|
|||||
x3 ={S2 |
→ S3}; |
x2 ={S1 |
→ S2}; |
x1 ={S0 → S1}; |
|||||
(4) |
′′ |
′′ |
(4) |
′′ |
′′ |
(3) |
|
′′′ |
|
|
|
|
|
||||||
x3 ={S2 |
→ S3}; |
x2 ={S1 |
→ S2}; |
x1 ={S0 → S1}. |
|||||
Для каждого шага запишем временные затраты wi в функции от состояния на предыдущем шаге и шагового управления. Обозначим их в соответ-
ствии с шаговыми управлениями, приведенными выше (w3(5) означает время перевода G из S'''2 в S3' , являющегося следствием управления x3(5)):
44
w4(1) = 6; |
w3(5) = 7; |
w2(5) =10 ; |
w4(2) =5; |
w3(6) = 2; |
w2(6) =10 ; |
w3(1) =8; |
w2(1) =11; |
w2(7) =11; |
w3(2) = 4; |
w2(2) = 4; |
w1(1) =3; |
w3(3) =3; |
w2(3) =1; |
w1(2) = 6; |
w3(4) =5; |
w2(4) =8; |
w1(3) =15 . |
Запишем основное рекуррентное уравнение динамического программирования, используемое для условной оптимизации. Согласно (2.2), оно имеет вид
Wi (Si−1 )= min{wi +Wi+1 (Si )}.
xi
Проведем условную оптимизацию, начиная с последнего, 4-го шага. Согласно (2.3),
W4 (S3 )= min{w4}.
x4
Перед 4-м шагом состояние G может быть либо S3′, либо S3′′. В обоих случаях оптимальное шаговое управление – это перевод G в S4 . Значения условного оптимума целевой функции равны, соответственно,
W4 (S3′ )= w4(1) = 6;
W4 (S3′′)= w4(2) = 5.
Далее оптимизируем предпоследний, 3-й шаг. Для него
W3 (S2 )= min{w3 +W4 (S3 )}.
x3
Если перед этим шагом G находился в состоянии S2′ , имеем две возможности перевода G в S4 : либо через S3′ (это займет 8 + 6 = 14 единиц времени), либо через S3′′. В последнем случае временные затраты равны 4 + 5 = = 9, поэтому этот вариант следует предпочесть и считать, что минимальное время достижения конечного состояния из S2′ равно 11 единицам. Формаль-
но, если S2 = S2′ , имеется два управления, x3(1) и x3(2), и условный оптимум целевой функции
W3 (S2′ )= min{ w3(1) +W4 (S3′ ) , w3(2) +W4 (S3′′) }= min{[8 +6], [4 +5]}= 9 ,
45
условное оптимальное управление в этом случае равно x3 (S2′ )= x3(2). Таким же способом можно вычислить, что W3 (S2′′)= 9 , x3 (S2′′)= x3(3) ; W3 (S2′′′)= 7, x3 (S2′′′)= x3(6) . Переходим к оптимизации 2-го шага. Для него
W2 (S1 )= min{w2 +W3 (S2 )}.
x2
Если перед 2-м шагом G находился в состоянии S1′, то x2 {x2(1), x2(2)}, поэтому
W2 (S1' )= min{ w2(1) +W3 (S2′ ) , w2(2) +W3 (S2′′) }= min{[11+9], [4 +9]}=13,
и условное оптимальное управление для состояния S1′ равно x2 (S1′)= x2(2).
Аналогично проводятся расчеты и для других предыдущих состояний этого шага, а затем рассчитывается 1-й шаг, перед которым G всегда находится в S0 . Все результаты условной оптимизации сведены в табл. 2.1.
На рис. 2.9 стрелками показаны все условные оптимальные управления, а в кружочках проставлены значения условного минимума для
|
|
|
|
|
|
|
|
|
Таблица 2.1 |
|
Номер |
Исходное |
Условный минимум |
Условное оптимальное |
Состояние |
||||||
состояние, |
целевой функции, |
|
после |
|||||||
шага, i |
управление, x |
(S |
i−1 |
) |
|
|||||
|
Si−1 |
Wi (Si−1) |
|
|
i |
|
|
управления, Si |
||
|
|
|
|
|
|
|
||||
|
S3′ |
6 |
|
x(1) |
|
|
|
|
S4 |
|
4 |
|
|
|
4 |
|
|
|
|
|
|
S3′′ |
5 |
|
x(2) |
|
|
|
|
S4 |
||
|
|
|
|
|
|
|||||
|
|
|
|
4 |
|
|
|
|
|
|
|
S2′ |
9 |
|
x(2) |
|
|
|
|
S3′′ |
|
|
|
|
|
3 |
|
|
|
|
|
|
3 |
S2′′ |
9 |
|
x( |
3) |
|
|
|
|
S3′ |
|
|
|
|
3 |
|
|
|
|
|
|
|
S2′′′ |
7 |
|
x(6) |
|
|
|
|
S3′′ |
|
|
|
|
|
3 |
|
|
|
|
|
|
|
S1′ |
13 |
|
x(2) |
|
|
|
|
S2′′ |
|
|
|
|
|
2 |
|
|
|
|
|
|
2 |
S1′′ |
10 |
|
x( |
3) |
|
|
|
|
S2′ |
|
|
|
|
2 |
|
|
|
|
|
|
|
S1′′′ |
18 |
|
x(7) |
|
|
|
|
S2′′′ |
|
|
|
|
|
2 |
|
|
|
|
|
|
1 |
S0 |
16 |
x(1) |
или x( |
2) |
|
|
S1′ |
или S1′′ |
|
|
|
|
1 |
|
1 |
|
|
|
|
|
46
|
S1′ |
S2′ |
S3′ |
|
13 |
9 |
6 |
S0 |
|
|
S4 |
16 |
10 |
9 |
|
|
S1′′ |
S2′′ |
|
|
18 |
7 |
5 |
|
S1′′′ |
S2′′′ |
S3′′ |
|
|
Рис. 2.9 |
|
всех состояний. Это то минимальное время, которое требуется для достижения S4 .
Из рисунка видно, что существует две различные оптимальные траектории, переводящие G из S0 в S4 . Они могут быть записаны в виде следу ю- щих двух цепочек:
S0 → S1′ → S2′′ → S3′ → S4; S0 → S1′′→ S2′ → S3′′ → S4 ,
и эквивалентны по временным затратам (16 единиц).
2.3.Управление переходом организма в нормальное состояние
вусловиях неопределенности
До сих пор мы рассматривали детерминированную модель динамического программирования. В реальной жизни как на состояние системы, так и на целевую функцию влияют случайные факторы, и поведение системы зависит не только от начального состояния S0 и выбранного управления x , но и от случайности. Рассмотрим стохастическую модель задачи о кратчайшем пути на ациклической сети [14]. Допустим существование в системе условных вероятностей P (Si
Si−1 , xi ) того, что на i-м шаге управления система
перейдет в состояние Si при условии, что до этого она находилась в Si−1 и было применено управление xi . Это условие представляет собой допущение о марковском свойстве системы, согласно которому вероятность перехода системы в какое-либо состояние Si зависит только от состояния Si−1, из которого совершается переход, и от применяемого управления xi , но никак не зависит от предыстории системы, предшествующей ее переходу в Si−1.
Таким образом, теперь управляющее воздействие xi на 1-м шаге управления может лишь изменить вероятности перехода из данного состояния Si−1
47
в другие состояния Si . Теперь, находясь в каком-либо состоянии и применяя
некоторое управление, можно говорить только о средних затратах W времени достижения конечного состояния, которые вычисляются как взвешенные по соответствующим вероятностям затраты, рассмотренные по всем возможным из данного состояния траекториям. В этом случае, очевидно, задача заключается в нахождении такого множества оптимальных управлений (по одному для каждого состояния), которое дает минимальное среднее значение времени перехода из S0 в Sm .
Применение принципа оптималь- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Si(1) |
|
|
||||||
ности |
к |
таким |
задачам |
приводит |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
к стохастической модели динамиче- |
|
|
|
|
|
|
|
|
|
|
wi(1) |
|
|
|
i+1 (Si(1)) |
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
W |
|
|
||||||||||||||
|
|
|
|
|
|
Si( j) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
ского программирования. |
Пусть |
|
|
|
|
|
|
|
|
p1 |
(2) |
|
|
|
|
|
|
|
|
Si(2) |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
i+1 (Si(2)) |
|
|
||||
обозначает конкретное состояние си- |
|
|
|
|
(S |
|
|
) |
|
p2 wi |
|
|
|
|
|
|||||||||||||
|
|
|
|
|
|
W |
|
|
||||||||||||||||||||
|
|
W |
|
|
|
|
|
|
||||||||||||||||||||
стемы, в которое она переходит на i-м |
|
|
|
i |
|
i |
−1 |
|
|
p3 |
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
(n) |
|
|
|
|
|
|
Si(n) |
|
|
||||||||||
|
( j) |
– временные |
затраты на |
|
|
|
|
xi |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
шаге, wik |
|
|
|
|
|
|
|
|
|
|
|
wi |
|
|
|
|
|
|
|
|
|
|||||||
перевод организма в состояние |
S( j) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
i+1 (Si(n)) |
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
W |
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
на i-м |
шаге |
из состояния |
S(k ) . |
|
|
|
|
|
|
|
|
|
Рис. 2.10 |
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
i−1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
Допустим, что для части сети (рис.2.10) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
известны условные минимальные средние временные затраты W i+1 (Si ) на достижение конечного состояния из Si (Si {Si(1), Si(2), , Si(n)}). На рис. 2.10
через |
p1, |
p2, , pn |
|
обозначены |
|
условные |
|
вероятности |
перехода |
||||||||||||||||||||||||||
|
|
|
|
= P (S( j) |
|
|
|
|
, x ), причем |
|
n |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
p |
j |
| S |
− |
|
∑ p |
j |
=1. Если, |
|
например, находясь в состоя- |
|||||||||||||||||||||||||
|
|
|
i |
|
i |
1 |
i |
|
|
|
|
j=1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
нии Si−1, мы |
|
|
|
|
|
|
|
|
|
|
|
|
xi , |
|
|
|
|
|
|
|
|
|
|||||||||||||
применяем управление |
|
то средние затраты |
времени |
||||||||||||||||||||||||||||||||
|
|
i (Si−1 | xi ) |
|
на достижение конечного состояния из Si−1 равны |
|
|
|||||||||||||||||||||||||||||
W |
) |
|
|||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
n |
|
|
i |
|
|
|
|
|
( |
i |
|
) ( |
|
i |
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
( j) |
|
|
|
|
|
|
|
( |
j) |
|
|
|
( j) |
|
|
|
|
|
|
|
|
|
|
|
|
|
W i (Si−1 | xi )= ∑ |
w |
|
+W i+1 S |
|
|
|
P S |
|
| Si−1, |
xi . |
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
j=1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Так как вариантов управления наi-м шаге может быть несколько, т.е. |
xi может |
||||||||||||||||||||||||||||||||||
принимать разные значения x {x(1), |
x(2) |
, , |
|
x(p)}, выберем то из них, при |
|||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
i (Si−1 | xi ) |
|
|
|
i |
|
i |
|
|
|
|
i |
|
|
|
|
|
i |
|
|
|
|
|
|
|||||
котором |
|
|
становится |
минимальным. При этом стохастическое |
|||||||||||||||||||||||||||||||
W |
|||||||||||||||||||||||||||||||||||
обобщение основного рекуррентного уравнения (2.2) имеет вид |
|
|
|
||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
i (S |
|
)= min W |
(S |
|
|
| x ) |
, |
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
W |
|
i−1 |
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
i−1 |
|
|
x |
{ |
i |
|
|
i |
} |
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48
или в развернутой форме
W i (Si−1)= minx ∑(wi( j) +Wi+1 (Si( j)))P(Si( j)
i j
Поскольку применяются условные вероятности, то
∑P(Si( j) | Si−1, xi )=1.
j
| Si−1, xi ) .
|
|
Решение задач методом стохастического динамического программиро- |
||||||||||||||||
вания рассмотрим на конкретных примерах. |
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
5 |
|
|
|
|
|
|
Пример |
2.3. |
Решается задача |
||
|
|
|
|
|
S(1) |
|
|
|
S(1) |
|
|
|
управляемого перевода организма из |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
1 |
|
6 |
|
|
2 |
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
3 |
|
|
исходного |
состояния S0 в конечное |
||||||
|
|
|
|
|
2 |
|
|
|||||||||||
|
|
|
4 |
|
|
|
|
|
|
|
состояние |
S3 (лечение, нормализация |
||||||
S |
0 |
|
|
S(2) |
|
|
|
|
|
|
S |
3 |
||||||
|
|
|
|
1 |
|
4 |
|
|
|
состояния оператора). При этом суще- |
||||||||
|
|
3 |
|
|
|
|
8 |
|
|
|||||||||
|
|
|
|
|
4 |
|
|
|
|
|
ствуют промежуточные состояния S1(1) , |
|||||||
|
|
|
|
|
S(3) |
|
|
|
S(2) |
|
|
|
||||||
|
|
|
|
|
1 |
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
|
|
|
|
|
S(2), |
S(3), S(1), |
S(2), а возможные |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
Рис. 2.11 |
|
|
|
|
1 |
1 |
|
2 |
2 |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
переходы из состояния в состояние |
||||
изображены на рис. 2.11 в виде ориентированного ациклического графа. |
||||||||||||||||||
|
|
На ребрах графа проставлено время, требуемое для перевода организма |
||||||||||||||||
из одного состояния в другое. В каждом состоянии |
Si−1 |
имеется несколько |
||||||||||||||||
управляющих воздействий xi , которым соответствуют определенные наборы вероятностей перехода P (Si | Si−1, xi ). Эти наборы приведены в табл. 2.2–2.5. В этих таблицах, как уже отмечалось, сумма чисел в каждой строке равна 1.
|
|
|
Таблица 2.2 |
|
|
|
|
x1 |
|
P (S1 | S0, x1) |
|
S(1) |
S(2) |
S(3) |
|
|
1 |
1 |
1 |
|
|
|
|
x(1) |
0,6 |
0,4 |
0 |
1 |
|
|
|
x(2) |
1 |
0 |
0 |
1 |
|
|
|
x(3) |
0,3 |
0,3 |
0,4 |
1 |
|
|
|
Таблица 2.3
|
P (S |
2 |
| S(1), x |
) |
|
x2 |
|
1 |
2 |
||
S2(1) |
|
|
|
S2(2) |
|
|
|
|
|
||
x(1) |
0,2 |
|
|
|
0,8 |
2 |
|
|
|
|
|
x(2) |
0,5 |
|
|
|
0,5 |
2 |
|
|
|
|
|
x(3) |
0,6 |
|
|
|
0,4 |
2 |
|
|
|
|
|
49
Таблица 2.4
|
P (S |
2 |
| S(2), x |
) |
|
x2 |
|
1 |
2 |
||
S2(1) |
|
|
|
S2(2) |
|
|
|
|
|
||
x(4) |
0,5 |
|
|
|
0,5 |
2 |
|
|
|
|
|
x(5) |
0,3 |
|
|
|
0,7 |
2 |
|
|
|
|
|
Таблица 2.5
|
P (S |
2 |
| S(3), x |
) |
|
x2 |
|
1 |
2 |
||
S2(1) |
|
|
|
S2(2) |
|
|
|
|
|
||
x(6) |
0,1 |
|
|
|
0,9 |
2 |
|
|
|
|
|
x(7) |
0,6 |
|
|
|
0,4 |
2 |
|
|
|
|
|
|
Кроме того, в состоянии S(1) |
всегда применяется управление x(1) |
и |
|||||||||
|
|
|
2 |
|
|
|
|
|
|
|
3 |
|
P (S |
3 |
| S(1), x(1) )=1, а в состоянии |
S(2) – |
x(2) |
и |
P (S |
3 |
| S(2), x(2) )=1. Каждо- |
||||
|
2 |
3 |
|
2 |
3 |
|
|
2 |
3 |
|
||
му состоянию требуется сопоставить одно оптимальное управляющее воздействие, при котором общее среднее время перехода из S0 в S3 будет ми-
нимально, а также определить это время.
Согласно рис. 2.11 и принятым обозначениям времена перехода организма из состояния в состояние равны
w |
=3; |
w(1) = 2; |
w(1) = 2; |
||
31 |
23 |
|
1 |
|
|
w |
=8; |
w(2) = 4; |
w(2) = 4; |
||
32 |
21 |
|
1 |
|
|
w(1) =5; |
w(2) = 4; |
w( |
3) =3; |
||
21 |
22 |
|
1 |
|
|
|
w(1) = 6; |
w(2) =5. |
|
||
|
22 |
|
23 |
|
|
Условную оптимизацию, как и раньше, начинаем с последнего, 3-го шага управления. Из условия задачи видно, что на 3 -м шаге управление вынужденное, поэтому
W 3 (S2(1))= w31 = 3; W 3 (S2(2))= w32 =8.
Условную оптимизацию на 2-м шаге проводим с помощью рекуррентного уравнения, которое на этом шаге приобретает вид
|
|
|
|
x |
|
|
|
|
2 |
( |
|
2 |
) ( |
2 |
|
|
|
) |
|
||||
|
|
|
|
|
|
|
|
|
|
( j) |
|
|
|
|
( j) |
|
( j) |
|
|
|
|
||
|
W 2 (S1 )= min |
|
|
|
+W 3 |
S |
| S1, x2 |
|
|
||||||||||||||
|
∑ w |
|
|
P S |
|
|
. |
||||||||||||||||
|
|
|
|
|
2 |
|
|
j |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Допустим, что S1 = S1(1), тогда x2 {x2(1), x2(2), x2(3)}и |
|
|
|
) |
|||||||||||||||||||
( 1 |
|
) |
|
|
2 |
|
21 |
( 2 |
) ( |
2 |
1 |
|
|
||||||||||
|
|
|
(1) |
|
|
|
|
|
|
( j) |
|
|
|
|
( j) |
|
( j) |
|
(1) |
|
|
|
|
W 2 S |
|
| x2 |
|
= ∑ w |
|
+W 3 S |
|
P S |
|
| S |
|
, x2 ; |
|||||||||||
j=1
W 2 (S1(1) | x2(1))= (5 +3) 0,2 +(4 +8) 0,8 =11,2 ;
50
W 2 (S1(1) | x2(2))= (5 +3) 0,5 +(4 +8) 0,5 =10,0; W 2 (S1(1) | x2(3))= (5 +3) 0,6 +(4 +8) 0,4 = 9,6;
W 2 (S1(1))= min{W 2 (S1(1) | x2 )}=W 2 (S1(1) | x2(3))= 9,6. x2
Аналогично можно найти W 2 (S1(2) )=10,5 и W 2 (S1(3))=8,2 . Далее оптимизируем 1-й шаг. Для него x1 {x1(1), x1(2), x1(3)}и
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
(w1( j) + |
|
2 (S1( j)))P(S1( j) | S0, x1); |
||||||||||
|
W |
(S0 | x1)= ∑ |
W |
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
j=1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
(S |
|
| x(1) )= (2 +9,6) 0,6 +(4 +10,5) 0,4 =12,8; |
||||||||||||||||
|
|
|
W |
0 |
||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
(S |
|
| x(2) )= |
(2 +9,6) 1 =11,6 ; |
|
|
||||||||||||||
|
|
|
W |
0 |
|
|
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
(S |
|
|
| x(3))= (2 +9,6) 0,3+(4 +10,5) 0,3+(3+8,2) 0,4 =12,3; |
||||||||||||||||||
|
|
|
W |
0 |
||||||||||||||||||||||||
1 |
|
|
|
0 |
|
1 |
|
1 ( |
|
0 1)} |
1 ( |
|
0 1 |
) |
|
|||||||||||||
|
|
|
|
|
|
{ |
|
|
|
|||||||||||||||||||
|
|
W |
|
(S |
|
|
|
)= min |
W |
|
S |
|
x |
=W |
S |
|
x(2) |
|
=11,6. |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Результат условной оптимизации показан на рис. 2.12. В кружках проставлены значения условных минимумов Wi (Si−1 ). Из рисунка видно, что
оптимальное управление на 1-м шаге равно x( |
2). Оно детерминированно пе- |
||
|
1 |
|
|
реводит систему в S(1) , где наилучшее управление заключается в примене- |
|||
1 |
|
|
|
нии x(3) . При этом система переходит в |
S(1) |
или в |
S(2) с вероятностями, |
2 |
2 |
|
2 |
равными 0,6 и 0,4 соответственно. |
|
|
|
Если переход осуществлен в S(1) , то дальше надо применять x(1) , если |
|||
2 |
|
|
3 |
же в S(2), то оптимальное шаговое управление здесь |
x(2). В обоих случаях |
||
2 |
|
|
3 |
51
|
|
|
S(1) |
|
|
|
S(1) |
|
|
|
|
1 |
0,6 |
|
|
2 |
|
|
|
|
9,6 |
|
|
3,0 |
|
|
|
|
|
|
|
|
|
||
1 |
|
|
x2(3) |
0,5 |
|
|
x3(1) |
1 |
S0 |
|
|
S1(2) |
|
0,6 |
|
S3 |
|
|
|
|
|
|
|
|||
11,6 |
|
|
10,5 |
|
0,4 |
|
|
|
x(2) |
|
|
x2(4) |
|
|
|
|
|
|
|
|
|
|
|
|
||
1 |
|
|
|
|
|
|
|
|
|
|
|
S1(3) |
0,5 |
|
|
S2(2) |
1 |
x(7) |
8,2 |
|
|
|
8,0 |
x(2) |
||
0,4 |
|
|
||||||
|
|
|
|
|||||
|
2 |
|
|
|
|
|
3 |
|
|
|
|
|
Рис. 2.12 |
|
|
|
|
система переходит в S |
3 |
. Состояния S( |
2) |
и |
S(3) |
остаются незадействован- |
||
|
|
|
1 |
|
|
1 |
|
|
ными. Минимальное среднее время перехода из |
S0 в S3 составляет 11,6 |
|||||||
единиц времени.
Пример 2.4. В течение ближайших трех дней больному необходимо сделать срочную операцию. Для уменьшения риска неблагоприятного исхода желательно, чтобы состояние больного непосредственно перед операцией было наилучшим. С помощью медицинских обследований состояние больного оценивают по трехбалльной шкале, причем оценка 1 соответствует наихудшему состоянию S1, 2 – промежуточному S2 , 3 – наилучшему S3 . Надо рассчитать оптимальную стратегию врача (т. е. в какой из трех дней лучше всего делать операцию), если вероятности наступления состояний S1, S2 и S3 в любой день не зависят от состояния больного в предыдущий день и равны
p1 = P (S1 )= 0,3; p2 = P (S2 )= 0,5; p3 = P (S3 )= 0,2 .
Для решения этой задачи составим дерево альтернатив, изображенное на рис. 2.13. Пусть zi – оценка состояния больного, а xi – принимаемое решение в i -й день. Тогда после измерения состояния больного в 1-й день (Изм1), если z1 = 3, то x1 =
Оп
, т. е. принимается решение оперировать; если z1 =1, то x1 =
Жд
– ждать следующего дня, а если z1 = 2 , то возникает неопределенность (может быть принято как одно, так и другое решение). Аналогичная
52
ситуация возникает и на второй день после процедуры Изм2, если в 1-й день принято решение
Жд
. Таким образом, задача заключается в выработке ре-
комендаций о принятии оптимальных решений, если в 1-й или во 2-й день состояние больного будет оценено как 2.
В качестве критерия оптимальности (целевой функции) будем использовать среднеожидаемую оценку состояния оперируемого больного, которую
необходимо максимизировать. Пусть wi( j) – значение целевой функции на i -й день при zi = j . Допустим, больного решили оперировать лишь на 3-й
день. В этом случае среднеожидаемая оценка состояния больного перед операцией будет равна (рис. 2.14)
w3 = w3(1) p1 + w3(2) p2 + w3(3) p3 =1 0,3 +2 0,5 +3 0,2 =1,9 .
53
|
|
|
|
|
|
3 w1(3) |
|
|
|
|
Оп |
3 w2(3) |
||
|
|
|
|
|
Оп |
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
p3 |
z1 |
= 3 |
|
|
|
p3 |
|
z2 |
= 3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|||||
|
p1 |
|
|
Жд |
|
|
p1 |
|
|
Жд |
|
|
||
Изм1 |
z1 |
=1 |
Изм2 |
|
z2 |
=1 |
Изм3 |
|
||||||
|
|
Жд |
|
|
|
Жд |
|
|||||||
|
|
|
|
|
|
|||||||||
|
p2 |
|
|
|
|
p2 |
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
z1 |
= 2 |
|
|
|
|
|
z2 |
= 2 |
|
|
|
|
|
|
|
|
Оп |
|
|
|
|
Оп |
|
|
||
|
|
|
|
|
|
2 w1(2) |
|
|
|
|
|
2 w2(2) |
||
|
|
|
|
|
|
|
|
|
|
Рис. 2.13 |
|
|
||
3 w3(3)
Оп 
z3 = 3 p3 
p1 |
|
|
Оп |
w3(1) |
|
z3 |
=1 |
||||
|
1 |
||||
|
|
|
|
|
p2
z3 = 2
Оп
2 w3(2)
54
Этот результат показывает, что если на |
|
|
|
|
|
|
|
|
p3 |
3 |
w3(3) |
|||||||||||||||||
2-й день мы получили z2 = 2, |
то (так как это |
|
|
|
|
|
|
|
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
больше, чем 1,9) наилучшим будет решение |
|
|
|
|
|
|
|
p1 |
|
1 |
w(1) |
|||||||||||||||||
|
|
|
Изм3 |
|
|
|||||||||||||||||||||||
x2 = Оп , и для втор ого дня дерево альтер- |
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|||||||||||||||
|
|
|
|
=1,9 |
|
|
|
|
|
|
|
|||||||||||||||||
натив представляется в виде рис. 2.15. Из ри- |
|
|
|
w3 |
|
|
p2 |
2 |
w3(2) |
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||
сунка видно, что w(1) = |
|
|
. Рассуждая анало- |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
w |
|
|
|
|
|
Рис. 2.14 |
|
|
||||||||||||||||||||
|
|
|
|
2 |
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
гично, среднеожидаемая оценка состояния |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
больного на 2-й день |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
= w(1) p + w(2) p + w(3) p =1,9 0,3 +2 0,5 +3 0,2 = 2,17 . |
|
|
||||||||||||||||||||||||
|
w |
|
|
|||||||||||||||||||||||||
2 |
2 |
1 |
2 |
|
2 |
2 |
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
p3 |
|
|
|
Оп |
3 |
|
w(3) |
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
z = 3 |
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
p1 |
|
|
|
Жд |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Изм2 |
|
|
|
|
|
z2 = 1 |
1,9 |
w(1) |
= |
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
p2 |
|
|
|
|
|
|
|
|
|
|
2 |
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
w2 = 2,17 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
z2 = 2 |
Оп |
2 |
|
w2(2) |
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис. 2.15 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Это больше, чем 2, поэтому, если в 1-й день будет z1 = 2 , то оптималь-
ным решением будет воздержаться от операции в надежде на улучшение состояния больного в оставшиеся два дня, и дерево альтернатив для первого
дня приобретает вид рис. 2.16. Из этого рисунка видно, что w1(1) = w1(2) = w2 . Наконец, среднеожидаемая оценка состояния больного в 1-й день
w1 = w1(1)p1 + w1(2)p2 + w1(3)p3 = 2,17 0,3+2,17 0,5 +3 0,2 = 2,336.
|
|
|
|
|
|
|
Оп |
3 |
w1(3) |
||||
|
|
|
p3 |
z1 = 3 |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
p1 |
|
|
Жд |
|
|
|
|
|
|
|
|
Изм |
z1 |
=1 |
2,17 |
|
|
|
|
|||||
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
||||||
1 |
|
|
|
|
Жд ( |
|
|
|
|
|
|
||
|
|
= 2,3 |
|
|
|
|
|
|
|
|
|
|
|
w |
|
|
|
|
) |
( |
2 |
) |
|
|
|||
|
|
|
|
|
= w |
||||||||
1 |
|
|
|
|
w 1 |
= w |
|
||||||
|
|
|
p2 |
|
|
1 |
|
1 |
|
|
2 |
||
|
|
|
z1 |
= 2 |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
||
Рис. 2.16
55
