Автор работы: Пользователь скрыл имя, 24 Июля 2014 в 18:53, курсовая работа
При создании своих пользовательских экспертных систем на каком-нибудь языке высокого уровня программист сталкивается с тем, что разработка интерфейса программы, реализация ее системных функций требуют больших затрат времени, чем создание самого набора правил экспертной системы (ЭС). Для того чтобы разгрузить разработчика ЭС от такой работы, существуют специальные инструментальные средства (оболочки) экспертных систем. Такие инструментальные средства есть в ЭС MYCIN, GURU, LEONARDO, DENDRAL, 1stCLASS и др.
Введение……………………………………………………………………………………………2
Техническое задание…………………………………………………………………………2
Характеристики ЭС……………………………………………………………………………..3
Тип инвестиционного портфеля………………………………………………………..4
Диаграммы…………………………………………………………………………………………5
Определение правил оценки типа портфеля………………………………….11
Тестовые примеры……………………………………………………………………………12
Код программы…………………………………………………………………………………20
Заключение………………………………………………………………………………………31
Список литературы…………………………………………………………………………..32
МОСКОВСКИЙ ЭНЕРГЕТИЧЕСКИЙ ИНСТИТУТ (ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ)
Гуманитарно-прикладной институт
КУРСОВАЯ РАБОТА
по дисциплине "Интеллектуальные информационные системы"
Тема: "Разработка прототипа экспертной системы формирования инвестиционного портфеля для клиента паевого инвестиционного фонда"
Выполнил: студент группы ГП 10-06
Борхаленко В.А
Руководитель:
Москва – 2010
Содержание
Введение…………………………………………………………
Техническое задание……………………………………………………………
Характеристики ЭС…………………………………………………………………………
Тип инвестиционного портфеля……………………………………………………….
Диаграммы………………………………………………………
Определение правил оценки типа портфеля………………………………….11
Тестовые примеры……………………………………………………………
Код программы………………………………………………………
Заключение……………………………………………………
Список литературы……………………………………………………
Введение
Под экспертной системой понимается система, объединяющая возможности компьютера со знаниями и опытом эксперта так, что система может предложить разумный совет или осуществить разумное решение поставленной задачи. Дополнительной возможностью системы является способность пояснить ход своих рассуждений в понятной для спрашивающего форме.
При создании своих пользовательских экспертных систем на каком-нибудь языке высокого уровня программист сталкивается с тем, что разработка интерфейса программы, реализация ее системных функций требуют больших затрат времени, чем создание самого набора правил экспертной системы (ЭС). Для того чтобы разгрузить разработчика ЭС от такой работы, существуют специальные инструментальные средства (оболочки) экспертных систем. Такие инструментальные средства есть в ЭС MYCIN, GURU, LEONARDO, DENDRAL, 1stCLASS и др.
Настоящая курсовая работа связана с освоением оболочки "GURU".
Техническое задание
Разработать прототип экспертной системы для оценки типа инвестиционного портфеля консультантом для выполнения пожеланий инвестора .
Оценку надежности
реализовать как лингвистическую переменную,
принимающую значения из множества {"КОНСЕРВАТИВНЫЙ","
При решении задачи должны учитываться факторы:
- желаемый риск портфеля;
- уровень инфляции;
- банковская (безрисковая) процентная ставка;
- срок действия портфеля;
- экономическое положение в стране;
- процент активов на депозите в банке;
- процент ценных бумаг;
-уровень безработицы;
-цена за баррель нефти
Среда разработки: Guru.
Источник информации для формирования базы знаний:
-Интернет (сайт банка Юнистрим)
Выбор инструментальных средств
Для разработки системы мне показалось более удобной система GURU, так как она представляет более широкие возможности при создании базы правил и расчете достоверности полученного результата по сравнению с 1stCLASS. Коротко опишу выбранную систему.
Режимы работы
"GURU" имеет три режима работы:
– диалоговый: в ходе диалога типа "запрос-ответ" с помощью развитой системы меню, не прибегая к написанию собственных программ, пользователь создает экспертную систему;
– естественный язык: пользователь на запрос системы вводит фразы на естественном языке и получает результаты. Например, система спрашивает "Ваш запрос?". Написав в командной строке фразу "Найти всех работающих 1967 года рождения", пользователь получает от системы разумный ответ;
– командный: как в языках высокого уровня (ЯВУ), пишется программа, компилируется и работает в соответствии с вашими требованиями.
Обычно применяются смешанные режимы.
Характеристики ЭС
Основными характеристиками являются: интерфейс пользователя, машина логических выводов и хранимые экспертизы.
Интерфейс пользователя описывает отношения между пользователем и системой. Пользователь ставит задачу, а машина должка ее выполнить или объяснить, почему нельзя ее выполнить.
Машина логических выводов - это программное обеспечение (ПО), которое можно использовать в решении задач путей аргументации.
Хранимые экспертизы - это набор правил, отображающих знания. В каждом правиле есть посылка (IF) и заключение (THEN).
Если машина логических выводов признает посылку верной, TО и заключение будет верным.
Оперативная помощь
Находясь в любом меню, можно получить подсказку по действиям, допустимым в этом меню. Для этого вызывается помощь одновременным нажатием <Ctrl-L>.
Правила "GURU"
Система "GURU" базируется на правилах. Правило состоит из посылки (IF) и заключения (THEN). Посылка может включать:
различные типы и виды переменных, поддерживаемых "GURU";
логические операторы (EQ, NE, GT, GE, LT, LE, IN, AND, OR, XOR, NOT,>,<);
числовые операторы (+, -, /, *, **,=);
числовые функции (SIN, COS и т.д.);
символьные функции.
Заключение может включать команды:
присвоения значения различным переменным;
позволяющие проконсультироваться с другим набором правил;
различные команды "GURU" и т.д.
Правила хранятся в обычном текстовом файле, что позволяет редактировать их при помощи Notepad.
Стратегии управления
Один из важных вопросов для ЭС - какое правило рассматривать следующим. Этим процессом управляет машина логических выводов.
При выборе правила нужно пользоваться двумя основными стратегиями управления: прямым и обратным выводами.
Прямой вывод. Данный метод действует от посылки до действия до тех пор, пока переменной не будет присвоено значение.
Обратный вывод. Этот вывод - наиболее часто используемый метод управления. При этом МЛВ начинает с цели и, просматривая набор правил, находит первое правило, с помощью которого можно достичь цели. Если посылка этого правила определима и верна, то система выполняет соответствующие действия. Если посылка неопределима, то МЛВ временно меняет цель - устанавливает в качестве цели переменную, которая позволит определить истинность первой найденной посылки и ищет первое правило, определимое и верное для новой поставленной цели.
Тип инвестиционного портфеля
Инвестиционный портфель — набор реальных или финансовых инвестиций. В узком смысле это совокупность ценных бумаг разного вида, разного срока действия и разной степени ликвидности, принадлежащая одному инвестору и управляемая как единое целое.
Тип инвестиционного портфеля зависит от:
Распределения активов, причем в большей степени от от процента вложенной суммы средств на депозите в банке. Важно заполнить несколько моментов:
При наличии денежных средств на депозите - их процент ,отношение безрисковой ставки к уровню инфляции.
При наличии ценных бумаг -распределение доли активов в акции и облигации.
Удобно представить данные о составе портфеля в виде следующего дерева:
3.1 Менее 20 % капитала
3.2 От 20 % до 60 % капитала
3.3 Более 60 % капитала
(см. Дерево)
4.1 Менее 2-х лет
4.2 От 2-х до 5 лет
4.3 Более 5 лет
(см. Дерево)
(см. Дерево)
Определение Правил Оценки Типа Портфеля
В результате работы с экспертом был определён список правил, на основании которых будет работать экспертная система. Для каждого правила, также был определен процент его воздействия на конечный результат.
1. Наличие вклада на банковском депозите.
2. Наличие ценных бумаг
3. Если есть 1 :
Уровень инфляции
Безрисковая ставка процента
Процент активов капитала, хранящихся в банке
4. Если есть 2 :
Процент акций
Процент Облигаций (100-(Процент акций)-( Процент активов капитала, хранящихся в банке (если есть)))
5. Цена за баррель нефти (у.е)
6. Экономическое положение в стране
7. Процент безработицы в стране
Тестовые примеры
За консультацией по поводу оценки инвестиционного портфеля обратился инвестор.
№1
Предложенный тип портфеля :
Объяснение :
№2
Предложенный тип портфеля :
Объяснение :
За консультацией по поводу оценки инвестиционного портфеля обратился инвестор.
№3
Предложенный тип портфеля :
Объяснение :
КОД ПРОГРАММЫ
GOAL: PORTFEL
INITIAL:
e.ifuz = 3
e.lstr = 110
e.trac="n" /*отмена трассировки. v - включить трассировку*/
e.sord="ph" /* критерии, по которым устанавливается очередность проверки */
/* правил; ph - по приоритету + по наибольшей достоверности результата */
e.rigr="a" /* режим проверки конфликтующих
правил для достижения
/* с заданной степенью точности; а - все правила, дающие минимально */
/* допустимый фактор уверенности + правила, увеличивающие достоверность */
/* результата */
e.tryp="s" /* режимы оценки; s - проверка неизвестных переменных, */
/* пока значение какой-либо из них не будет получено */
e.cfva="mp" /* функции обработки показателей нечеткости */
e.lnum=7 /* длина числового значения для округления */
e.deci=2
/* число значащих цифр после запятой */
E.UNKN = 10
PORTFEL = { "ПОРТФЕЛЬ НЕИЗВЕСТЕН" cf 100 }
/* PORTFEL = UNKNOWN */
PORTFELEXIST = UNKNOWN
SIT = UNKNOWN
RISK = UNKNOWN
NONFARM = UNKNOWN
INFL = UNKNOWN
BANK = UNKNOWN
STAVKA = UNKNOWN
MONEY = UNKNOWN
SROK = UNKNOWN
BUMAGI = UNKNOWN
AKC = UNKNOWN
DO:
clear;
at 8,2 output "ТИП ПОРТФЕЛЯ"
at 9,2 output " ", valn(PORTFEL, 1)
at 10,2 output " ***** Фактор уверенности равен ", cfn(PORTFEL, 1)
if cfn(PORTFEL,2) > 0
at 11,2 output "-----------------------------
at 12,2 output " Возможный альтернат. ПОРТФЕЛЬ: ", valn(PORTFEL, 2)
at 13,2 output " ***** Фактор уверенности равен ", cfn(PORTFEL,2)
endif
if cfn(PORTFEL,3) > 0
at 14,2 output "-----------------------------
at 15,2 output " Возможный альтернат. диагноз: ", valn(PORTFEL, 3)
at 16,2 output " ***** Фактор уверенности равен ", cfn(PORTFEL, 3)
endif
RULE: R1
PRIORITY: 100
COST: 100
IF: BANK = 1
THEN: PORTFELEXIST = TRUE
PORTFEL-= { "ПОРТФЕЛЬ НЕИЗВЕСТЕН" cf 100 }