Экспертная система "Злой разум"

Автор работы: Пользователь скрыл имя, 08 Ноября 2011 в 22:42, курсовая работа

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

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

Содержание работы

Введение 3
1. База знаний для предметной области “Образование” 4
2. Общая схема алгоритма цепочки рассуждений 6
3. Экспертная система, реализующая алгоритм прямой цепочки рассуждений 7
4. Экспертная система, реализующая алгоритм обратной цепочки рассуждений 10
Заключение 11
Список литературы 12

Содержимое работы - 2 файла

Содержание.doc

— 295.00 Кб (Скачать файл)

        else if (CheckBox1.Checked)  then

     showmessage('В армии читать уметь не надо! '+#13+'Главное, что годен! :)')

    end;

    end. 

Рис. 3. Результат  работы программы 

при использовании  прямой цепочки рассуждений 
 
 
 
 
 
 
 

    4. ЭКСПЕРТНАЯ СИСТЕМА,

       РЕАЛИЗУЮЩАЯ АЛГОРИТМ ОБРАТНОЙ ЦЕПОЧКИ РАССУЖДЕНИЙ

    unit Unit1;

    interface

    uses

      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

      Dialogs, StdCtrls, ExtCtrls;

    type

      TForm1 = class(TForm)

        CheckBox1: TCheckBox;

        CheckBox2: TCheckBox;

        CheckBox3: TCheckBox;

        CheckBox4: TCheckBox;

        CheckBox5: TCheckBox;

        CheckBox6: TCheckBox;

        CheckBox7: TCheckBox;

        CheckBox8: TCheckBox;

        CheckBox9: TCheckBox;

        CheckBox10: TCheckBox;

        Button1: TButton;

        CheckBox11: TCheckBox;

        CheckBox12: TCheckBox;

        Button2: TButton;

        RadioGroup1: TRadioGroup;

        procedure Button1Click(Sender: TObject);

        procedure FormCreate(Sender: TObject);

        procedure Button2Click(Sender: TObject);

        procedure RadioGroup1Click(Sender: TObject);

        procedure FormClose(Sender: TObject; var Action: TCloseAction);

      private

        { Private declarations }

      public

        { Public declarations }

      end;

    var

      Form1: TForm1;

    implementation

    uses Unit2;

    {$R *.dfm}

    procedure TForm1.Button2Click(Sender: TObject);

    begin

    if Form1.ClientWidth=593 then begin

    Button2.Caption:='Ткни, чтобы узнать что ты должен  знать!';

    Form1.ClientWidth:=414

    end

    else begin

    Form1.ClientWidth:=593;

    Button2.Caption:='Не хочу знать!';

    end;

    end;

    procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);

    begin

    form2.Showmodal;

    end; 

    procedure TForm1.FormCreate(Sender: TObject);

    begin

    Form1.ClientWidth:=414;

    end;

    procedure TForm1.RadioGroup1Click(Sender: TObject);

    begin

    CheckBox1.Checked:=false;

    CheckBox2.Checked:=false;

    CheckBox3.Checked:=false;

    CheckBox4.Checked:=false;

    CheckBox5.Checked:=false;

    CheckBox6.Checked:=false;

    CheckBox7.Checked:=false;

    CheckBox8.Checked:=false;

    CheckBox9.Checked:=false;

    CheckBox10.Checked:=false;

    CheckBox11.Checked:=false;

    CheckBox12.Checked:=false;

    if RadioGroup1.Buttons[0].Checked then begin

      CheckBox3.Checked:=true;

      CheckBox6.Checked:=true;

      CheckBox11.Checked:=true;

    end;

    if RadioGroup1.Buttons[1].Checked then begin

      CheckBox4.Checked:=true;

      CheckBox5.Checked:=true;

      CheckBox9.Checked:=true;

    end;

    if RadioGroup1.Buttons[2].Checked then begin

      CheckBox2.Checked:=true;

      CheckBox10.Checked:=true;

    end;

    if RadioGroup1.Buttons[3].Checked then begin

      CheckBox1.Checked:=true;

      CheckBox7.Checked:=true;

      CheckBox8.Checked:=true;

    end;

    if RadioGroup1.Buttons[4].Checked then begin

      CheckBox12.Checked:=true;

    end;

    if RadioGroup1.Buttons[5].Checked then begin

      CheckBox1.Checked:=true;

      CheckBox2.Checked:=true;

      CheckBox3.Checked:=true;

      CheckBox4.Checked:=true;

      CheckBox5.Checked:=true;

      CheckBox6.Checked:=true;

      CheckBox7.Checked:=true;

      CheckBox8.Checked:=true;

      CheckBox9.Checked:=true;

      CheckBox10.Checked:=true;

      CheckBox11.Checked:=true;

      CheckBox12.Checked:=true;

    showmessage('Наши  студенты Всё знают и умеют! :)')

    end;

    end;

    end. 

Рис. 4. Результат  работы программы 

при использовании  обратной цепочки рассуждений 
 
 

    ЗАКЛЮЧЕНИЕ

    В данной контрольной работе описаны некоторые основные методы функционирования экспертных систем. В частности, в работе рассматриваются способы представления знаний с помощью правил вывода (правил “if-then-else”), главные механизмы логического вывода в экспертных системах на основе правил (такие как прямой или обратный логический вывод).

 

     СПИСОК ЛИТЕРАТУРЫ

1. «Создание компонентов в среде Delphi. Руководство разработчика»  Михаил Голованов, Евгений Веселов  Издательство «BHV - Санкт-Петербург» 2004 г.
2. Альманах программиста. Том 1. Microsoft ADO.NET, Microsoft SQL Server. Доступ к  данным из приложений Издательство «Русская Редакция» Купцевич Ю.Е. 2003 г.
3. «Введение в C#. Библиотека программиста» Издательство Издательский дом «Питер».  Э. Гуннерсон 2001 г.
4. «Borland Delhi 4.0. Руководство  разработчикаИздательство» Издательский дом «Вильямс» С. Тейксейрa, К. Пачеко 1999 г.
5. «Delphi 7: Для профессионаловИздательство» Издательский дом «Питер». Кэнту М. 2004 г.

Злой Разум.zip

— 423.68 Кб (Скачать файл)

Информация о работе Экспертная система "Злой разум"