Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
12-10-2013_09-24-50 / Модели и методы поддержки принятия решений в прикладных интеллектуальных системах.doc
Скачиваний:
53
Добавлен:
14.03.2016
Размер:
491.52 Кб
Скачать

5. Разработка структуры прецедента

Для реализации алгоритма рассуждений по прецедентам необходимо определить структуру прецедента.

Термин «прецедент» означает случай, имевший место ранее и который может использоваться как пример или обоснование случаев в будущем. При возникновении новой проблемной ситуации целесообразно использовать метод рассуждений на основе прецедентов, это обусловлено тем, что людям свойственно оперировать данным механизмом рассуждения, когда они сталкиваются с новой задачей.

Рассуждение на основе прецедентов является подходом, позволяющим решить новую задачу, используя или адаптируя решение уже известной задачи.

В большинстве случаев для представления прецедента достаточно простого параметрического представления:

,

где – параметры ситуации;

– решение.

Для реализации примера была выбрана следующая структура прецедента:

, где в таблице 2 Pi – параметры, Pr – решение.

Таблица 1 - Параметры прецедента

P1

Значение среднего чека

P2

Выполнение плана консультантом

Р3

Количество позиций в чеке

Р4

Был ли консультант на больничном

Р5

Был ли консультант уволен

Р6

Малый стаж работы консультанта

Р7

Был ли консультант в декретном отпуске

Р8

Был ли консультант в отпуске

Pr

Проблемы консультанта

6. Создание структуры прецедента в программном средстве jColibri

Разработанная ранее структура прецедента создается в JColibri 1.1 (http://sourceforge.net/projects/jcolibri-cbr/files/jCOLIBRI-CBR/jCOLIBRI_1.1.0/ )

После запуска программы, пользователю будет представлено главное окно программы (рис.5):

Рисунок 5- главное окно программы JColibri

Для создания структуры прецедента необходимо выполнить следующие действия:

  1. Создать новую CBR систему используя “CBR” => “New CBR System”.

  2. При создании выбрать пункт “Description Login Extension”.

  3. Затем вызывается окно создания структуры прецедента: “CBR” => “Manage Case Structures”.

  4. Выбирается тип: “Ontology”.

  5. В структуре прецедента выбирается “Case” и используя клавишу “Select Case Concept” выбирается концепт.

  6. Далее выбирается owl файл с ранее созданной онтологией. И онтология прочитывается командой: “Read Ontology”.

  7. Выбирается концепт (рис.6):

Рисунок 6 - выбор главного концепта

  1. Далее загружаются элементы прецедента:

    1. Выбирается “Description” и нажимается “Add simple”.

    2. Аналогично с пунктами 5 -7 выбирается параметр прецедента (например, IMPLEMENTATION_PLAN).

    3. Указывается отношение (например, implementation_plan).

    4. Указывается вес отношения (например, 1.0).

    5. Выбирается мера близости (например, Equal).

  1. После загрузки элементов прецедента, необходимо сохранить его структуру: “Save case structures”.

7. Выполнение рассуждений по прецедентам

Алгоритм рассуждений по прецедентам:

1 По выбранной мере сходства вычисляется локальные меры близости для каждого прецедента из базы данных прецедентов.

  1. По выбранной мере сходства вычисляется глобальная мера близости для каждого прецедента из базы данных прецедентов.

  2. В качестве решения выбирается прецедент, имеющий наиболее высокую глобальную меру близости.

Для выполнения рассуждений в системе JColibri необходимо запустить разработанную систему. Для этого:

  1. В главном окне выберете “PreCycle” и создайте Instance.

  2. В “Obtain cases task” создается экземпляр “jcolibri.extensions.DL.method.LoadDLCaseBaseMethod”.

  3. Аналогично пункту 1 выполняем действия для “CBR Cycle”.

  4. Для “Obtain query task” выбрать “jcolibri.extensions.DL.method.ConfigureDLQueryMethod”.

  5. Для “Retrieve task”, “Select working cases task”, “Compute similarity task” выполняются действия аналогичные 1.

  6. Для “Select base task” выбирается “jcolibri.method.SelectBestCaseMethod”.

  7. Выделить мышью (используя Shift) заполненные ранее пункты и запустить систему, используя клавишу .

  8. В следующем окне формируется запрос (рис.7):

Рисунок 7 - формирование запроса в JColibri

Для получения решения необходимо использовать “Ok”.

Для реализуемого примера при входных параметрах, указанных на рисунке 7, решение будет:

WORKING CASES:

CASE_ITEM_07

has-Description: Description

maternity_leave: MATERNITY_LEAVE_NO

conclusions: НИЗКОЕ_КОЛИЧЕСТВО_ЧЕКОВ

consultant_at_hospital: CONSULTANT_AT_HOSPITAL_YES

items_count_in_check: ITEMS_COUNT_IN_CHECK_3.9

dismissal: DISMISSAL_NO

average_check_p: AVERAGE_CHECK_2601-2700

work_experience_consultant: WORK_EXPERIENCE_CONSULTANT_NO

consultant_on_vacation: CONSULTANT_ON_VACATION_NO

total_count_checks: TOTAL_COUNT_CHECKS_41-50

implementation_plan: IMPLEMENTATION_PLAN_50-54

has-Result: Result

has-Solution: Solution

В результате поиска получили близкий прецедент НИЗКОЕ_КОЛИЧЕСТВО_ЧЕКОВ, у него наибольшая мера близости 0.8 – достаточно высокая. Можно считать решение положительным, следовательно, мы можем выбрать для нашего консультанта проблему «Низкое количество чеков» и предложить способ устранения данной проблемы.