МОДЕЛЬ ДЕРЕВЬЕВ РЕШЕНИИ, ИСПОЛЬЗУЮЩАЯ ЛОГИКУ ПРЕДИКАТОВ
Солодовников В.И., Солодовников И.В.
Московский государственный институт электроники и математики
В работе предлагается вариант модифицированной модели деревьев решений, основанный
на логике предикатов первого порядка, которая позволяет:
• производить вычисления, как в узлах дерева, так и на его ребрах и на основе данных вычислений принимать решение,
• использовать операции разбиения для выделения фрагментов из общего дерева для подробного рассмотрения отдельных подзадач,
• в случае необходимости осуществлять уточнение полученного решения с помощью дальнейшего раскрытия вершин вывода.
• создавать многоуровневую модель принятия решений, как для опытного, так и для неподготовленного пользователя, путем подстановки большинства значений по умолчанию и минимального уточнения полученных решений.
Область определения и значений такого дерева решений включает в себя следующие переменные:
Переменные вывода П = [й 1,..., йт }, где - домен переменной ^ . Переменные решений X = [х1з...,хп}, где X, - домен переменной х 1.
Само дерево решений состоит из вершин двух типов: Вершина решение:
П1( х).
п г (Хг)
Где П ■ (х{) - отношение, определенное на домене переменной решений X,.
Приход в вершину х, означает, что на пути, приведшем к переменной х1, могут быть определены следующие отношения: П; (х) ЕП* = [П 1(хг),...,Пг(х)}
Вершина вывод:
П(й,)
а 1(П (й,))
► а 2(П (й,)) а г (П (й))
Где П(й ) - отношение, определенное на домене переменной вывода .
а(П(й I)) - отношение, определенное на множестве значений, удовлетворяющих отношению П.
Будем считать, что значение эксцидентности равное нулю возможно только для вершин вывода, то есть только они могут быть листьями в дереве.
На множестве таких вершин может быть введена операция раскрытия вершины, которая предполагает пару родительская - дочерняя и зависит от их типа. Существуют следующие ситуации:
1. Родительской является вершина решение, а дочерней вершина вывод.
Х; ) ак Р
п <)
Родитель: вершина решение. Потомок: вершина вывод.
Формальной записью такой операции является: ак (х{) ® П(<■), и может трактоваться как: «Если ак (х{) , то П<) ».
2. Как родительской, так и дочерней являются вершины решений .
ГХЛ Пк ►^Х"^ О г ► Родитель: вершина решение.
Потомок: вершина решение.
Формально эта ситуация может быть записана как: П к (х{) Ог (X ■). Трактовкой является выражение: (Если Пк (х. )) и (Если Ог (X,)), которое определяет пару условий. Причем второе условие обусловлено выбором дуги соответствующей вершины.
3. Как родительской, так и дочерней являются вершины вывода. Формально можно записать: О (П1«.)) ®П 2<).
П,(<) О П 2< )
Родитель: вершина вывод. Потомок: вершина вывод.
Трактовкой служит выражение: «Если О(П 1(di)), то П 2(<;-)», и определяет уточнение вывода.
4. Родительской является вершина вывод, а дочерней вершина решение.
О ^^ ак (х ■)
-►( ХЛ--—1—► Родитель: вершина вывод.
П (<; )
. Потомок: вершина решение.
Формальной записью операции является: О(П(<1)) ® (ак (х ■) ® ...), что может быть трактовано как:
«Если а(П(й)), то (Если ак (х}-), то ...)». Данная операция определяет частное дерево решений.
Таким образом, имеющиеся вершины и введенные на них операции раскрытия позволяют построить дерево. Процедура принятия решения происходит сверху вниз от корня к листьям. Результаты работы дерева решений формулируются в виде фактов. Могут быть выделены три вида фактов:
1. Общий факт - путь от корня до вершины вывода (листа).
а а
о-*о—• • —О-Ч • • —ч
т(х1, х2 5***5 хт, , й1, хт+1,***5 )
Общий факт.
Формальной записью общего факта является выражение вида:
а 12 (х1 X * **, ат-1т (хт-1 X ата 1 (хт X а+1 (П 1(й 1 * **, апй, (тп ) Е П, (йг )
2* Факт - экземпляр общего факта, т.е. для каждого отношения выбрано конкретное значение,
удовлетворяющее отношению. 3* Частичный факт - путь до вершины вывода, не являющийся листом*
Над пространством деревьев решений могут быть определены следующие операции:
Разбиение (Получение частичных деревьев)
Данная операция направлена на выделение частичных деревьев из полного дерева решений, что аналогично разбиению глобальной задачи на подзадачи с определенными ограничениями. 1* Вертикальное разбиение*
1.1. Выделение поддерева, в котором все вершины листья, содержат одну переменную вывода.
1*2* Выделение поддерева, в котором все вершины листья содержат одинаковые
ограничения (отношения) для переменной вывода. 1*3* Выделение поддеревьев, в которых вершины листья содержат одно значение переменной вывода*
2* Горизонтальное разбиение*
Разбиение от корня до ближайших вершин вывода и от каждой промежуточной вершины вывода (как корня) до следующих*
Горизонтальное разбиение дерева решений.
Объединение
Эта операция является обратной разбиению и осуществляет формирование общего дерева решений из его фрагментов (поддеревьев). Могут быть выделены такие виды объединений как: объединение дополнение и объединение уточнение.
Объединение дополнение заключается в увеличении количества альтернатив выбора исходов из вершины решения с дальнейшим их выводом (прикрепление соответствующего поддерева к дереву по определенному значению параметра). Данное действие соответствует дополнительному разбиению множества возможных значений X на подмножества.
Объединение уточнение сопоставляет вершине вывода некоторого дерева решений другое
дерево, корень которого соответствует выбранной вершине вывода. Таким образом, происходит • • • • • •
а 1 (п(а,)) ^2(П(а,)) ^г (П(а,)) ••• ••• •••
Объединение уточнение.
дальнейшее раскрытие вершины вывода, и она из общего факта трансформируется в частичный факт.
Определенные таким образом деревья позволяют, в частности, решать задачи выбора и проектирования нейросетевых структур. Упрощается процесс определения значений параметров проектируемых нейросетей, в связи с возможностью разбиения общего дерева решений на фрагменты, что позволяет осуществлять решение отдельных подзадач в рамках глобальной задачи.
В наиболее общем виде весь процесс проектирования нейросети может быть разбит на следующие этапы: выбор архитектуры сети, количества слоев и числа элементов в каждом из них, определение значений весовых коэффициентов, тестирование. В основном, влияние на выбор параметров оказывают решаемая пользователем задача и имеющиеся у него данные. Причем от задачи главным образом зависит выбор нейросетевой парадигмы, тогда как выборка данных определяет общее число примеров, размерность пространства входных признаков, необходимость использования методов предобработки данных, их нормировку и кодирование, а, следовательно, и влияет на число нейронов в слоях. Стоит отметить, что возможна ситуация, когда работа уже построенной сети на основе выбранной пользователем парадигмы не будет удовлетворять определенным условиям на имеющихся данных. Все эти ситуации можно отобразить в предлагаемой модели деревьев решений, определяющей процесс проектирования с учетом характеристик информации хранящейся в БД.
Процесс проектирования с использованием деревьев решений основывается на механизмах вывода, к которым можно отнести прямую и обратную цепочку рассуждений [1]. При использовании модифицированных деревьев возникает необходимость раскрытия предикатов в вершинах и на дугах дерева. Один из подходов к решению данной задачи предлагается в статье из этого сборника «Солодовников И.В., Рогозин О.В., Шуруев О.В. Реализация механизма логического вывода для прототипа экспертной системы (ЭС)». Для повышения эффективности получения результатов вывода результаты вывода сохраняются в семантической сети, имеющей вид двудольного графа [2].
Литература
1. Солодовников В.И., Солодовников И.В. Разработка ВС с использованием графовых моделей принятия решений - Новые информационные технологии. Материалы пятого научно-практического семинара. М., 2002
2. Солодовников И.В. Реализация механизмов вывода на основе деревьев решений и семантических сетей. Материалы 6 науч.-практ. семинара Новые информационные технологии - М., МГИЭМ, 2003