Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
metod_SHI.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2.11 Mб
Скачать

9.5 Зміст звіту з лабораторної роботи

1. Вказати номер, тему й мету лабораторної роботи.

2. Зобразити FIS-структури для розроблених систем за різними алгоритмами.

3. Навести перелік правил.

4. Відобразити отримані результати – перехідні процеси, поверхні відгуку.

5. Зробити порівняльні висновки стосовно роботи системи з різним настройками.

9.6 Контрольні питання

1. Наведіть алгоритми нечіткого виведення, які ви знаєте.

2. Перелічіть методи дефазифікації.

3. Який метод дефазифікації використовується в алгоритмі Мамдані?

4. Як створити нечітку систему за алгоритмом Сугено?

5. Що таке функції належності? Які типи функцій належності ви знаєте?

6. Як задаються функції належності для різних систем?

Список використаних джерел

1. Глибовець М. М. Штучний інтелект. Підручник для студентів вищих навчальних закладів, які навчаються за спеціальностями "Комп'ютерні науки" та "Прикладна математика" / М. М. Глибовець, О. В. Олецький. – Київ : Вид. дім "КМ Академія", 2002. – 366 с.

2. Глибовець М. М. Програмування в Пролозі. Навчальний посібник / М. М. Глибовець, І. В. Кравченко, О. В. Олецький, В. М. Терещенко. – Київ : ВЦ "Київський університет", 1998. – 110 с.

3. Тейз А. Логический подход к искусственному интеллекту: от классической логики к логическому программированию / А. Тейз, П. Грибомон, Ж. Луи и др. – Москва : Мир, 1990. – 432 с.

4. Джексон П. Введение в экспертные системы / П. Джексон. – Москва : Изд. дом "Вильямс", 2001. – 624 с.

5. Гаврилова Т.А. Базы знаний интеллектуальных систем / Т.А. Гаврилова, В.Ф. Хорошевский. – СанктПетебург : Питер, 2000. – 384 с.

6. Адаменко А. Логическое программирование и Visual Prolog / А. Адаменко, А. Кучуков. – СанктПетебург : БХВ-Петербург, 2003. – 992 с.

7. Марселлус Д. Программирование экспертных систем на Прологе / Д. Марселлус. – Москва : Финансы и статистика, 1994. – 256 с.

8. Братко И. Программирование на языке Пролог для систем искусственного интеллекта / И. Братко. – Москва : Мир, 1990. – 560 с.

9. Лорьер Ж.-Л. Системы искусственного интелекта / Ж.-Л. Лорьер. – Москва : Мир, 1991. – 568 с.

10. Маллас Дж. Реляционный язык Пролог и его применение / Дж. Маллас. – Москва : Наука, 1990. – 464 с.

11. Поспелов Д. А. Нечеткие множества в моделях управления и искусственного интеллекта / Д. А. Поспелов. – Москва : Наука, 1986. – 312 с.

12. Дьяконов В. П. MATLAB 6.5 SP1/7/7 SP2+ Simulink 5/6. Инструменты искусственного интеллекта и биоинформатики / В. П. Дьяконов, В. В. Круглов. – Москва : СОЛОН-ПРЕСС, 2006. – 456 с.

Додаток а Службові предикати Пролога для роботи з файлами

Вбудовані предикати звільняють програміста від необхідності самому визначати деякі стандартні дії. Для кожного предиката зазначені типи даних і припустимі сполучення їхніх типів:

i – параметр має визначене значення при звертанні до даного предиката;

o – параметр одержує значення при будь-якому звертанні до предиката;

io – тип може бути i або о незалежно від поточних типів інших параметрів

Наприклад, якщо предикат має два аргументи, то можливі такі шаблони – (і,і), (o,o), (і,o), (o,і), або більш коротко – (io,io).

Пролог визначає поточний вхідний потік, з якого здійснюється читання усіх вводимих даних, і поточний вихідний потік, у який здійснюється запис даних. Звичайно з поточним вихідним потоком зв'язується дисплей, а з поточним вхідним потоком – клавіатура.

Однак у ряді випадків використовуються операції читання або запису даних у файли. Для того щоб одержати доступ до файлу, він повинний бути відкритий. Файл може бути відкритий для читання, для запису, для додавання інформації або для модифікації.

Коли файл відкритий, Пролог зв'язує символічне (Символ_ім’я_файлу) ім'я файлу з дійсним ім'ям файлу (Ім’я_файлу), що використовується в операційній системі. Символічне ім'я файлу повинне бути атомом і повинне бути описане в програмі в розділі domains як стандартний тип file. У програмі тип file може зустрічатися в розділі domains один раз.

openread(Символ_ім’я_файлу, Ім’я_файлу), (file, string) – (i,i). Відкриває файл для читання.

openwrite(Символ_ім’я_файлу, Ім’я_файлу), (file, string) – (i,i). Відкриває файл для запису. Якщо такий файл вже існував у каталозі, то вміст його знищується.

ореnаppend(Символ_ім’я_файлу, Ім’я_файлу), (file, string) – (i,i). Відкриває дисковий файл для додавання інформації.

ореnmodify(Символ_ім’я_файлу, Ім’я_файлу), (file, string) – (i,i). Відкриває файл для читання і запису.

readdevice(Символ_ім’я_файлу) (file) – (io). Переключає поточний вхідний потік даних на файл із зазначеним ім'ям. Аргумент повинний бути зв'язаним і відкритий для читання, інакше відбувається зв'язування Символ_ім’я_файлу з ім'ям активного читаючого пристрою.

writedevice(Символ_ім’я_файлу) (file) – (io). Визначає поточний вхідний потік за умови, що зазначений файл відкритий або для запису, або для додавання інформації.

closefile(Символ_ім’я_файлу) (file) – (i). Предикат closefile(...) закриває файл.

filepos(Символ_ім’я_файлу, Позиція, Режим) (file, real, integer) – (i,io,i). Змінити місце читання або запису в зазначеному файлі (при умові, що файл відкритий для читання і запису). Параметр Режим вказує позицію місця читання/запису відносно: початку файлу (0), початкової позиції (1) чи кінця файлу (2).

eof(Символ_ім’я_файлу) (file) – (i). Перевіряє чи є поточна позиція в процесі читання кінцем файлу.

existfile(Ім’я_файлу), (string) – (i). Перевіряє наявність файлу в поточному каталозі. Використовується перед спробою відкрити файл.

deletefile(Ім’я_файлу), (string) – (i). Знищує файл з ім'ям Ім’я_файлу з дискового каталогу.

renamefile(Старе_ім’я, Нове_ім’я), (string, string) – (i,i). Перейменовує файл, якщо Нове_ім’я відсутнє в каталозі та обидва імені коректні.

disk(Шлях_до_каталогу) (string) – (io). Встановлює поточний пристрій і каталог.

Стандартні імена пристроїв для readdevice і writedevice наступні: printer, screen, keyboard.

Для запису у файл необхідно змінити поточний вихідний потік даних так, щоб ним був файл, у який будуть записуватися дані. Позиція у файлі, у якій матиме місце читання або запис, може керуватися предикатом filepos.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]