Илюстриран урок за въведение в експертните системи › Системи, базирани на знания ›

Канонични системи

В областта на изкуствения интелект и в съвременната психология твърдението, че рационалното поведение се управлява от правила, вече се е превърнало в аксиома. Дори в „големия“ свят хората са склонни да свързват нивото на интелигентност със спазването на правилата и ние все повече обръщаме внимание на степента, в която се спазват правилата, когато обясняваме интелигентността.

Вземете например начина на говорене на естествен език. Всички се държим така, сякаш знаем всички правила на езика, който говорим, като например английския, въпреки че, разбира се, не знаем всичко. (Всеки, който напише тези правила, може да очаква ослепителна кариера в лингвистиката.)

Основното е, че интелигентното поведение, като правилната реч, ни изглежда като процес, управляван от определени правила, дори и да не можем да ги формулираме точно. При изкуствения интелект правилата играят още по-ясна роля при оформянето на това, което наричаме интелигентно поведение. Казваме, че нещо (агентът) се държи по този начин, защото има представяне на правилата, свързани с формирането на поведенчески акт, който след това твърди, че е разумен.

Наборът от генеративни правила е формализъм, който вече е бил използван в теорията на автоматите, формалната граматика, развитието на езиците за програмиране, преди да бъде използван при моделирането на психофизиологичната активност [Newell and Simon, 1972] и експертните системи [Buchanan и Feigenbaum, 1978]. В литературата за експертни системи те понякога се наричат ​​правила "условие-действие" или "ситуация-действие". Това се дължи на факта, че такиваправилата обикновено се използват за представяне на емпирични асоциации между данните, представени на системата, и действията, които системата трябва да предприеме в отговор.

В експертните системи такива правила обикновено указват какво да се прави със символна структура, представяща текущото състояние на проблема, за да се премине към представяне, което е по-близо до решението.

Деривациите всъщност са граматически правила за манипулиране на символни низове и затова понякога се наричат ​​правила за пренаписване. Пост изучава свойствата на системи от правила, базирани на поколения, които той наричаканонични системи [Post, 1943].Каноничната система е вид формална система, базирана на следните компоненти:

  • азбука A, от чиито знаци се образуват низове;
  • някакъв набор от низове, които се считат зааксиоми,
  • набори отспауни във формата:

  • (I) всяко ai и bi; има фиксиран низ;
  • (ii) a1 и am често са нула;
  • (III) някои или всички от ai или bi могат да бъдат нула;
  • (IV) всеки $i е променлив низ, който може да бъде и нула;
  • (V) всеки $i се заменя с конкретен $'i.

Определението за канонична система може би ще стане по-ясно, ако се даде пример. НекаA е азбукатаи нека аксиомите са:

След това следващите поколения ще генерират всички палиндроми въз основа на тази азбука, като за отправна точка ще вземат наличните аксиоми:

Освен това в този случай може да се проследи прилагането на правила, които трябва да доведат до растежа на определен палиндром. Например, за да генериратеbacab, трябваприложете P1 към аксиома c и след това P2 към резултата. С други думи, приемайкис като аксиома, можем да изведем от нея теорематаaca и да я добавим към съществуващите аксиоми. След това отaca можете да извлечете нова теоремаbacab. Обърнете внимание, че тази последователност от поколения няма комутативното свойство, т.е. ако приложите същите правила, но в различен ред, получавате напълно различен резултат. Например, ако към аксиоматаc първо приложим правилото P2, а след товаP1, тогава получавамеabcba.

На пръв поглед каноничните системи са доста тривиални. Всичко, което може да се направи в рамките на такава система, е да се преобразува един символен низ в друг. Но ако се замислите, всяко логическо или математическо смятане в крайна сметка се свежда до набор от правила за манипулиране на символи. Пренебрегваме това, защото често се интересуваме от специфичното значение на логическите и математическите символи, което не може да се каже за низове катоabcba.

Това означава, че всяка формална система може да се счита за канонична (вижте например [Minsky, 1972, глава 12J). Всъщност към това трябва да се добави едно тривиално предупреждение, че такава система все още може да се нуждае от допълнителна азбука, чиито букви ще се използват като препинателни знаци в сложни доказателства. По този начин, за да тествате доказателство във всяка формална система или да изпълнитекоято и да е ефективна процедура, е достатъчно да можете да прочетете низ от знаци, да го разделите на неговите компоненти и да го пренаредите (може да се наложи да добавите още знаци или да премахнете съществуващите в оригиналния низ).

Значението на поколенията

Нека правилото за генериране е дадено във формата:

В него a1$1... am$m често се наричапредходното (предшестващо ) на правилото и b,$'1… bn$'nпоследствието (последствие ) на правилото, по аналогия с условния израз на пропозиционалната логика (виж Глава 8). Условният оператор обикновено се записва като: p U q1, което означава "ако p, тогава q", например "ако паднеш в реката, ще бъдеш мокър".

Въпреки това, знакът „U“ често се заменя със знака „ ›“, което едва ли си струва да се прави, тъй като последният има по-императивно или разрешително значение. По правило той говори не толкова за логичното следствие, а за това какво трябва да се направи или какво може да се направи.

Правило във формата X> Y казва, че е възможно да се напише, генерира или генерира последващо Y при даден инцидент X. То не казва, че множеството X, Y е неразривно свързана последователност, както в примера с плуване в реката. Правилата за пренаписване в теоретичната лингвистика се наричат ​​"генерации", защото правилото за формата:

Има следното тълкуване: "един от начините да образувате изречение S е да вземете съществително (NP) и да добавите глагол (VP) към него."