Системы искусственного интеллекта. Гудков П.А. - 26 стр.

UptoLike

Составители: 

26
Многоточием представлены другие сообщения интерпретатора, которые в
данном случае опущены.
Как следует из описанных действий, в интерпретаторе CLIPS находятся
два файла. Первый, с именем rep, является базой данных. Второй, с именем
represent.clp, содержит сведения (правила) о том, как эти данные могут быть
использованы. Таким образом, вместе файлы образуют базу знаний, которая
содержит, по крайней мере, два знания. Первоеобщий состав участников
конференции. Его можно посмотреть, не выходя из интерпретатора по
команде (facts). Второе знаниеколичество участников от каждого города.
В рассмотренном примере база знаний состоит из двух программных
модулей. Однако ничто не мешает использовать одну программу,
сохраненную в одном файле. В следующем примере показано, как это
делается. В нем же эвристический механизм представления знаний
используется вместе с процедурным.
Пример 2
Пусть требуется подобрать резистор для участка цепи схемы
электрической принципиальной некоторого радиоэлектронного устройства.
Резистор характеризуется сопротивлением, которое определяется по
измеренным или рассчитанным значениям электрического тока, проходящего
через резистор, и падению напряжения на нем. Программа с именем
resistor.clp, решающая эту задачу, может быть, например, такой
(deffacts resistors; база данных резисторов
(resistor Ra 2)
(resistor Rb 5)
(resistor Rc 7))
(deffunction om; функция om(x,y)
( ?x ?y)
(div ?y ?x))
(defrule input; начальное правило
(initial-fact)
=>
(printout t crlf “Input current value: “)
(bind ?i (read))
Многоточием представлены другие сообщения интерпретатора, которые в
данном случае опущены.
     Как следует из описанных действий, в интерпретаторе CLIPS находятся
два файла. Первый, с именем rep, является базой данных. Второй, с именем
represent.clp, содержит сведения (правила) о том, как эти данные могут быть
использованы. Таким образом, вместе файлы образуют базу знаний, которая
содержит, по крайней мере, два знания. Первое – общий состав участников
конференции. Его можно посмотреть, не выходя из интерпретатора по
команде (facts). Второе знание – количество участников от каждого города.
     В рассмотренном примере база знаний состоит из двух программных
модулей.    Однако   ничто    не   мешает   использовать   одну программу,
сохраненную в одном файле. В следующем примере показано, как это
делается. В нем же эвристический механизм представления знаний
используется вместе с процедурным.

                                   Пример 2

     Пусть требуется подобрать резистор для участка цепи схемы
электрической принципиальной некоторого радиоэлектронного устройства.
Резистор    характеризуется   сопротивлением,    которое   определяется     по
измеренным или рассчитанным значениям электрического тока, проходящего
через резистор, и падению напряжения на нем. Программа с именем
resistor.clp, решающая эту задачу, может быть, например, такой
(deffacts   resistors; база данных резисторов
(resistor   Ra 2)
(resistor   Rb 5)
(resistor   Rc 7))

(deffunction om; функция om(x,y)
( ?x ?y)
(div ?y ?x))

(defrule input; начальное правило
(initial-fact)
=>
(printout t crlf “Input current value: “)
(bind ?i (read))

                                                                            26