Построение и анализ дерева решений с качественными оценками последствий
В предыдущем разделе рассмотрена ситуация, в которой оценками последствий решений служили денежные суммы, поэтому было целесообразно говорить об оценках выгоды этих решений. На практике приходится иметь дело не только с количественными, но и с качественными оценками, характеризующими последствия принятых решений. При этом термин “выго-да” может оказаться неуместным, лучше использовать термин “оценка последствий” или “показатель ценности последствий”. В качестве примера, требующего построения и анализа дерева решений с качественными оценками последствий, разберем задачу о медицинской операции.
Предположим, что лечащий врач должен решить, следует ли делать сложную и достаточно опасную операцию пациенту, у которого подозревается серьезное заболевание, например, раковая опухоль. Если у данного пациента действительно есть опухоль, и если ему сделать операцию, то шанс на выздоровление считается равным 50%. Без операции этот шанс снижается в 10 раз и составляет всего 5%, т.е. надеяться на выздоровление можно лишь в одном случае из 20. В то же время, если у пациента нет опухоли и он подвергнется операции, то вероятность вызванного ее последствиями смертельного исхода отнюдь не мала: один шанс из 5, т.е. 20%. Если же опухоли нет и при этом не будет операции, то вероятность смерти можно считать нулевой (разумеется, в пределах сравнительно небольшого промежутка времени после принятия того или иного решения). Спрашивается, какое решение должен принять врач? Делать или не делать операцию при данных условиях? Добавим, что при построении дерева любые последствия будут приводить к одной и той же альтернативе: выздоровление или смерть (в реальной жизни бывают более сложные разветвления последствий, но мы ограничимся простым случаем).
Так как врач поставлен перед необходимостью принять одно из двух сформулированных выше решений, то дерево будет начинаться с узла решений с двумя отходящими ветвями “де-лать операцию” и “не делать” (рис. 2.2). Эти ветви подходят к узлам случаев, каждый из которых дает новую пару ветвей, связанных с наличием или отсутствием опухоли. Какие вероятности надо приписать ветвям “есть опухоль” и “нет опухоли”? В условии задачи ничего не сказано о надежности диагноза, поэтому можно сделать несколько оценок этой надежности. Пусть вероятность правильного диагноза составляет 0,75, тогда это значение нужно проставить на ветви “есть опухоль”, в то время как ветви “нет опухоли” будет соответствовать вероятность неправильно поставленного диагноза, т.е. 0,25.
Как показывает рис. 2.2, ветви “есть опухоль” и “нет опухоли” идут от узлов случаев и заканчиваются новыми узлами случаев, после которых каждый раз имеем разветвление “выздоров-ление — смерть”. Однако вероятности этих исходов будут каждый раз существенно разными. Направление, задаваемое ветвями “делать операцию” и “есть опухоль”, приведет к узлу случаев, после которого шансы на выздоровление и летальный исход, по условию задачи, одинаковы (вероятность 0,5). Следуя направлению “делать операцию” — “нет опухоли”, подойдем к узлу, за которым вероятность выздоровления составит 0,8, а вероятность смерти — 0,2. Направление “не делать” — “есть опухоль” дает узел с разветвлением, при котором вероятность выздоровления 0,05 (один шанс из 20), а вероятность смерти 0,95 (19 шансов из 20). Наконец, направление “не делать” — “нет опухоли” приводит к последнему узлу случаев, новые ветви которого характеризуются стопроцентным выздоровлением (вероятность смерти равна нулю).
Рис. 2.2. Дерево решений в задаче о медицинской операции
В рассматриваемой ситуации отсутствуют количественные оценки последствий искомого решения, поэтому придется ввести условный показатель ценности этих последствий. Так как все терминалы полученного дерева представляют одну и ту же пару конечных результатов, то достаточно ввести всего две условных оценки последствий требуемого решения. Смертельный исход условимся оценивать нулем, а выздоровление — показателем, равным 100 (далее увидим, что абсолютная величина этой оценки не имеет значения, вместо 100 можно взять 1, или 10, или 1000 и т.д.).
Вспомним теперь, что анализ дерева решений ведется от его терминалов к стволу, т.е. справа налево. Напомним также, что все узлы случаев характеризуются математическими ожиданиями показателей ценности последствий, и по ним выбирается ветвь на основе максимизации.
Начнем анализ с правого верхнего угла рис. 2.2. Находящемуся здесь узлу следует приписать математическое ожидание показателя последствий, равное сумме произведений вероятностей на соответствующие им возможные значения этого показателя: 0,5·100+0,5·0=50. Второй узел случаев, который расположен под только что рассмотренным, будет иметь математическое ожидание показателя последствий, равное 0,8·100+0,2·0=80. Для следующего узла (он находится под вторым узлом) получим значение показателя, которое составит 0,05·100+0,95·0 = 5. Последний узел (в нижнем правом углу рисунка) получит значение показателя ценности последствий, равное 1·100+0·0 = 100.
Далее необходимо рассмотреть два других узла случаев, каждый из которых связан с ветвями “есть опухоль” и “нет опухоли”. Верхний из них характеризуется следующей величиной показателя последствий: 0,75·50+0,25·80=57,5. Нижний узел получит значение показателя, равное 0,75·5+0,25·100=28,75.
Теперь осталось провести максимизацию значений, полученных для только что рассмотренных узлов, поскольку в левой части дерева расположен узел решений. Наибольшей из двух величин является 57,5, ее и надо оставить. Эта величина характеризует узел с ветвью “делать операцию”, следовательно, ответ на заданный вопрос получен. Ветвь, идущую к узлу с меньшим значением показателя последствий, т.е. ветвь “не делать”, зачеркнем (что уже сделано на рис. 2.2).
Проведенный анализ позволяет дать количественную оценку снижения риска для решения “делать операцию”. Она представляет собой отношение чисел 57,5 и 28,75. Поделив первое на второе, получим 2, т.е. в данном случае операция снижает риск летального исхода в два раза. Теперь должно быть понятно, почему не имела значения абсолютная величина показателя ценности последствий решения — она сокращается при делении первой величины на вторую. Так, если условное значение 100 заменить, например, на 10, то вместо величин 57,5 и 28,75 получатся соответственно 5,75 и 2,875, но их отношение, очевидно, не изменится.
Из-за отсутствия в условии задачи данных о надежности диагноза можно провести анализ при разных уровнях этой надежности. Легко показать, что если вместо рассмотренной выше надежности 75% (p = 0,75) взять 100% (абсолютно надежный диагноз: p = 1), то решение “делать операцию” станет предпочтительней не в 2, а в 10 раз. Иными словами, в новых (предельных) условиях диагностики операция снижает риск смерти в 10 раз.
Конечно, к обеим рассмотренным конкретным задачам надо относиться как к простым моделям, иллюстрирующим анализ процесса принятия решений с привлечением метода деревьев. Этот метод легко реализуется на современных компьютерах, так как он требует выполнения всего двух операций: подсчета математического ожидания и максимизации. Поэтому во многих разнообразных по характеру задачах можно строить и анализировать очень сложные деревья, с тысячами ветвей и сотнями узлов. Основные трудности программирования связаны здесь, главным образом, с представлением информации в виде, удобном для ввода в компьютер. Методом деревьев часто решаются и задачи, связанные с оценкой и анализом различных видов экологического риска (см. гл. 7).