Вирази (3), (4) є процедурними. Вони задають певну послiдовнiсть виконання операцiй. Послiдовнiсть виконання операцiй виразу (3) є такою:
1) виконується операцiя складення i;
2) пiдноситься до квадрату ;
3) результат кроку 2 вiднiмається вiд результату кроку 1;
4) змiннiй присвоюється результат операцiї вiднiмання.
Пiд час обробки виразу (4) спочатку виконується операцiя над змiнними i, потiм операцiя над , , i нарештi операцiя над значеннями “iстина” або “хибнiсть”, що отриманi в результатi операцiй (1), (2). Результатом (4) також є значення “iстина” або “хибнiсть”.
4.3. Квантори i обмежувачi
В мовiSITPLAN-2 з метою розширення виразових можливостей запроваджуються додатковi засоби типу кванторiв i обмежувачiв, якi служать для указання мiри, наскiльки значення змiнних повинно бути iстиним, щоб висловлювання вцiлому стало iстиним.
Приклади виразiв з кванторами
УВЕСЬ Х1 Є Х2: ЦВЯХ Х1 З МАТЕРІАЛУ Х2 ТЕРМОСТІЙКИЙ.
Цей вираз означає, що серед цвяхiв є хоча б один з термостiйкого матерiалу. Якщо квантор в виразiє вiдсутнiм, то за умовчанням змiннi вважаються охопленими квантором iснування.
До складу запроваджуваних обмежучив входить обмежувач циклу, позначений службовим словом ЦИКЛ. Вiн використовується пiд час опису ситуацiй i операторiв з великою кiлькiстю об'єктiв, якi знаходяться в одному i тому ж вiдношеннi.
Приклад
ЦИКЛ 100 Х1: ЦВЯХ Х1 У ЯЩИКУ.
Цей вираз може бути iнтерпретован таким чином: “У ящику знаходиться сто цвяхiв”. Як видно з приведеного прикладу в виразах з циклом може бути явно вказано кiлькiсть повторiв циклу, якщо ж вона не вказана, то семантика обмежувача циклу спiвпадає з семантикою квантора спiльностi, тобто вираз
ЦИКЛ Х1: ЦВЯХ У ЯШИКУ
є еквiвалентний виразу
УВЕСЬ Х1: ЦВЯХ У ЯШИКУ.
Обмежувачi максимуму та мiнiмуму позначуються, вiдповiдно, службовими словами MAX та MINi означають, що вирази з змiнними, охопленими цими обмежувачами, єiстиними при максимальних або мiнiмальних значеннях змiнних.
Наприклад, вираз
MAX Х1:ІНСТУЛЬТ Х2 З ЙМОВІРНІСТЮ Х1
буде iстиним при максимальних значеннях змiнної Х1.
Обмежувач старту (СТАРТ) служить для завдання iнтервалу часу, в продовж якого досягається iстиннiсть охоплених ним виразiв.
Часовiiнтервали обозначемо парами , де - нижня, а - верхня межа часового iнтервалу.
Щоб подати рiзнi часовiiнтервали, використують виразиє семантика яких приведена в табл. 1.
Таблиця 1
Вирази обмежувача | Часовий iнтервал |
СТАРТ В | |
СТАРТ ПЕРЕД | |
СТАРТ ПІСЛЯ | |
СТАРТ МІЖ |
Обмежувач тривалостi (ТРИВ) служить для указання тривалостi дiй або подiй. Вираз обмежувача задається змiнною, константою або функцiєю:
СТАРТ В 7_0_0 ТРИВ 10 с: ДЗВОНИТЬ БУДИЛЬНИК.
ТРИВ Х1 с: ПЕРЕДАЧА ДАНИХ НА ЗЕМЛЮ.
ТРИВ К-Y/2: ПЕРЕМОТКА СТРІЧКИ.
Обмежувач достовiрностi (ДОСТ) служить для указання ступеню iстинностi наступного за ним виразу. Ступiнь iстинностi виразiв задається числовими значеннями у iнтервалi вiд 0 до 1:
ДОСТ 0.7:ІНСУЛЬТ ІШЕМІЧНИЙ ПАЦІЄНТА ІВАНОВА В.В.
4.4. Складовi вирази
Для бiльшої наочностii компактностi в мовiSITPLAN-2 використовуються конструкцiї типу фреймiв. Це складовий вираз, що мiстить iменувальну частину виразу, яка iдентифiкує описове поняття, i набiр виразiв, якi вiдображують властивостi, вiдношення та складовi частини, котрi безпосередньо входять до структури об'єкта, що описується.
Приклади
1. Складовий вираз, що використовується для опису складових об'єктiв:
КОМНАТА К1: ДОВЖИНА 8 М;
ШИРИНА 10 М;
ДВЕРІ А З'ЄДНУЮТЬ КІМНАТУ_К1 З КІМНАТОЮ_К2;
СТІЛ 1 ПОРЯД З СТОЛОМ 2.
2. Складовий вираз, що використовується для завдання параметрiв стратегiї планування:
ПАРАМЕТРИ: СТРАТЕГІЯ Х1;
КОЕФІЦІЄНТ ЦР Х3;
ЛІМІТИ ЧАСУ Х3;
ПРЯМЕ РОЗГАЛУЖЕННЯ Х4;
ЗВОРОТНЄ РОЗГАЛУЖЕННЯ Х3.
В мовiSITPLAN-2 прийнятi такi узгодження вiдносно описiв упорядкованих i неупорядкованих спискiв виразiв:
· упорядкованi списки виразiв, в яких мається на увазi зв'язка типу &, беруться в круглi дужки ( );
· неупорядкованi списки виразiв, в яких мається на увазi зв'язка типу &, беруться в хвилястi дужки { };
· упорядкованi списки виразiв, в яких мається на увазi зв'язка типу , беруться в кутовi дужки ;
· неупорядкованi списки виразiв, в яких мається на увазi зв'язка типу , беруться в квадратнi дужки [ ].
Якщо списки виразiв не взятi в дужки, мається на увазi зв'язка типу &.
5. Опис знань про проблемну область
Опис знань про проблемну область мiстить такi компоненти: опис понять, що визначають об'єкти проблемної областi, та вiдношень мiж об'єктами, а також опис операторiв та демонiв, що моделюють дiї, подiї та правила логiчного виводу.
Базовi поняття i вiдношення служать для узгоджування виразiв вихiдної ситуацiїi цiльової умови з виразами опису операторiв.
Список базових понять складається з найменувань класiв об'єктiв. Для цього можуть бути використанi слова природної мови:
БПОН СТІЛ, СТІЛЕЦЬ, ШАФА, ...
BCON CMT, PLATE, GLASS, ...
Елементи списку базових вiдношень мають структуру описових виразiв, семантика яких визначається класом задач:
БВІДН Х1 НА Х2;
Х1 ПОРЯД З Х2;
ВИСОТА Х1 Х3.
Описовi вирази, що використуються для опису вихiдних i цiльових ситуацiй, складаються з елементiв списку базових вiдношень шляхом виконання операцiй пiдстановки вiдповiдних значень на мiста змiнних. Значеннями змiнних можуть бути слова, пари, n-ки, числа чи описовi вирази, якi, в свою чергу, полученi з базових вiдношень шляхом виконання операцiй пiдстановки.
Опис складеного поняття являє собою складовий вираз, iменувальна частина якого є найменуванням поняття, а слiдуючий за нею список простих виразiв - визначенням цього поняття в термiнах його компонентiв, тобто понять i вiдношень бiльш низького рiвня, аж до базових, наприклад:
СПОН МЕБЛІ:{ СТІЛ, СТІЛЕЦЬ, ... ШАФА };
МОЛ-Х1: ТИП Х2;
КІЛЬКІСТЬ АТОМІВ Х3;
КІЛЬКІСТЬ КІЛЕЦЬ Х4;
ВКЛЮЧАЄ Х5.
Іменувальна частина виразу в описi складового вiдношення є вiдношенням, що визначається, а слiдуючий за нею список простих виразiв - його визначенням в термiнах вiдношень бiльш низького рiвня, аж до базових, наприклад:
СВІДН ПЕРЕНЕСТИ Х1 З Х2 НА Х3:
/ПІДІЙТИ ДО Х2, ВЗЯТИ Х1, ПІДІЙТИ ДО Х3,
ПОСТАВИТИ Х1 НА Х3/.
5.1. Опис операторiв та демонiв
Синтаксис
опис оператора: { тип оператора } {iменувальна частина }:
{ список продукцiйних правил }:
[ ДЕ список значень змiнних ]
опис демона: { тип демона } {iменувальна частина }
{ список продукцiйних правил }
[ ДЕ список значень змiнних ]
тип оператора: ОЛ | OL | ОД | OA
тип демона: ДЛ | DL | ДП | DE
список продукцiйних правил:
{ опис основного правила }
[ опис корекцiйного правила ] ...
опис основного правила:
ЯКЩО [ список виразiв ] [ / список виразiв / ]
ТО [ список виразiв ]
опис корекцiйного правила:
'ЯКЩО [ список виразiв ] [ / список виразiв / ]
'ТО [ список виразiв ]
список значень змiнних:
{ змiнна первинний рядок , ... } ; ...
пара
Семантика
Пiд час опису знань про проблемну область видiляються зв'язки продукцiйних правил, що називаються операторами i демонами. Оператор моделює дiю або правило логiчного виводу, вибiр яких в процесi планування рiшень визначається тiєю чи iншою стратегiєю планування. Демони моделюють подiї або правила логiчного виводу, вибiр яких визначається тiльки умовою їх застосування i не залежить вiд стратегiї планування.
Використання демонiв дозволяє моделювати процеси випадкового пошуку. Розлiчають такi типи операторiв i демонiв:
· оператор типу дiї (ОД або OA);
· оператор типу правила логiчного виводу (ОЛ або OL);
· демон типу подiї (ДП або DE);
· демон типу правила логiчного виводу (ДЛ або DL).
Продукцiйнi правила, що входять до операторiв i демонiв, роздiляються на основнi та корекцiйнi.
Основнi продукцiйнi правила виконуються у всiх ситуацiях, що вiдповiдають умовам застосування оператора чи демона. Корекцiйнi правила продукцiй виконуються в залежностi вiд деяких додаткових умов, якi не є умовами застосування оператора чи демона. Вони дозволяють подолати труднощi, зв'язанi з проблемою меж пiд час рiшення задач в сильно зв'язаних середовищах.
Кожне продукцiйне правило складається з лiвоїi правої частини. Лiва частина продукцiйного правила є сукупнiсть елементарних умов (вхiдних виразiв), необхiдних при виконаннi цього правила.
Порядок перевiрки елементарних умов лiвої частини визначається типом i вкладеннiстю дужок, в яких мiстяться вхiднi вирази; за допомогою того чи iншого розмiщення дужок можна задавати елементи стратегiї планування рiшень.
Рiзнi варианти пiдстановки значень змiнних вiдповiдають рiзним вариантам застосування продукцiйного правила.
За допомогою виразiв правої частини продукцiйного правила (його виходiв) формуються описи вихiдних ситуацiй. Вирази, що дописуються в описи вхiдних ситуацiй, визначаються через декларативнi описовi вирази. Інколи для конкретизацiї змiнних, що входять в вихiднi описовi вирази, потребується запуск однiєї або кiлькох вбудованих процедур, що входять в процедурнi вихiднi вирази.
В косi дужки беруться вирази лiвої частини продукцiйного правила, якi будуть вилученi з опису вхiдної ситуацiї пiсля його виконання.