Вы находитесь на странице: 1из 108

-

- 2005

[004.891 + 002.53:004.89] (075.8)


.. . . :
, 2005. 93 .


.
.
.

.
.


-
.
-
, ,

,
220500 654300
.

.., 2005
, 2005

1. ...........................................................................................................3
1.1. ? ............................................................................3
1.2. ...............................................................5
1.3. .................................7
1.4. .............................................12
1.5. ........................................20
1.6. ........................................22
1.7. ........23
1.8. ...........................................28
2. ...................................................................................30
2.1. .............................................32
2.2. ................................................................................35
2.3. ....................................................................................................38
2.4. - .................................41
2.5. ........................................................................44
2.6. .................................................................................47
2.7. ...........................................47
3. ..........................................................................................49
3.1. ..............................49
3.2. .............................................................................54
3.3. .....................................................58
3.4. ..............................................................64
3.5. ..............................................................................70
3.6. ......75
3.7. ...............................................................79
3.8. ...........................................82
4. ...................................................................84
4.1. ..................................................................85
4.2. ..............................................86
4.3. ................................................88
4.4. - ....................................................................93
4.5. ...........................................98
...........................................................................................................100

1.

.
.
. ,
.


.

1.1.

1950
?. , 50
.
,
20- ,
.
.
,
,
. ,

, .
.

, ,
.

[1] .. [2].

,
,
,
.
.
, -,
, ,
3

, ,
[3].
.
, ,
" " ,
. "" ,
. , ,
, ,
, ,
.
. ,
. ,
. 1962 .
. ,
.
,
, .
(
)
, (,
, , ,
, ;

.), , ,
, .
,

()
. ,
.
,

. , IBM,
, 256 ,
4 128 .
100 000 000 .

. 3 IBM-704
220
, 8.5
130 ,

. ,
, .
, ,

.
, , .
, ,
.

,
,
.
,
,
.
70- ,
,
,
, , .

,

.
().

1.2.

, ,
, .
,
,
, -
- .
,

. ,
, , ,
.
,
,
, ,
5

, ,

,
. ,
-.
, ,
,
,
.
, ,
.
,
, , .
, .

, .

,
. ,
, ,
,
, ,
.
,

.
.

[4]:
.
.
,
.
.
.

.
.
,
,
.
("") .
.

6

.
""
"" .

.
.
"" .

, ..

"". ,
,
, .
,
, :
.
.
.
,
"" .

.
.
, ,
.
,
.
.
-
. ""
,

. ,
.

1.3.

.
, ,
. , , ,
, ,
7

.
, , .
,
.
,
. , ,
:
,

, , ,
.
, .
.

,
, .
,
(
,
),
,
.
,
.
,
,
( 1-1. ):
1. ,

, ,
: , .
,
.
().

""
"" .

,
-.
2. ,
, .
.
8


,
.
3. .

.
4. ,
,
,
. ,

,

.

1-1.

,
.


.
: ,
, , ,

.
: .
,
.
:
, ,
.

, .

, , ,
, .


,
. , ,
.
. ,
,

.
, .

( )
[5]. 20
,
20 . ,
400 . ,
.
.
, 50
. ,
, .
.

.

.
,
. ,
,
. ,
.
10

, , ,
, , (
). , , ,
.
:
.
.
.
, ,
.
, ,
.
:
,
. ,
. ,

.
,
, , ,
.
, ,
.

, .

.

.
(, , .)
, ..

, (, )
,
. .

X,
N. , ,
: ,
,
, .
,
.
11

,
, :
,
, ?

,
.

.
, ,
.
.

. , ,

. ,
,

. ,
,
,
.
,
, , ,
, ..

.
,
.

1.4.

, ,
,
. , ,
,
. ,
,
, .
, , ,
.
12


,
.
,
, ( 1-2.
.):
1.
.
,
,
.
,

.
2.
,
.
.

, ,
.
, ,
.
3. ,
.

.
,
,
.
,
,
.
,
.
, ,

.
.

.

13

1-2. .
.
, ,
.

. ,
,
, .
, ,
, , , . ,
, ,
14

,
. ,

, ,
,
.

, ,
.
,
,
.
, ,
:
 -
; MYCIN ,

( 1.6).
 ,
;
1SIS .
 ,
,
( )
; FALCON .
.

; XCON,
VAX 1/780/
, .
, ,
,
,
( ,
). ,
- ,
, ,

. -
,
.
, , ,
.
15

.
,
. ,
,
, , ,
.

.
,
(LISP, Prolog, Python .), (Exsys .)
(Gensym G2).
.
,
, (,
), , ,
,
.

,
.
, ,
, ,
.

. ,

.

.
. ,
.
[4]:
1.
,
. ,
,
(, , ..),
(, , ),
, ( ,
.),
..
2.
, .
16

3.

4.

5.

6.



.

: , , , ,
, , .


, , ,

.
, .. : ,
, ,
, ,
..
.
,
, , ,

.

().
:
( I .),
( ), , ,
, -
, , .,
.

,
.

.
,
-
,
.


.

.
( ,
17

.),
( ,
.), ,
( ).

.
,
.
,
- ,
.

,
, :
 ,
(
).

,
( ).

, , ,
.

:

.
 , ,
..
.

.
,
.
, ,

().

. , ,

,
.

18

,
,

(, .).

.
,
. ,
:
 (
, .);
 ( -,
,
, .);
 (
, , , ,
, ,
, ,

, ,
, ..).
.

, ., ,
.
.
, .
, ,
, / .
,
,
,
,
(, ).
PUFF
.
. , PUFF ,
, LISP
. ,
. ,
.
, PUFF
. PUFF,
19



, .
,
-1
. LISP,
FORTH,
.
:
. ,

, . ,
, ,
, .
,
, ,
, ,
, .
, ,
,
. ,
,
. ,
- , ,
.
, , XCON (R1)
, DEC
VAX. , DEC,

, .. XCON
OPS5,
.
,
.

1.5.

,
, :
, , , , ,
, .
20

,
.
.
, ,
, .
, ,
. ,
, .

,
.
. ,
, ,

. ()
,
,
.

.
,
. ,
, ,
.
,
,
. , ,
. .

,
,
, , .
,
, ,
.
.

, ,
, ,
.
,
, -
,
21

) . ,
,
.

.

1.6.


.
MYCIN ,
,
. MYCIN
, 450 .
,
.
-
, ,
, , .
, ,

.
. ,
,

.
. MYCIN
,
,
,
.
, ,
, .
PUFF .
MICIN,
.
DENDRAL .
, .
1965
22

. DENDRAL
, (,
-),
.
PROSPECTOR ,
.
SIAP
.
, .

.
ANGY .
CRIB .
.
.
REACTOR .
FALCON .
.
XCON ( R1) VAX 1/780/
CADHELP .
SYN . .
WILLARD .
PLANT .
N . .
STRIPS .
1SIS .
MOLGEN . .

.
PROUST .

1.7.




.
. ,
,
,

23


, .

. , ,
.
-. ,
, .
.
, ,
. ,
, ,
. ,
, ,
. ,
,
.
, ,
. ,

,

.
, ,
.
, .
50- .
. . -.
,
. , , .
, ,
, ,
.
.
, , ,
, .

24

1-3. .
( 1-3.
.) ()
(S-), . S
(-), ,
S-,
-. -
(R-) , (v)
.
R- ,
.
,
R-,
. ,
R-,
A-:
n

R j = j + vi j xi ,
i =1

Rj j- R-; xi i- A-; vij


i- A- j- R ; j j- R-.
i- A-:
S

xi = i + yk ,
k =1

25

yk ,
: 0 1. S-
- , S-.
, V1
V2. , R-,
V1, V2.
, R1 R2,
V1, .
R. V1
R-, V2 .

, V1
V2. vi -. ,
,
, .
, -,
R-, , ,
- .
-,
.
, .
, , .

, S- A- A-
R-,
-.
.
, .
, ,
,
.

, ,
.
, .
,

, , , ""
"" " , ".

. ,
26

.

.

. ,
,
, , .
,
.

, , ,
:
.
.
,
, , ,
. ,
- .
,
.
.
,
, .
:
1. M
.
2.
.
,
.
3.
p=

e
, , E
E

.
4.
,
.
5. , .
,

:
.
27

, ,
, . ()
,
.
,
,
.
.
,
, , ,
.

,

. ,
.

.
,

.

1.8.

1. ?
,
?
2. World Wide Web ?
, ,
?
3.
?
4.
?
?

28

5.
?
6.
?
7. ?
?
8. ,
,
?
9. ?
?
10.
?

29

2.


-.
,
,
. ,
.
,
. , ,
,
( , .)
.

. , ,
, ,
,
, .
,
.

-
.
, ,
, .
,
,
, .

.

, .
,
, , .

,

. ,
,
.
30

,
.
, .
, , .
,
:
,
?.
, -
,
. ,
,
. , , :
,
, ,
. ,
.
.
, ,
. , .
:
( ( )) (( ) ( )).
,
.
, ,
.
,
, ,
.
X Y,
,
,
.

,
: ,
- .

,
: ,
.
,
, .
,
31

, .,
.

, .

2.1.

60-
, .

.
(. 2-1. .)
: i i.

i. ,
1,
0.
2-1. .
:
1

M
:
1

1
1

2
0

N
1


, :
, , ..
,
.

. ,
,
.
- - .
32


.
, ,

().

.


, ,
. ,
, .

, .
,
,
,
, ,
.
,
.
, ,
STRIPS (Stanford Research Institute Problem Solver, 1971).

, .

-,
.
-, :
<> ::= < > (<1>, , <n>).
n- .
, ,
. N-
, .
,
, :
at(robot, roomA).
, robot roomA.

, ,
. at(roomA, robot)
,
at(robot, roomA) at(roomA, robot) .

33


, , .
,
:
W1 = { at(robot, roomA), at(box1, roomB), at(box2, roomC) }.
:
WK = { at(box1, room), at(box2, room) }.
, ,
, .

. ,

W1 W2.
at(robot, roomA) , at(robot, room) .
,
, (.
2-2. .),
, .
2-2. .
:
:
:
:

move(X, Y)
{ at(robot, X) }
{ at(robot, X) }
{ at(robot, Y) }

push(X, Y, Z)
{ at(robot, Y), at(X, Y) }
{ at(robot, Y), at(X, Y) }
{ at(robot, Z), at(X, Z) }

, STRIPS
.
,
,
.
,
.

.


, ,

.
. ,
:
at(box1, room),
34

box1 room,
room room
( W1). room
room, ,
, box1
room.
STRIPS

.
. , , at(box1, room)
at(X, Z) push(X, Y,
Z). ( box1, Z
roomA)
:
at(robot, Y), at(box1, Y).
, (
), Y.
, , at(box1, roomB).
Y roomB
:
at(robot, roomB) at(box1, roomB).
()
, W1.
, push W1,
at(robot, roomB) at(robot, roomA).
:
W2 = { at(robot, roomB), at(box1, roomB), at(box2, roomC) }.
,
.
,
, , ,
,
. , ,

, .

2.2.

,
,
35

( ,
,
, , ;
).

,
.

.
.
: .
.
. (.
2-1. .):
, , ,
.
a

e
c
d

.
2-1. .

,
,
.
, ,
:
1. , (" " "", " " "-", ""
"-" ..);
2. (
"", "" );
3. ("", "", "" );
4. (" ", " ", "", "", "" ...);
5. ("", "", " " );
6. ( , ...);
7. ("", "", "") .

:
 - ;
36

 - ;
 .

,
, .
.

(,
) . ,
, " " " " ,

. ,

.

(. 2-2.
.).
: ,
. " "
.
,
, Mercedes
.

2-2. .


37

.

.
.

, - -.
- , -
. ,
( ) .
, ,
,
.
.
, , ,
,
.

2.3.

70-
[6], :
,
,
,
.
. ,
. ,
. , ,
.
,
. , ,

.
.
. , ""
: "
, , , , 6-20 2".
, ,
, . ""
,
, , , .
38

,
,
, .
, .
,
, , ,
. ,
, .
.
.
(. 2-3. "" "" )
, , .
, ,
, ,
.
.

2-3. "" "" .



,
. ,

, , ,
, . ,
,
, .

,
, .
(. 2-3. .):
,
. .
,
.
.
, :
1. (IF-REMOVED).
, .

39

2. (IF-ADDED). ,
.
3. (IF-NEEDED).
, .
2-3. .
:
1
2

( )
:
:
1
1
2
2

N
N

-, ,
.
,
( , ), -
(A-Kind-Of = ).
, ,
, . -

.
.
.

: -,
(, , ); - (, ,
);
-
(,

,
); - (, ,
) .

(. 2-4. .).

40

2-4. .

2.4.

- ()
80- .
:
,
, .
.

,
.
-

, , ,
- .
41


,
-
. ,

- .

,
.
,
()
(). , ,
( )
.
,
, ,
.
-
-
.
, .
, - ,
.
.
,
.
.

.

,
, .
" ". ,
,

, .
, , ,
- .

, .
.
.
, , , , -
42

, , .

.
-
( ) .
,
: ,
, .
, ,
, ,
.
- ,
, .
, ,
, -
. ,

, , ,
, .
,
.

. ,
, "--".
-
. ,

. ,
,
- .
.

,
.
, .

,
( , ) .

43

2.5.

,
, ,
, . .
(1943).
, .
,
,
.
,
.
, , ,

- .
, ,
,
.
: -
, ,
- .
:
1:

,
.

,
, , , :

18
2:
,
.

,
.

.
- ,
, . ,
, ,

.

44

. ,
1 2
(. 2-5. .). ,

.
,
.

2-5. .

:

.

(). ,
()
, , ..

45


, .
, , :
, .
, ,
.

,
,
.
.

.

,
.
, :
1:


,

.

,
-
:

2:

,

,
,

.

, ,

.
.
, , ,
, .

, .
,
. , ,

46

, ,
.
, ,
,
.

2.6.


, ,
.
:
-1, -2, -n
.
() ,
, ()
, ,
.
-1 -2 -n,
.
, ,
.
, ,
;
, .


, .
,
, .
- .

.
2.7.

1. ?
?
,
- ?
47

2. ?
?
3. STRIPS?
4. ?
?
5.
? .
6.
.
7. ? ?
8. ?
-
.
9.
.
10. ?
11. ,
.
12.
?

13.
?
14. ?

? .
15. ?
?

48

3.

.
.
, ,
.
, ,
,

.

.

,
,
.
, , , ,
.
,
, ,
. ,
.
,
.

3.1.

, ,
,
. ,
,
:
?
,
?
, ?

?
?
49


?

(state space search) [7].
,
, ,
.

A G.
( 3-1. ) .

,
.
N

D
E

G
3-1.

-, , ,
,
. , ,
.
, .

,
.
-, ,
.
, .

. 50

,
.
,
, ,
,
.
. ,
.
( ),
,
( 3-2. ).
, .

C
E

F
G

G
3-2.

A
G. . A
, G. , ,
.
() .
,
: .
(depth-first)
, , .
, ,

51


.
(breadth-first)
, .
..

. . ,
,
.
, ,
, . ,

, .
, ,
. ,
.

.
.
.
,
,
.

. ,
, .
.
, ,
.
,
.
:

.
.
(data-driven search),
. ,
, .
, .
(forward chaining).
(goal-directed strategy)
, ,
. , ,
52

. ,
,
.
(backward chaining).
,
, .
,

.

:
1.
.


.
2. ,

.
,
.
3. , ,

.

, .
,
, ,
.

:
1. .
,

.
2. ,

.
DENDRAL,
,
- .

. -
53


.
3.

.
,

.
, , , ,
,
.

3.2.

,
, ,
.
. ,
,
, .
, ,
. ,
,
.

. ,
, .
,
,
.

.
:

,
,
(), (), (), (),
()
.

.
54

,
,
:
1.
;
2.
;
3. , ,
;
4.
;
5. : .
, ,
.

, ..

() .

.

.
.
,

. ,
.
.
, .
.
.
, , ..
.
, ,
.
: , ,
.

.
,
.
.
:
55

3-1. .

, ,
, ,
( ) ( ).
, ,
. :
.
:
, .
, ( )
, :
3-2. .

( )

( )

1 2 , 1
, 2 .
.
,
.
:
3-3. .

( ) ( ) ( )
( ) ( ) ( )
56

( ) ( )
( ) ( )
( ) () ()
( ) () ()
( )


.

. ,
, .
,
.

.
.
, ,
:
( );
;
( );
.
, ,
, .
,
. , ,
,
.
,
.
, .
,
,
,
,
Modus ponens .

:
( ),
( ) (( ( )) ( )),
( ) ,
57

( ) ,
( ),
( ),
( ( )),
( ) (( ) (( ) )),
( ) (( ) ),
.

:
Modus ponens.
:
, .
. (), ,
(), ,
() :
() ().

,
.

3.3.



.

, .

. ,
()
.
. ,
, r ,

.
.


58

, ,
,
. , , ,

:
_(, ). ,
.
,
.
,
( ).
: ,
. ,
,
,
. ,
,
(), , , , ,
, .

-
,
.

, .
, .
.
.
.
,
d = {, }.
_
. _(, d)
. =
, d = ,
( ) _(, )
= .

.

,

. , ,
,
_ (, ).
59

. ,
, .
,
. ,
,
,
_2__10(x, y, z), x, y, z ,
. _2__10
.
.

, , .
.
_ (, , , )
. . ,
,
. (, )
= (, ), , ,
= . ,
.
.
- ,
, .
: , .
.
. ,
, ,

.
.
- ,
.
.
, ,
. .
, ,
.


:
, , ,
. , ,
60

, , , .
, ,
(), :
() () () (),
() () () (),
() () () (),
() () () ().
= = (,
). ,
.
.
, X, Y , x, y
, F(x) :
3-4. "".
X=Y
x=Y
x=y
X = F(Y)
X = F(y)
x = F(Y)
x = F(y)

,
,
,
,
,


.

,
.
. ,
:
, .
, .

:
1. , ,
.
, ,
, .
2. .
.

61

3. ,
,
.
,
:
_() ()
() _() ()
,
.
, .
, ,
,
, ,
.
, , :
(, )
__ (, ).
,
.
.

(),
(). ,
:
() () (),
() () ().
:
Modus Ponens
(1, n, y) (1),, (1), (1) (1) (y) (y),

() (),
() () .

.

.

:
: () () ( | ),
: () () ( | ),
: () () ( | ).

62

() ,
, ( | ) (),
.
,
.
:
,

, .
, ,
.
Modus Ponens,
, ,
. :
,
.
.
,
( | ),
, ,
.
( | ):
1.

.
2.
.
3.
.

. ,
, ,
,
.

. ,
.
, Modus Ponens
, , .. () () (),
.
, ,
, .

63

Modus Ponens,
,
,
.

. ,
,
.
Modus Ponens
.
, , .
,
. ,
.
:
() () ().
:
().
,
,
. Modus
Ponens:
() () (),
(),
( | ),

().

Modus Ponens . -
, .

, .
,
.

3.4.


: . Modus Ponens
.
64

.
:
.
. ,
Modus Ponens,
. , Modus Ponens,
,

,
.

(refutation). 1965
. ,
(resolution refutation).
.
, ,
. ,
, ,
, ,
.
,
. ,
, .

, ,
, , .
,
, .

, .
,
, , .
, ,
. ,

(clause). ,
,
. ,

. ,
.
,

.
, Modus
65

Ponens. ,
.
- ,
.
. ,
,
, , ,
. ,

.


.
, .
, , ,
, . .
.
,
.

3-3. .
:

3-4. .
on(x, y) free(x),
x y, -
x. ,
: A, B, C, D, .
:
1: on(A, C),
66

2: on(C, ),
3: on(D, B),
4: on(B, ),
5: free(A),
6: free(D).

: ( ),
, .

, .

move(x, z).

Modus Ponens. ,
:
1: on(x, y) free(x) move(x, ),
2: on(x, ) free(x) free(z) move(x, z).

.
:
1: on(x, y) free(x) move(x, ) on(x, ),
2: on(x, y) free(x) move(x, ) free(y),
3: on(x, ) free(x) free(z) move(x, z) on(x, z).
,
:
on(, B) on(B, ) on(C, ) on(D, ).
,
Modus
Ponens.
1
on(A, C) free(A) move(A, ),
on(D, B) free(D) move(D, ).
1. ,
Modus Ponens
move(A, ) move(D, ).
.
2. 1 2. 1,
on(A, C), free(), on(D, C),
free(B).
3.
2 , ,
move(A, ).

67

4. 3 on(A, ).
5. , ,
.
, ,
, . , free().
.
. ,
,
:
1: on(x, y) free(x) move(x, ),
2: on(x, ) free(x) free(z) move(x, z).
:
1: on(x, y) free(x) move(x, ) on(x, ),
2: on(x, y) free(x) move(x, ) free(y),
3: on(x, ) free(x) free(z) move(x, z) on(x, z).
,
:
on(, B) on(B, ) on(C, ) on(D, ).
,
.
on(, B) on(,
B). , .
( 3-5.
.). ,
, .
.
, free(B), free(B),
on(, B).
on(D, ), .
.
, ,
. ,
.
:
move(D, ), move(A, ), move(A, B).

68

on(A, B)

on(x, ) free(x) free(z) move(x, z) on(x, z)

on(A, ) free(A) free(B) move(A, B)

on(x, ) free(x) free(z) move(x, z)

on(A, ) free(A) free(B)

free(A)

on(A, ) free(B)

on(x, y) free(x) move(x, ) on(x, )

on(A, y) free(A) move(A, ) free(B)

free(A)

on(A, y) move(A, ) free(B)

on(x, y) free(x) move(x, )

on(A, y) free(A) free(B)

free(A)

on(A, y) free(B)

on(A, C)
free(B)

on(x, y) free(x) move(x, )

free(D)
on(x, y) free(x) move(x, ) free(y)

on(D, y) move(D, )

on(D, y) free(D) free(y)

free(D)

on(D, B)
on(D, y) free(y)
free(B)

3-5.
.
, ,
.
PGOLOG (programmation en logique),
1970-
.

69

3.5.


. , eurisco
. , ,
!, !.

,
.

:
1. -
/ .
,
;
,
.

. ,
( )

.
.

.
2. ,
. (,
)
, ,

.

.
,
.
( ,
)
.

.
,
,

70

.
.

. -,
, .
(rules of thumb), ,
,
.
.

.
,
.
,
, .
,
, (
),
.

(hill climbing).
, ,
( ) .
,
.
, ,
.
1. ,
.
2. ,
.
,
. (1).

. ,
. ,
, , ,
, .

(
).
,
, ,
71

. ,
, .. ,
( ). ,
,
.
,
, .. . ,
.
,

(best-first search). , ,
,
.
,
,
, , . ,
, .
,
, ,
. ,

, ,
.

. ,
:
.
.
.
( ) ,
. .
.
.
. ,
9 8 7 6 = 9! = 362880 .

72

3-6. "".

. .

.
, ,
,
. 12
, 9 7. ,
12 7! = 60480 6 .

3-7.
"-", .

73

:
,
( 3-8. "
" "-".).
,
. ,
, . ,
.

3-8. "
" "-".

(
).
,
( 3-9.
"-".). ,
.

74

3-9.
"-".
,

. ,
, 9,
8 . ,
.
8 9 = 72 , 4
( 5040 ) , 9!.

3.6.


.
, . ,
,
,
. ,
, ,
,
. , PROLOG, ,
.
75

PROLOG
,
. , PROLOG-
.

. , , ,
,
(, )
PROLOG-
LISP.
15 PROLOG-, 1950-,
LISP (List Processing).
, ,

. ,

LISP-,
.
LISP,
, :
,
,
.
1960
.
, LISP
,
.
.
. ,
() ( ),
.
,
LISP.
,
.


, LISP
: , , ,
.
, ,
, .
76

, , ,

.
(designation)
.
,
, - ,
, . , ,
, ,
.
, .
LISP
(symbolic expression), s-.
s- , . S-
(atom), (list).
:
3,1415
x
100
good
*___*
nil
LISP,
. s-,
.
LISP () ,
.
nil (). LISP
.
:
(1 2 3 4 5)
(tom mary john joyce)
(a (b c) (d (e f)))
. ,
,
. ,
:
(on block-1 table)
(likes bill X)
(and (likes george kate) (likes bill merry))
, LISP .
, ,
, :
77

(* 7 9)
(- (+ 3 4) 7)

. LISP-
,
. ,
.
,
, s-. LISP
eval

quote,
s- . ,
(eval (+ 2 3)) 5, (quote
(+ 2 3)) (+ 2 3).
defun.
,

(defun sqr (x) (* x x))


(sqr 5) 25.
, ,
.
, .
- (lambda-calculus)

. -

(lambda (< >) < >).
,
:
(funcall #(lambda (x) (* x x)) 4).
funcall #
- 4. , -
:
(defun sqr (x) (lambda (x) (* x x))).

.
LISP-, , ,
. cond,
:
(cond (<1> <1>)
(<2> <2>)

(<N> <N>))

78

s-,
. cond
.
, ,
nil. ,
cond.
nil, cond nil.
cond
:
(defun abs (x)
(cond ((< x 0) (- x))
((>= x) x)))
,
,
- .
T, LISP
:
(defun abs (x)
(cond ((< x 0) (- x))
(T x)))
LISP
. ,
,
. LISP
, , .

.
.

. LISP

,

.

3.7.


(production rule) .
,
79

.
,
.
. ,
, .
(, )
.
(conflict resolution),
.
. , ,
.

.
,
,

. ,
.
(blackboard)

,
.

.

, ,
-
.
. , .
- , ,

.
. , ,

() .
,
:

, .,
.
.

, ,
80


.
,
( 3-10.
.).
(KSi knowledge sources),
(scheduler).

(blackboard).

3-10. .

,
. ,
,
.
.
.
,
.
(agenda),
.

- .
,
81


: .

KSi ,
. ,

.

, .
,
, ,
. ,

.

3.8.

1.
?
2.
?
3. .

?
4. ?
, ?
5. .
?
6. :
- , , ,
,
,
.
.
.

82

7.
?
8.
?
9.
,
:
p(X, Y) p(a, Z)
p(X, X) p(a, b)
p(X, Y) p(a, a)
q(X) q(a)
10. on(, )
on(B, ) on(C, ) on(D, )
.
11.
?
12. ?
.
13. LISP?
?
14. -? .
15. .
, ?

83

4.


, :


, , ..
,
.
, ,
, .
:
, ,
, ,
. ,
, , ,
.

. .
, , .

, .
,
. , ,
, ,
, .

,

,
.
. ,
, ,
, .. ,
,
.
.
,
.

84

4.1.


MYCIN.
:
1 m,
x 1
n.


, .

. ,
,
, , -
.
,
:
1 x1 m
xm,
1 y1
n yn.

MYCIN (
, ) CF (certainty factor)
-1 1.
.
, .
, , .

: CF () = CF () CF
().
,
MYCIN . X Y
,
,

X + Y XY , X , Y > 0

CF ( X , Y ) =
X + Y + XY , X , Y < 0
( X + Y ) /(1 min( X , Y )), ( X > 0 Y < 0) ( X > 0 Y < 0)

, ,
.

, ,
. ,
85

, .
,
, ,
.
, .

1,
x1 .

m,
xn .

1 m,
x .

,
, P(H | E1, E2) P(H | E1)
P(H | E2).

4.2.


.
.
, d s
, d ,
s. , ,
d,
s.
:
P(d | s ) =

P(d s )
.
P (s )

,
,
d s,
s. ,

,
, :
P(d s ) = P(s ) P(d | s )
P(d s ) = P(d ) P(s | d ) .

:
86

P(s | d ) P (d )
.
P (s )
P(d | s)
d , s
P(s | d). P(d)
d, P(d | s) ,
, d , ,
s .
,
P(d | s) P(s | d).
, ,

P(d s).
. X _Y
, ,
_Z.
P(_Z | _Y),
, ,
_Z _Y.
, , . ,
P(_Z _Y).
,
,
,
. ,
,
_Y _Z. ,
,
_Z _Y.
, P(_Y | _Z)
.
,
.

, mn + m + n , m
, n . ,

, .
,
.
:
P (d | s ) =

87

P(s1 ... s k | d ) P(d )


.
P(s1 ... s k )
(mn)k + m + nk
, k .
,
P(s1sk) P(s1|s2sk)
P(s2|s3sk)P(sk).
,
, ,
si sj P(si sj) = P(si) P(sj). ,
,
.
- . ,
,
,
.
, . ,
, ,

.
P(d | s1 ... s k ) =

4.3.

,
, , ,
, , ,
, , .
, ,
.
, ..
, . ,
.
,
. ,
- .

[8].
,
.

88

,
.
, ,
.
, .

, ,
.

. .
, :
.

,
f, , X
f(X) = , X A.
, ,
150 :
, CAR ( X ) MAX _ SPEED( X ) > 150
GT 150( X ) =
.
,

, CAR(X)
MAX_SPEED(X) :
{ X CAR | MAX_SPEED(X) > 150 }.
,
CAR,
150 .
,
, ,

(. 4-1.
.).

89

4-1. .
, ()
.
,
. f (X)
[0, 1]. , X f(X) = 1,
, f(X) = 0,
.
f(X) .
, .
, fFAST(80) = 0 fFAST(180) = 1,
,
[0, 1] (. 4-2.
"".).

4-2. "".
FAST_CAR ,

,
:

90

fFAST_CAR(X) = fFAST(MAX_SPEED(X)).
, , (,
), :
FAST_CAR = {(Porshe 944, 0,9), (BMW 316, 0,6), (Chevy NIVA, 0,1)}.


. ,
, 0 1,
. ,
,

.,

. , ,
, : F(X) = 1 - F(X),
F ( ).

:
fF G(X) = min(fF(X), fG(X)),
fF G(X) = max(fF(X), fG(X)).
, Porshe 944

FAST_CAR(Porshe-944) PRETENTIOUS_CAR(Porshe-944).
FAST_CAR(Porshe-944) = 0,9, PRETENTIOUS_CAR(Porshe-944)
0,7. ,
:
FAST_CAR(Porshe-944) PRETENTIOUS_CAR(Porshe-944)=
=min(0,9, 0,7)=0,7.

:
FAST_CAR(Porshe-944) FAST_CAR(Porshe-944) = 0,1.
, ,
:
P(FAST_CAR(Porshe-944) | FAST_CAR(Porshe-944)) = 0.
min(0,9, 1
- 0,9) = 0,1. ,
.
.
FAST_CAR(Porshe-944) = 0,9 , 90%
,
, , ,
1. 0,1
, Porshe-944
, - ,
- .

91

,
.
, ,

.
,


.

,
.
, X Y. X Y
,
.

. , 10 , ,
. ,
?
, , ,
, . ,
P(RED) ,
[0, 1].
, , :
fSEVERAL = {(2, 0.1), (3, 0.2), (4, 0.6), (5, 1.0), (6, 1.0), (7, 0.6), (8, 0.3) , (9, 0.1)}.
, 3 10
, fSEVERAL(3) = 0.2. 5, 6
, 1 10
, .
,
.
, .

f
f P ( RED ) = SEVERAL .
10
,
:
{(0.2,0.1), (0.3,0.2), (0.4,0.6), (0.5,1.0), (0.6,1.0), (0.7,0.6), (0.8,0.3) , (0.9,0.1)}.
, , P(RED) = 0.3 20%.
fP(RED) .

,

. ,
92

.
,

fTRUE: [0, 1][0, 1]. , ,
, . ,

TRUE(FAST_CAR(Porsche-944)) = 1.
, ,
Porsche-944 , ,
.

4.4.


,
,
. ,
- ()

(),
. ,
,
.
- :
(belief function)
,
.

,
.
- (Dempster-Shafer) ,

.
,
.

(frame of discernment).
.
,
h1,..., hn, ,
1,..., k,
93

.
. n ,
2n. ,
: 2,

.
. ,
,
. ,
,
. ,
,
{, , }.

m() (bpa basic
probability assignment), 2
[0,1], ,
m() = 0
(m(Ai)) = 1, Ai 2.
m(Ai) ,
, Ai.
, m(A) = 0,4, A 40% (
- A).
( belief function,
l)
. ,
l , 2
[0,1], ,
l () = 0,
l () = 1,
A , l(A) = B A m(B), B
A.

.
A , ,
(doubt function, Dou),
A , , A
Dou (A) = l ( A), A A.
( Pls(A)),


Pls(A) = B A m(B), B A.
94


, , :
Pls(A) = 1 - l( A) = 1 - Dou (A).

,

[l( A), Pls(A)].

,
-.
, 1 ,
[1(), ls(A)].

.

, .
l1 el2 ,

m1 m2. m1m2,
l1el2, ,
.
m() = m1m2()
m1(X)m2(Y), Y ,
.
,
. K
,
, m1m2 () ,
m1m2 (1 - K).
,
m ( X ) m2 (Y )
m1 m2 ( A) = X Y = A 1
,
1 X Y = m1 ( X ) m2 (Y )
,
m ( X ) m2 (Y )
m1 m2 ( A) = X Y = A 1
.
X Y m1 ( X ) m2 (Y )

, 1 2

. ,

.
(1 - K) = 0, m1m2 .
95

, m1 m2 .
l1 el2 (weight of
conflict, Con)
Con (l1, el2) = Log(1 - K)-1.
, ( )

Ai = A i =[1,n ] mi ( Ai )
m( A) =
.
1 Ai = i=[1,n ] mi ( Ai )
,
. , {H, C,
P}. , ,
m({H})
= 0,3
m({H, C})
= 0,2
m({H, C, P})
= 0,5
, , 1.
Bel(A) A
m(B), B A. ,

Bel ({H})
= m({H}) = 0,3
Bel ({H, C})
= m({H}) + m({H, C}) = 0,3 + 0,2 = 0,5
Bel ({H, P})
= m({H}) = 0,3
Bel ({H, C, P}) = m({H}) + m({H, C}) + m({H, C, P}) = 0,3+0,2+0,5
,
Dou ({H})
= Bel ({C, P}) = 0
Dou ({H, C})
= Bel ({P}) = 0
Dou ({H, P})
= Bel ({C}) = 0
Dou ({H, C, P}) = Bel () = 0
, ,
,
Pls ({H})
= 1 - Dou ({H}) = 1
Pls ({H, C})
= 1 - Dou ({H, C}) = 1
Pls ({H, P})
= 1 - Dou ({H, P}) = 1
Pls ({H, C, P}) = 1 - Dou ({H, C, P}) = 1

, ` = {D, D`}
m1({D})
= 0,8
m2({D})
= 0,9
m1({D`}) = 0
m2({D`}) = 0
m1{D, D`}) = 0,2
m2({D, D`}) = 0,1

`

96

m1

{D} : 0,8
{D`} : 0
{D, D`} : 0,2

{D} : 0,9
0,72
0
0,18

m2
{D`} : 0
0
0
0

{D, D`} : 0,1


0,08
0
0,02

K = X Y = m1 ( X ) m2 (Y ) .

, X Y =
m1({D}) m2({D`}) m1({D`}) m2({D}).
,
. , K = (0 + 0) = 0.
m1m2({D}) = (0,72 + 0,08 + 0,18) / (1 0) = 0,98
m1m2({D`}) = (0) / (1 0) = 0
m1m2({D, D`}) = (0,02) / (1 0) = 0,02
, m1 m2
,
D. Log(1) = 0.
, m1 m2 .
-
, .
, ,
. , , 0,9,
, 0,1. ,
, , (
,
). , ,
0,9, ,
0 (
).
Pls() = 1 Bel( ) = 1 0,0 = 1.
, [0,9; 1]. ,
, .
, , ,
. ,
0,8, 0,2. , ,

, , .

,
0,8
0,9 = 0,72. 0,2 0,1 =
0,02. , , ,
97

( ) 1 - 0,02 = 0,98. ,
, ,
[0,98; 1].
, , ,
: , ,
, .
, , . :
, .
, , 0,9 0,2
= 0,18. , , 0,8 0,1 =
0,08. , , 0,2 0,1 =
0,02. ,
0,18 + 0,08 + 0,02 = 0,28 ,
,
0,18 / 0,28 = 0,643; ,
, 0,18 / 0,28 = 0,286.

Pls() = 1 Bel( ) = 1 0,286 = 0,714.
, , ,
[0,643; 0,714].
,
.
.
,
,
, .
, ,
. ,
1 0,8 0,9 = 1 0,72 = 0,28

.

4.5.

1.
.
2.
MYCIN?
?

98

3.
? , ,
?
4.
?
, .
5. ,
?
6. .
.
7. , ,

.
8.
= {A, B, C},
:
m1({A}) = 0,3
m2({A}) = 0,2
m2({A, B}) = 0
m1({A, B}) = 0,4
m1({A, B, C}) = 0,3
m2({A, B, C}) = 0,8
9.
-.
10. ,
.
() ,
,
.

99


1. . , .: , 1983.
2. .., .., .., ..
: . : , 1989.
3. .
. .: , 1989.
4. .. . : ,
2001.
5. . , . : . .:
, 1987.
6 . .. . .: , 1979.
7 . .
. . . : , 2003.
8 . . . .: ,
1982.
9. . . . .
. .: , 1987.
10. . .: , 2001.

100

1945

( 1952.
).

,
,
, , .

. .,
,
.
.
,

.
, 11.
. . 1945 1951
. 11 .
. . . . .
, . . .
,
. ,


.
1945 ,
. . -
.

.
. . . . .
1946 11 .
. , . . , . . ,
. . . . .
<> (
) <>.

<-2>, <>, <-8> .
1951 1954
,
101

, , . .
- ( ). 1954 . . ,

11.

.
. . ,
1948 ,
, . . . . . - ,
. . , . .
. ,
,
.
. . , . . , . . ,
. . , .
11 . , 1952 - 1953
. 1955 - 1957
. .
,
8 . .
1957 11 76 .
()
().
,
... . . .
. .
. ,
30- ,

. 30-
, -1
.
.
-
, . .
,
, . . . . .
. . . . .
102

,
-
-1.
. .
. . . . 1965
.
,
. . .
. . , . . , . .
, . .
. . . ,
, ,
. . . . .
. . .
. . , ,
.
.. 1964 ,
...
..
...
60

.


. .
.

.
.., .. ..
. ,


.
.
1970
.

-
()
103

.
.
:
.
1973 ...
... ..
.
.

- -1-.
.. ..
1974 ,

1959 ... .. ( ...
). ..
, -

.
.. ...
..
,
.. .. ( ).
. ,

.
,
..
, ,

, .).
1976 1996

.. ( 1988 1992
.. ..,
, ).
.. ...
...

104

.
.
-
,
.. ...
:
.., .., .., ..,
.., ...
.., 1988
().
1996 ...
-

( 2205),
0754 ,
-
.
1998
,

.
4000
. 50
, 10
.
, ,
,
.

,
21 .

105


(19451966)

1945
.
17 1945

,

,

,

,
,
.
... .. (
1951
).

" - ", 1956 "" ( 0705).


.,
.., ..


. 0705
(1966
1970)

.

" - ".
..


(1970
1988)
.
0648,
:
,
.., . .. ( 1976 .), .
..

106

(19881997)

( 1997)

( 2205).


, ,

. 2205

.
1988 1992
.., ..

"

".

,
,
, ,
, , ,
0754
" ",

, 1996

...,

..
4023
, 0705 - 2472 .,
0648 (2205) - 1551 . 0648
220600 28 . 50
8 .

107