ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Експертна система
         

     

    Інформатика, програмування

    Зміст


    1 Завдання 3


    2 Угода про вимоги до програми 3

    2.1 Опис призначення програми 3
    2.2 Визначення подання вхідних та вихідних даних 3
    2.3 Дія програми. 5

    3. Опис програми 5

    3.1 Мова програмування 5

    3.2.1 Опис структури програми 5

    3.2.2 Описи входять процедур 6

    3.3 Специфікація інтерфейсів програми 6

    4 Текст програми 7


    5 Результати тестування 10


    6 Список літератури 11

    Завдання

    Розробити найпростішу експертну систему.

    Кілька визначень:
    Під експертною системою розуміється система, що поєднує можливостікомп'ютера із знаннями і досвідом експерта в такій формі, що система можезапропонувати РАЗУМНИЙ РАДА або здійснити Розумне рішення поставленоїзавдання.
    Експертна система - програма, яка емулює взаємодіякористувача з експертом-чоловіком при вирішенні певної проблеми.

    Угода про вимоги до програми

    1 Опис призначення програми


    У підключеній базі знань "Тваринний світ "користувачеві пропонується вжартівливій формі визначити, до якого виду живих істот він відноситься. Данабаза знань є жартівливій.


    2 Визначення подання вхідних та вихідних даних


    За замовчуванням вхідними даними є файл bd.txt, Файл містить даніпро представників тваринного світу. Файл *. txt має строгопевну структуру:


    Номер питання

    Питання

    Кількість відповідей

    Відповіді

    Номер питання

    .

    .

    .

    Як приклад:

    1

    До якого виду живих істот Ви себе відносите? < p> 3

    Тварина

    Рослина

    Не знаю

    11

    До якого виду?

    4

    Комаха

    Птах

    ссавець

    Не знаю

    12

    Яке сімейство?

    4

    Дерево

    Трава

    Водорості

    Не знаю

    13

    У вас є коріння?

    2

    Так

    Ні

    111

    Ви п'єте кров?

    2

    Так

    Ні

    Переваги запропонованою архітектури бази знань:
    1. Простота побудови.

    2. Кількість запитань та відповідей у системі не обмежено.
    3. Фраза не обмежена.

    Висновок експертної системи відображається на екрані.

    3 Дія програми.


    Програма задає потрібну кількість питань, отримуючи на кожен з нихвідповідь. Якщо отриманих відповідей достатньо для визначення об'єкта, системавидає відповідь на екран (Вид тварини).

    3. Опис програми

    3.1 Мова програмування


    При написанні цієї програми використовувався мову Object Pascal ісистема програмування Borland (Delphi (5.0.

    3.2.1 Опис структури програми

    Діаграма модульної структури

    3.2.2 Описи вхідних процедур

    procedure ExitClick (Sender: TObject); - здійснює вихід зпрограми.

    Procedure Button1Click (Sender: TObject); - змінює глобальнузмінну select (множить її на 10 і додає 1), потім оновлює форму. procedure Button2Click (Sender: TObject); procedure Button3Click (Sender: TObject); procedure Button4Click (Sender: TObject); procedure BackClick (Sender: TObject); - перевіряє select. Якщо вонабільше 10, то привласнює їй цілу частину при діленні на 10. Потім викликаєпроцедуру відновлення форми. procedure Button5Click (Sender: TObject); - візуалізує форму пропрограмі. procedure FormCreate (Sender: TObject); - оновлює основну формупри запуску програми. procedure ReLoad (Sender: TObject); - оновлення форми. Зв'язуєфайл з файловою змінною «namebd», відкриває файл для читання, шукає вфайлі рядок, значення якої відповідає значенню в «select» і післяцього виходить з циклу. Потім читає наступний рядок і привласнює їїзначення властивості «caption» (заголовок) рядка «label1». Далі читаєнаступний рядок і привласнює її значення змінної «i» (це кількістькнопок). Потім заходить в цикл на 4 кнопки, в якому визначаєтьсякількість активних кнопок. Під кожну кнопку програма читаєвідповідний рядок, яка присвоюється властивості caption (длявідповідної кнопки). Потім кнопка активізується.

    Якщо номер циклу більше кількості активних кнопок, то деактивуєтьсязайві кнопки.

    Далі відбувається закриття файлу.

    3.3 Специфікація інтерфейсів програми

    По порядку задаються питання, і програма видає меню, що міститькнопки з варіантами відповідей. Користувач натискає на потрібну клавішу звідповіддю, і після чого задається наступне питання і т.д.

    Коли програма готова дати відповідь, в рядку питань з'явитьсярезультат.

    Головне меню містить три важливі команди.

    «Exit» - здійснюється вихід в оболонку Windows.

    «Back» - здійснюється перехід на попередній рівень ( питання)

    «Про програму» - виводить інформацію про дату, місце створення і творцяпрограми.

    Текст програми

    unit Unit1;

    interface

    uses

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

    Dialogs,

    StdCtrls;

    type

    TForm1 = class (TForm)

    Button1: TButton;

    Button2: TButton;

    Button3: TButton;

    Button4: TButton;

    Back: TButton;

    Exit: TButton;

    Label1: TLabel;

    GroupBox1: TGroupBox;

    Button5: TButton; procedure ExitClick (Sender : TObject);// вихід із програми procedure Button1Click (Sender: TObject);// кнопки відповідей procedure Button2Click (Sender: TObject); procedure Button3Click (Sender: TObject); procedure Button4Click (Sender: TObject); procedure BackClick (Sender: TObject);// повернення на попередній рівень procedure Button5Click (Sender: TObject);// виклик форми про програму procedure FormCreate (Sender: TObject);// створення форми програмі private

    (Private declarations) public

    (Public declarations) end;

    var

    Form1: TForm1;

    Select: integer = 1;

    Namebzd: text;

    implementation// блок виконання

    uses Unit2;

    ($ R *. DFM)

    Procedure ReLoad (Sender: TObject);// оновлює зовнішній вигляд форми, нові питання і т.д. var str: string; i, n: integer; begin assignfile (Namebzd, 'bzd.txt'); reset (Namebzd);// відкриває для читання str: =''; while str inttostr (Select) do readln (Namebzd, str);// шукає місце зчитування readln (Namebzd, str);

    Form1.Label1.Caption: = str; readln (Namebzd, str); i: = strtoint (str); for n: = 1 to 4 do// активізується потрібну кількість кнопок з відповідями begin if n

    1: begin

    Form1. Button1.Visible: = true;

    Form1.Button1.Caption: = str; end;

    2: begin

    Form1.Button2.Visible: = true ;

    Form1.Button2.Caption: = str; end;

    3: begin

    Form1.Button3.Visible: = true; < p> Form1.Button3.Caption: = str; end;

    4: begin

    Form1.Button4.Visible: = true;

    Form1.Button4. Caption: = str; end; end; end else case n of

    1: Form1.Button1.Visible: = false;

    2: Form1.Button2.Visible: = false;

    3: Form1.Button3.Visible: = false;

    4: Form1.Button4.Visible: = false; end; end; closefile (Namebzd); < p> end;

    procedure TForm1.ExitClick (Sender: TObject); begin

    Halt (0); end;

    procedure TForm1.Button1Click (Sender: TObject); begin

    Select: = Select * 10 1;

    ReLoad (form1); end;

    procedure TForm1.Button2Click (Sender: TObject) ; begin

    Select: = Select * 10 +2;

    ReLoad (form1); end;

    procedure TForm1.Button3Click (Sender: TObject); begin

    Select: = Select * 10 3;

    ReLoad (form1); end;

    procedure TForm1.Button4Click (Sender: TObject); begin

    Select: = Select * 10 4;

    ReLoad (form1); end;

    procedure TForm1.BackClick (Sender: TObject); begin if Select> 10 then Select: = Select div 10;

    ReLoad (form1); end;

    procedure TForm1.Button5Click (Sender: TObject); begin help.visible: = true; end;

    procedure TForm1.FormCreate (Sender: TObject); begin
    Reload (Form1); end;

    end.

    Результати тестування < p> | Запитання | Відповідь 1 | Відповідь | Відповідь 3 | Відповідь | Бажаний | Дійсний |
    | | | 2 | | 4 | результат | результат |
    | До якого | Комаха | | | | Ви п'єте | Ви п'єте |
    | увазі? | є | | | | кров? | кров? |
    | | | Птиця | | | Ви | Ви домашня? |
    | | | | | | Домашня? | |
    | | | | Ссавці | | Ви | Ви стрибаєте с |
    | | | | Тане | | стрибаєте | гілки на |
    | | | | | | З гілки | гілку? |
    | | | | | | На гілку? | |
    | | | | | Не | Ви | Ви дзижчить? |
    | | | | | Знаю | дзижчить? | |
    | Яке | Дерево | | | | У вас | У вас є? |
    | сімейств | | | | | є? | |
    | о? | | | | | | |
    | | | Трава | | | Ви | Ви заборонені |
    | | | | | | Заборонені | законом? |
    | | | | | | Законом? | |
    | | | | Водорос | | У вас | У вас багато |
    | | | | Ль | | багато | йоду і вас |
    | | | | | | Йоду й | їдять? |
    | | | | | | Вас їдять? | |
    | | | | | Не | У вас | У вас є |
    | | | | | Знаю | є | кора? |
    | | | | | | Кора? | |

    Список літератури

    1. Фаронов В. В., Основи Турбо-Паскаля, «МВТУ-ФЕСТО дидактика», М., 1992.

    2. Макніцкій М. І., Delphi 5.0 для професіоналів, 2000.


         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status