в областях, пов'язаних з штучним інтелектом. Фрейм дозволяє описувати як абстрактні об'єкти і поняття, так і конкретні об'єкти, що мають точні числові характеристики. Також представляється дуже істотною можливість уявлення у вигляді фреймів ієрархічних об'єктів. Фрейм, як відомо, складається із слотів, що описують конкретні властивості поняття або об'єкту. Для роботи з фреймами була розроблена спеціальна мова, названа нами Intelligent Request Language, або скорочено IRL. Граматика цієї мови представлена нижчим. Вона відноситься до класу Q-грамматик, оскільки містить правила виду N:empty. Граматики цього типу допускають низхідний граматичний розбір. Загальний вид граматики представлений нижчим.
<Опис_поняття>: <Ім’я_поняття> <Предок> <Джерело> <Склад> <Опис_слотів> { <Джерело> <Склад> <Опис_слотов>
<Предок>: :<Им’яПредку> { {
<Джерело>: <Джерело_данних>=<опис_джерела> empty
<Опис_джерела: "<Ім’яФайла>"; "<IP-адрес>";
<Склад>: <Полягає> { <Опис_складу>
<Опис_складу>: <Опис_поняття> <Опис_кількості> <Опис_складу> }
<Опис_кількості>: :<Число_Входжень>; ;
<Опис_складу>: <Імяслота> <Значенієслота> <Опісаніяслотов> }
<Значення_слоту>: <Число> <Одиниця_вимірювання> <Продовження> [<Число>,<границя>] <Одиниця_вимірювання> <Продовження> "<Рядок>" <Продовження> <Опис_Стовпця> <Одиниця_вимірювання> <Продовження> <Ім’я_Слота> <Продовження> <Опис_поняття> <Продовження> ?;
<Одиниця_вимірювання>: (<Ім’я_одиниці>) empty
<Межа>: <Число> > <
<Продовження>: ; | <Значення_слоту>
<Опис_стовпця>: <Стовпець><продолження_опису_стовпця>
<Продолження_опису_стовпця>: :<І’мя_Файла>: <Стовпець>=<Стовпець><Продовження_Опису_Стовпця> empty
За перевагу мови IRL можна вважати можливість опису двох важливих сутей, таких як спадкоємство і включення. Машинна мова може адекватно представляти поняття предметної області з людської точки зору тільки в тому випадку, якщо він відображає ці поняття. Як видно з граматики, в окремому випадку фрейм мови IRL може мати тільки ім'я, і нічого більшого. В цьому випадку він є описом базового поняття, тобто, поняття, що не має предка. Як базові поняття використовуються:
1) Дія (Action).
2) Властивість (Property).
3) Відношення (Relation).
4) Об'єкт (Object).
Деякі з базових понять мають властивості (слоти), інші - ні. До перших належать дія і відношення, до других - властивість і об'єкт. Базова дія має наступні слоти:
Назва.
Об'єкт дії.
Суб'єкт дії.
Час дії.
Місце дії.
Що є на початку дії.
Що є в кінці дії.
Останні два слоти призначено для того, щоб система могла аналізувати дію не тільки з назви, але і по суті. Базове відношення у свою чергу має слоти:
Об'єкт.
Суб'єкт.
При описі конкретної дії або відношення кожен слот отримує відповідне значення. Решта всіх понять успадковується з базових. За умовчанням фрейм-нащадок успадковує всі слоти фрейма-предка, а до них вже може додавати будь-яку кількість своїх слотів. Окрім спадкоємства, граматику мови IRL дозволяє реалізувати таку важливу річ, як поняття включення. Для цього введений спеціальний слот <Полягає>. Об'єкт може складатися з будь-якого числа інших об'єктів, які, у свою чергу, можуть бути складеними. Якщо характеристика об'єкту може бути виражена за допомогою чисел, то мова надає наступні можливості:
Використання одиниць вимірювання по розсуду користувача. Одиниці вимірювання, використовувані користувачем, за допомогою таблиць перетворення приводяться до уніфікованих.
Використання числових діапазонів. Для них передбачений спеціальний синтаксис. Окрім понять і об'єктів система може зберігати окремі факти і правила-продукції, або, кажучи іншими словами, кожен фрейм є свого роду правилом-продукцією. Зупинимося спершу на фактах. Факт будь-якого роду може бути представлений у вигляді фрейма, що описує конкретну дію. Наприклад, якщо ми хочемо занести в базу знань системи той факт, що Колумб відкрив Америку в 1492 році, це виглядатиме таким чином:
Відкрив: Дія{Об'єкт = "Колумб" Суб'єкт = "Америка" Час дії = "1492 рік"}
Фреймів з однаковою назвою в системі може зберігатися скільки завгодно багато. Потрібно лише, щоб вони відрізнялися один від одного. Завдяки унікальній конструкції файлової системи пошук потрібного фрейма відбувається дуже швидко. Звернемося знов до граматики мови IRL. Слот <Джерело> може бути присутнім в будь-якому фреймі, але він не є обов'язковим. Це означає, що якщо дані зберігаються в конкретній базі даних, то ми її вказуємо, а якщо немає – це буде факт загального вигляду, приклад якого і був приведений вище. Слід зупинитися ще на одному важливому моменті. У реальній практиці досить рідко зустрічаються відособлені файли баз даних. Як правило, для збільшення швидкодії систем обробки даних інформація зберігається в безлічі різних файлів, зв'язаних між собою. Мова IRL дозволяє описувати зв'язані бази даних.
ПРЕЛІК ПОСИЛАНЬ НА ДЖЕРЕЛА
1. Представление и использование знаний: Пер. с япон./Под ред. Х. Уэно, М. Исидзука.- М.: Мир, 1989.
2. Долин Г. Что такое ЭС// Компьютер Пресс. – 1992. – №2
3. Сафонов В.О. Экспертные системы - интеллектуальные помощники специалистов.- С.-Пб: Санкт-Петербургская организация общества “Знание” России, 1992.
4. Шалютин С.М. “Искусственный интеллект”. – М.: Мысль, 1985.
5. В. Н. Убейко. Экспертные системы.- М.: МАИ, 1992.
Д. Элти, М. Кумбс. Экспертные системы: концепции и примеры.- М.: Финансы и статистика, 1987.
6. Экспертные системы: концепции и примеры/ Д. Элти, М. Кумбс.-М.: Финансы и статистика, 1987.