Разработка экспертной системы «Выбор спортивного инвентаря»

Автор работы: Пользователь скрыл имя, 20 Июня 2013 в 21:59, курсовая работа

Краткое описание

Сегодня практикуется использование экспертных систем. Экспертная система не говорит что лучше, она предоставляет те варианты, критерии которых устраивают пользователя в большей мере. Главным достоинством экспертных систем является возможность накопления знаний и сохранение их длительное время. В отличие от человека к любой информации экспертные системы подходят объективно, что улучшает качество проводимой экспертизы.

Содержание

ВВЕДЕНИЕ…………………………………………………………………………...3
1. ЭКСПЕРТНЫЕ СИСТЕМЫ………………………………………………………4
1.1 Назначение экспертных систем…………………………………………………4
1.2 Особенности экспертных систем………………………………………………..5
1.3 Классификация экспертных систем……………………………………………..7
2. СРЕДЫ РАЗРАБОТКИ……………………………………………………………8
2.1 Язык логического программирования Пролог…………………………………8
2.2 Общие сведения о BorlandC++ Builder………………………………………….9
3. РАЗРАБОТКА ЭКСПЕРТНОЙ СИСТЕМЫ «Выбор спортивного инвентаря»………………………………………………………………………12
3.1 Выбор метода реализации экспертной системы……………………………...12
3.2 Построение экспертной системы: описание логической части программы...13
3.3 Интерфейс экспертной системы: Windows – приложение…………………...14
ЗАКЛЮЧЕНИЕ……………………………………………………………………..17
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ……………………………………18
ПРИЛОЖЕНИЕ……………………………………………………………………..19

Прикрепленные файлы: 1 файл

Курсовая работа.doc

— 315.00 Кб (Скачать документ)

'если' 'ссылка3'-'А8' 'и' 'не' 'Нужна штанга?' 'то' 'ссылка4'-'А14'.

'если' 'ссылка3'-'А9' 'то' 'ссылка'-'Велосипед'.

'если' 'ссылка3'-'А10' 'и' 'Нужен  мяч?' 'то' 'ссылка4'-'А15'.

'если' 'ссылка3'-'А10' 'и' 'не' 'Нужен мяч?' 'то' 'ссылка4'-'А16'.

'если' 'ссылка3'-'А11' 'то' 'ссылка'-'Кроссовки Adidas'.

'если' 'ссылка3'-'А12' 'то' 'ссылка'-'Не  можем помочь'.

 

'если' 'ссылка4'-'А13' 'и' 'Блины  нужны?' 'то' 'ссылка5'-'А17'.

'если' 'ссылка4'-'А13' 'и' 'не' 'Блины нужны?' 'то' 'ссылка5'-'А18'.

'если' 'ссылка4'-'А14' 'и' 'Нужны  гири?' 'то' 'ссылка5'-'А19'.

'если' 'ссылка4'-'А14' 'и' 'не' 'Нужны гири?' 'то' 'ссылка5'-'А20'.

'если' 'ссылка4'-'А15' 'и' 'Для  футбола?' 'то' 'ссылка5'-'А21'.

'если' 'ссылка4'-'А15' 'и' 'не' 'Для футбола?' 'то' 'ссылка5'-'А22'.

'если' 'ссылка4'-'А16' 'и' 'Нужны лыжи?' 'то' 'ссылка5'-'А23'.

'если' 'ссылка4'-'А16' 'и' 'не' 'Нужны лыжи?' 'то' 'ссылка5'-'А24'.

 

'если' 'ссылка5'-'А17' 'то' 'ссылка'-'Штанга + блины'.

'если' 'ссылка5'-'А18' 'то' 'ссылка'-'Штанга  без блинов'.

'если' 'ссылка5'-'А19' 'то' 'ссылка'-'Комплект гирь'.

'если' 'ссылка5'-'А20' 'то' 'ссылка'-'Эспандер'.

'если' 'ссылка5'-'А21' 'то' 'ссылка'-'Футбольный  мяч'.

'если' 'ссылка5'-'А22' 'то' 'ссылка'-'Волейбольный  мяч'.

'если' 'ссылка5'-'А23' 'то' 'ссылка'-'Пара  лыж'.

'если' 'ссылка5'-'А24' 'то' 'ссылка'-'Бейсболка'.

 

ФайлUnit1.cpp

#include <vcl.h>

#pragma hdrstop

 

#include "Unit1.h"

#include "Unit2.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma link "Amzi"

#pragma resource "*.dfm"*Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{

 

}

//---------------------------------------------------------------------------

__stdcallP_Resultwrite(TEngIDEngID) {(Form1->LSEngine1->GetPStrParm(1));;

}

//---------------------------------------------------------------------------__stdcallP_Showrule(TEngIDEngID) {

//отвечает на вопрос почему;t;= "Если ";->LSEngine1->GetParm(2, dTERM, &t);= S + " " + Form1->LSEngine1->TermToPStr(t);->LSEngine1->GetParm(1, dTERM, &t);= S + " То " + Form1->LSEngine1->TermToPStr(t);(S);;

}

//---------------------------------------------------------------------------__stdcallP_Showfacts(TEngIDEngID) {S, S1;t;->LSEngine1->GetParm(1, dTERM, &t);= Form1->LSEngine1->TermToPStrQ(t);(Form1->LSEngine1->GetIntParm(2) == 1) {= " содержится в базезнаний";

} else {= " доказывается:";

}= S + S1;->Solution->Lines->Add("");->Solution->Lines->Add(S);;

}

//---------------------------------------------------------------------------__stdcall P_Showrule1(TEngIDEngID) {S;t;->LSEngine1->GetParm(2, dTERM, &t);= "     Если " + Form1->LSEngine1->TermToPStr(t);->Solution->Lines->Add("");->Solution->Lines->Add(S);->LSEngine1->GetParm(1, dTERM, &t);= "     То " + Form1->LSEngine1->TermToPStr(t);->Solution->Lines->Add(S);;

}

//---------------------------------------------------------------------------__stdcallP_Opros(TEngIDEngID) {

//опроспользователяS;;->Edit2->Text = Form1->LSEngine1->GetPStrParm(1);->Show();->LastModalRes = mresNone;->CloseApp = false;(Form1->LastModalRes == mresNone&& !Form1->CloseApp) {>ProcessMessages();(Form1->CloseApp) {= "hl";

} else {(Form1->LastModalRes) {:= "y";;:= "n";;:= "why";;

}

}

}(Form1->LSEngine1->UnifyPStrParm(2, S)) {;

} else {;

}

}

 

//---------------------------------------------------------------------------__fastcall TForm1::LoadBaseClick(TObject *Sender)

{

//ЗагрузитьбазузнанийS;t;(OpenDialog1->Execute())

{="reconsult('"+OpenDialog1->FileName.SubString(OpenDialog1->FileName.LastDelimiter("\\")+1,OpenDialog1->FileName.Length())+"')";{->ExecPStr(t, S);

} catch(...) {

 

}

= titleForm + OpenDialog1->FileName;>Items->LoadFromFile(OpenDialog1->FileName);="'назначение экспертной системы'(G)";

LSEngine1->ExecPStr(t, S);= true;

}

}

//---------------------------------------------------------------------------

__fastcall TForm1::AskBaseClick(TObject *Sender)

{

//опроситьбазузнаний(!isLoadBase) {ShowMessage("Загрузитебазузнаний"); return;}S="'решить'";t;(LSEngine1->ExecPStr(t, S))

{>Clear();

} else {ShowMessage("Ошибка: "+S);}

}

//---------------------------------------------------------------------------

__fastcall TForm1::SolutionStepClick(TObject *Sender)

{

//ходрешений(!isLoadBase) {ShowMessage("Загрузитебазузнаний"); return;}t;->ExecPStr(t, "gethow");

}

 

//---------------------------------------------------------------------------

__fastcall TForm1::FormClose(TObject *Sender, TCloseAction&Action)

{>Items->SaveToFile("DB.pro");

}

//---------------------------------------------------------------------------

__fastcall TForm1::FormCreate(TObject *Sender)

{->InitLS("XS7");->AddPred("opros", 2, P_Opros);->AddPred("resultwrite", 1, P_Resultwrite);->AddPred("showrule", 2, P_Showrule);->AddPred("showfact", 2, P_Showfacts);->AddPred("showrule1", 2, P_Showrule1);->LoadXPL("XS7");

}

//---------------------------------------------------------------------------

 

ФайлUnit2.cpp

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

#include "Unit2.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"*Form2;

//---------------------------------------------------------------------------

__fastcall TForm2::TForm2(TComponent* Owner)

: TForm(Owner)

{

}

//---------------------------------------------------------------------------

__fastcall TForm2::Button1Click(TObject *Sender)

{->LastModalRes=mresYes;->Close();

}

//---------------------------------------------------------------------------

__fastcall TForm2::Button2Click(TObject *Sender)

{->LastModalRes=mresNo;->Close();

}

//---------------------------------------------------------------------------__fastcall TForm2::Button3Click(TObject *Sender)

{->LastModalRes=mresWhy;

}

//---------------------------------------------------------------------------




Информация о работе Разработка экспертной системы «Выбор спортивного инвентаря»