30
!"#$%&’()#*+# ,*’*+- .#/0+1 4 23"420#($+."5 dimour.spb.ru [email protected] Часть III 6"#-27 + 88!

Экспертные системы: лекция №4

Embed Size (px)

DESCRIPTION

Представление знаний (часть 3): Фреймы и ООП

Citation preview

Page 1: Экспертные системы: лекция №4

!"#$%&'()#*+# ,*'*+-

.#/0+1 4

23"420#($+."5 [email protected]

Часть III

6"#-27 + 88!

Page 2: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

9'"(+* .+ 9+*%/+-:(&4" ;#"(7< "'=4& ;4 *#-"4**72 %#&12, ;#"%#;&"4*'2 (1954).

>,4="#&'&#)? @"'5+A#%/4@4 $+%;)#1 (1963)

:(&4" 2*4@4A+%)#**7< '=4&' ;4 >> + 5+)4%45++.

8=)'$'&#)? ;"#2++ B?C"+*@' + ;"#2++ D;4*++.

2

http://web.media.mit.edu/~minsky/

Page 3: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

6"#-27 (frames)

E;#"(7# &#"2+* «5"#-2» =7) ;"#$)4F#* 9+*%/+2 (Minsky) ( 1974 /'/ "#,3)?&'& +%%)#$4('*+- ;4 (4%;"+1&+C &"#<2#"*7< %0#*.

8=4,*'A'#& 4;"#$#)#**72 4="',42 %&"3/&3"+"4('**7# $'**7#, ;"#$%&'()1CG+# *#/+- '=%&"'/&*7- 4="', +)+ %&#"#4&+;.

E 4%*4(# &#4"++ 9+*%/4@4 )#F'& +%%)#$4('*+1 ;4 (4%;"+1&+C + ,';42+*'*+C %&#"#4&+;*7< %+&3'0+- + ;"4&4&+;*423 %"'(*#*+C 4="',4( + @#H&')?&-;%+<4)4@++.

3

Page 4: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

8;"#$#)#*+# 9+*%/4@4«!"#$% — &'( )'"*+'*", -,../0, 1"#-)',23456,4 )'#"#('71.*5 )7'*,875, 2"(-# .,0(9-#.74 2.*'"7 .#+('("(:( "(-, 973($ +(%.,'/ 737 );(", ., 2#<#"7.+* 1( 1(2(-* -.4 "(9-#.74 "#;#.+,. = +,9-(%* >"#$%* 1"7)(#-7.4#')4 .#)+(3?+( 27-(2 7.>("%,877. @,)'? &'($ 7.>("%,877 — ( '(%, +,+ 7)1(3?A(2,'? >"#$%. @,)'? ( '(%, <#:( %(9.( (97-,'? -,3##. @,)'? ( '(%, <'( )3#-*#' -#3,'?, #)37 &'7 (97-,.74 .# 1(-'2#"-4')4».

4

I&' %&"3/&3"' ;"#$%&'()1#& %4=4- *#/+- H'=)4*, +,()#/'#27- +, ;'21&+ ;"+ (4,*+/*4(#*++ *4(4- +)+ +,2#*#*++ %4$#"F'*+1 %3G#%&(3CG#- %+&3'0++, /4&4"7- 24F#& =7&? '$';&+"4('* ;4$ %)4F+(H3C%1 "#')?*4%&?.

Page 5: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

!"#$%&'()#*+# %&#"#4&+;*7< %+&3'0+-

8$*+2 +, /)CA#(7< %(4-%&( 1,7/' ;"#$%&'()#*+1 ,*'*+- 1()1#&%1 #@4 (7"',+&#)?*4%&? ;"+ 4;+%'*++ &+;4(7< %+&3'0+-.

I/%;#"+2#*&')?*7# +%%)#$4('*+1 ;4/',')+, A&4 ( ;"40#%%# ,';42+*'*+1 )C$+ 4"@'*+,3C& ,*'*+1 ( %&"3/&3"7, %44&(#&%&(3CG+# &+;4(72 %+&3'0+12.

J#)4(#/ =#, &"3$' *'<4$+& (#"*3C +*&#";"#&'0+C (7%/',7('*+1 ( "'2/'< %3G#%&(3CG#@4 /4*&#/%&'.

E ;"40#%%# A&#*+1 A#)4(#/ 24$+5+0+"3#& %&"3/&3"3 ,*'*+1, ;4$%&"'+('1%?, &'/+2 4="',42, ;4$ /4*&#/%& ;4)3A'#24- +*54"2'0++.

5

Page 6: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

E4%;"+1&+# &#/%&'

K%)+ A+&'#27- &#/%& ;)4<4 %&"3/&3"+"4('*, 4$*+ + &# F# ;"#$)4F#*+1 %4$#"F'& *# %(1,'**7# ;4 %27%)3 5"'@2#*&7, (4%;"+1&+# ,*'A+&#)?*4 3%)4F*1#&%1, &'/ /'/ %&'*4(+&?%1 *#(4,24F*4 =7%&"4 3%&'*4(+&?, / /'/4- %&"3/&3"# ,*'*+1 %)#$3#& 4&*#%&+ &3 +)+ +*3C 5"',3.

E &4 F# ("#21 =4)?H+*%&(4 )C$#- =#, &"3$' (4%;"+*+2'#& <4"4H4 %&"3/&3"+"4('**7- &#/%&, $'F# #%)+ L&4& &#/%& %4$#"F+& =4)?H4# /4)+A#%&(4 4;#A'&4/.

6

Page 7: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

!"+2#" (4%;"+1&+1 &#/%&'

7

По рзелульаттам илссеовадний одонго анлигйсокго унвиертисета, не иеемт занчнеия, в кокам пряокде рсапожолены бкувы в солве. Галвоне, чотбы преавя и пслоендяя бквуы блыи на мсете. Осатьлыне бкувы мгоут селдовтаь в плоонм бсепордяке, все-рвано ткест чтаитсея без побрелм. Пичрионй эгото ялвятеся то, что мы не чиатем кдаужю бкуву по отдльенотси, а все солво цликеом.

Page 8: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

!"4&4&+;*4# %"'(*#*+# 4="',4(E ;%+<4)4@++ ;"#$;4)'@'#&%1, A&4 ( $4)@4("#2#**4- ;'21&+ A#)4(#/' <"'*1&%1 *# /4*/"#&*7# L&')4*7 4="',4( + &#2 =4)## *# $#&')?*7# ;"+,*'/+ L&+< 4="',4(, ' *#/4&4"4# +< '=%&"'/&*4# ;"#$%&'()#*+# ( (+$# ;"4&4&+;4(.

!"4&4&+;7 %4$#"F'& *# &4)?/4 *'+=4)## 4=G## ;"#$%&'()#*+# /'/4@4-)+=4 4="',', *4 + $#&')?*4# 4;+%'*+# #@4 4&)+A+&#)?*7< 4%4=#**4%&#-. I&4 ;4$&(#"F$'#&%1 &#2, A&4 27 "#$/4 ;3&'#2 =3/(7 O + Q +)+ B, R + P, *#%24&"1 *' &4, A&4 %<4$%&(4 2#F$3 *+2+ (#%?2' (#)+/4.

E &#4"++ ;"4&4&+;4( "'%%2'&"+('C&%1 $(# 24$#)+ 54"2+"4('*+1: 0#*&"')?*'1 &#*$#*0+1 + A'%&4&' ;"+,*'/4(.

M)'@4$'"1 L&423, #%)+ *4(7- 4="', %4%&4+& +, =4)?H4@4 /4)+A#%&(' +,(#%&*7< ;"+,*'/4(, 3 A#)4(#/' (4,*+/'#& 3(#"#**4%&?, A&4 L&4& 4* 3F# (+$#) "'*##.

8

Page 9: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4 !"+2#" ()+1*+1 ;'21&+ *' (4%;"+1&+# 54"27

B374.7# ("7#.',877 (;",A, ., #:( 2()1"74'7# — (-., 7A >("% +,9#')4 '"#0%#".($.

9

Page 10: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

!4*1&+# ;"4&4&+;'!"#$%&'()#*+# ;4*1&+- A#)4(#/' *# &"#=3#& A#&/4@4 4;"#$#)#*+1 *'=4"' %(4-%&(, ' =',+"3#&%1 *' ;4*1&++ &+;' +)+ /)'%%'.

!"#$#$%& — L&4 3F# *# '=%&"'/&*7- 4="',, ' *'+=4)## &+;+A*7- ;"#$%&'(+&#)? %(4#@4 /)'%%', % 4=4=G#**72+, *4 (;4)*# /4*/"#&*72+ ,*'A#*+12+ %(4+< %(4-%&(.

10

«9#*##» + «=4)##» &+;+A*7# A#&7"#<3@4)?*+/+

Page 11: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

N&"3/&3"' 5"#-2'

11

/01(02-' 3$2.4-. (-%. 5#'6%0)/01(02-' 3$2.4-. (-%. 5#'6%0)/01(02-' 3$2.4-. (-%. 5#'6%0)

78$49 :20;'2-. 73-<$, <(.10229= 3#$&'>"#

>21 %)4&' 1 O*'A#*+# 1 !"40#$3"' 1

>21 %)4&' 2 O*'A#*+# 2 !"40#$3"' 2.1,!"40#$3"' 2.2

… … …

>21 %)4&' N O*'A#*+# N !"40#$3"' N

Page 12: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4 !"+2#" 4;+%'*+1 ,*'*+- % ;424G?C 5"#-24(

12

Page 13: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

6"#-27 (+,3')?*7< 4="',4(

C"(;3#%/ 2()1"74'74 7 ",)1(A.,2,.74 1"()'",.)'2#../0 )8#. ",))%,'"72,5')4 2 ",;(',0 D7.)+(:(, 2 <,)'.()'7 2 [Minsky, Marvin. A framework for representing knowledge. MIT AI Laboratory Memo 306, June, 1974.].

E))3#-*4 (-.7 7A ,)1#+'(2 2()1"74'74 )8#./ 1"7 -279#.77 "(;(', 1( +(%.,'#, (. "#F,3 A,-,<* (1"#-#3#.74 )(('2#')'274 ",A37<./0 1"(#+87$ (-.(%* 7 '(%* 9# (;G#+'*.

D7.)+7$ 22#3 *1"(6#..*5 )7)'#%* >"#$%(2 -34 1"()'",.)'2#..(:( (17),.74 +*;, 2 27-# :",>,, (-.7 *A3/ +('("(:( )(('2#')'2(2,37 ;(3## 2/)(+($ )'#1#.7 ,;)'",+877 7 (17)/2,37 1(.4'74, 1()'(4..( 1"7)*')'2*567# ., -,..($ )8#.# (+*;). H, ;(3## .7A+70 *"(2.40 )(-#"9,37)? *A3/, )(('2#')'2*567# '#+*6#%* )()'(4.75 )8#./, )()'(46#$ 7A 1"(#+87$ 27-7%/0 )'("(..

I34 2#"F7. *+,A,./ 1"('('71/ )(('2#')'2*5670 >"#$%(2, , -34 -*: — ('.(F#.74 %#9-* >"#$%,%7.

13

Page 14: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4 !"4%&"'*%&(#**4# ;"#$%&'()#*+# /3=' ( (+$# %#&+ 5"#-24(

14

A

E

BКуб

Проекция сторон

Взаимное расположение

(левее, выше и др.)

A B E

Параллелограмм, трапеция и т.д.

Принадлежность к вертикальному

типу

Page 15: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4 !"4%&"'*%&(#**7# + '/%4*42#&"+A#%/+# 5"#-27 ;"+ +,2#*#*++ ;"4#/0++

15!3*/&+"*7# )+*++ ;4/',7('C& *#(+$+27# ( $'**4- ;"4#/0++ ;)4%/4%&+.

A

E

B B

E

CB

EПеремещение

вправоПеремещение

вправоПространственный

фрейм

A B CEВлевоВлевоВлево

Влево

Аксонометрические фреймы

Маркеры отношений для представления пространственных

свойств

Page 16: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

6"#-27-%0#*'"++N0#*'"+- (script) — 4$+* +, (+$4( 5"#-2', ;"#$)4F#**7< ( [Schank R., Abelson R. Scripts Plans and Knowledge, Advance Papers of Fourth Intern. Joint Conf. on Artif. Intell., 1975, P 2, p. 151 - 157.] /'/ %"#$%&(4 ;"#$%&'()#*+1 %&#"#4&+;*4- ;4%)#$4('&#)?*4%&+ $#-%&(+- ( A'%&*42 /4*&#/%&#.

>,*'A')?*4 %0#*'"++ ;"+2#*1)+%? $)1 4"@'*+,'0++ %&"3/&3" $'**7<, 3$4=*7< $)1 ;"#$%&'()#*+1 /4*0#;&3')?*4- ,'(+%+24%&+ (conceptual dependency) ( 4;+%'*++ &+;4(7< %+&3'0+- + ;"+A+**4-%)#$%&(#**7< 4&*4H#*+-.

!4,$*## %0#*'"++ *'A')+ +%;4)?,4('&? + ( 4="'=4&/# #%&#%&(#**4@4 1,7/' $)1 4;+%'*+1 %&#"#4&+;*4- %2#*7 %4=7&+- ( ;"+(7A*7< %+&3'0+1<.

E ;%+<4)4@++ ;"#$;4)'@'#&%1, A&4 =4)?H+*%&(4 %0#*'"+#( ;4(#$#*+1 3%('+('#&%1 ( $#&%&(# ( "#,3)?&'&# )+=4 ;"124@4 4;7&', )+=4 ;"+ *'=)C$#*++ ,' 4/"3F'CG+2 2+"42.

16

Page 17: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

N0#*'"+- «Q#%&4"'*»

17

Сценарий: Аналог: Реквизиты:

РЕСТОРАН Кафе Столы Меню F=Пища(Food) Чек Деньги

Сцена 1: Вход S PTRANS S в ресторан S ATTEND выбирает стол S MBUILD куда сесть S PTRANS S за стол S MOVE S в сидячее положение

Сцена 2: Заказ Roles: S=Клиент (меню на столе) W=Официант (W приносит меню) (S спрашивает меню)

C= Повар S PTRANS меню S S MTRANS сигнал W M=Кассир W PTRANS W к столу O=Владелец S MTRANS ’меню’ W W PTRANS W к меню W PTRANS W к столу W ATRANS меню S

S MTRANS список блюд S *S MBUILD выбор F S MTRANS сигнал W W PTRANS W к столу S MTRANS ’Я буду есть F’ W W PTRANS W к C W MTRANS (ATRANS F) к C

Нач. условия: S голоден C MTRANS ’нет F’ W у S есть W PTRANS W к S

Деньги W MTRANS ’нет F’ S вернуться к (*) или C выполняет перейти к Сцене 4 на (сценарий ‘приготовить F’) (уход без оплаты) к Сцене 3 Результаты: S потратил деньги Сцена 3: Прием пищи O заработал C ATRANS F to W деньги W ATRANS F to S (вариант: вернуться к Сцене 2 S сыт S INGEST F Чтобы сделать еще заказ;; иначе, S доволен Перейти к Сцене 4) (optional) Сцена 4: Выход

S MTRANS к W (W ATRANS чек S)

W MOVE выписывать чек W PTRANS W к S

W ATRANS чек S S ATRANS чаевые W

S PTRANS S к M S ATRANS деньги M

S PTRANS S к выходу ресторана (уход без оплаты)

R42;4*#*&'2+ %0#*'"+1 1()1C&%1 %)#$3CG+# L)#2#*&7:

• S'A')?*7# 3%)4(+1 (Entry conditions).

• Q#,3)?&'&7, +)+ 5'/&7 (Results).

• Q#/(+,+&7 (Props).

• Q4)+ (Roles).

• N0#*7 (Scene).

N27%) (7"'F#*+- 4;"#$#)1#&%1 % ;424G?C A#&7"#< ;"+2+&+(4(:

• ACT — $#-%&(+1 (actions);

• PP — 4=T#/&7 (picture procedures);

• AA — 24$+5+/'&4"7 $#-%&(+- (action aiders);

• PA — 24$+5+/'&4"7 4=T#/&4( (picture aiders).

Page 18: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

!"+2+&+(7 $#-%&(+1 ACT

18

J).(2./%7 +(%1(.#.',%7 -#$)'27$ 42345')4 )3#-*567# 1"7%7'72/:

•K ATRANS — 1#"#-,2,'? ('.(F#.7# (-,2,'?);

•K PTRANS — 1#"#-,2,'? >7A7<#)+(# ",)1(3(9#.7# (;G#+', (7-'7);

•K PROPEL — 1"7+3,-/2,'? >7A7<#)+*5 )73* + (;G#+', ('(3+,'?);

•K MOVE — 1#"#%#6,'? <,)'? 737 2)# '#3( (23,-#3?8#%);

•K GRASP — A,02,'/2,'? (;G#+' (7)1(3.7'#3#%);

•K INGEST — 1(:3(6,'? (;G#+' (#)'?);

•K EXPEL — 7A-,2,'? A2*+7 (+"7<,'?);

•K MTRANS — 1#"#-,2,'? %#.',3?.*5 7.>("%,875 ()+,A,'?);

•K MBUILD — )(A-,2,'? .(2*5 %#.',3?.*5 7.>("%,875 ("#F,'?);

•K CONC — ()%/)372,'? 7-#5 (-*%,'?);

•K SPEAK — 1"(7A.()7'? A2*+7 (:(2("7'?);

•K ATTEND — 2()1"7.7%,'? A2*+7 ()3*F,'?).

Page 19: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

8&*4H#*+1 /4*0#;&3')?*4- ,'(+%+24%&+

19

8&*4H#*+1 /4*0#;&3')?*4- ,'(+%+24%&+ — L&4 /4*0#;&3')?*7# %+*&'/%+A#%/+# ;"'(+)', (7"'F'CG+# %#2'*&+A#%/+# %(1,+ ( %44&(#&%&(++ % @"'22'&+/4- 1,7/'.

E7"'F#*+# «R)+#*& *';"'()1#&%1 ( "#%&4"'*» =3$#& (7@)1$#&? %)#$3CG+2 4="',42: «S PTRANS S ( "#%&4"'*».

U"3@4# (7"'F#*+# «85+0+'*& $'#& 2#*C /)+#*&3» 24F*4 ;"#$%&'(+&?, *';"+2#", &'/: «W ATRANS 2#*C S».

Page 20: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

!"+2#" %0#*'"+1 *' 4%*4(# >/>.> @"'5'

20

ex i s t s , and if so, to discover i t s range. That i s , on the average, how far do we have to search to connect each thought in with the context? Too short and we become red, too long and we be-come los t .

Uses of I(T,K)

An in terpretat ion is a useful thing in i t -se l f . However, once an in terpretat ion path is

discovered, two other context-related operations become possible. F i r s t , a l l steps " to the l e f t " of the iden t i f i ed step, S, in algorithm A -those steps which must log ica l ly have preceded S in A - can be generated as inferences. That i s , if we know that Jake has already saddled his horse, and th is has been Interpreted as part of a physical get-back, then Jake must already know who and what X and Y were, have decided on some plan of ac t ion , perhaps qotten his gun, and gone to the barn. Such inferences relate to the

149

CONCEPTUAL OVERLAYS: A MECHANISM FOR THE INTERPRETATIONOF SENTENCE MEANING IN CONTEXTChuck Rieger Department of Computer Science University of MarylandCollege Park, Maryland 20742

Page 21: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

!"+2#" %0#*'"+1 $)1 4;+%'*+1 ')@4"+&24(

21

The commonsense algorithm as a basis for computer models of human memory, inference, belief and contextual language comprehension.Chuck Rieger Department of Computer Science University of Maryland.TINLAP '75 Proceedings of the 1975 workshop on Theoretical issues in natural language processing

6~6~r o~ ?uo#T~

L~t. ~A~If, Q.: IvPPI.Y LtN~- "r~ TA~V~

tank from ~ / / trip _ # float

~ j ~ / ~ J ~anolellf~ ~ arm

supply II1 dis- _ ~ ~ _ ~ , channel valve Ill harge I I I ~ pe supply |~ flush

stewOer plpe~_ ValeV ~

i t r i p ~ f'~,refi I l

- % ] o at~i/i

c TAN K

FIGURE 3 A reverse-trap toilet.

, i m , ,

ll!ft

I "~ Over.fl ow ' ~ ' - ' ) p, pe • ~flush ball

K ~Bk~6 c~c~ sutp6y Fuu~ ~F t ~ b

V ~ # ~ .

v~Lv~

Bo~L. 1"o w~rs~n~ G,'Z~W, T7

~. w ~,~J~

wWr~ F~

15owu 6J~TF.~ H ¢ 1 6 . ~ o~rr~ L~P ~F wksl~

FIGURE 4 O~eration of the reverse-trap toilet.

192

I I I I I

6~6~r o~ ?uo#T~

L~t. ~A~If, Q.: IvPPI.Y LtN~- "r~ TA~V~

tank from ~ / / trip _ # float

~ j ~ / ~ J ~anolellf~ ~ arm

supply II1 dis- _ ~ ~ _ ~ , channel valve Ill harge I I I ~ pe supply |~ flush

stewOer plpe~_ ValeV ~

i t r i p ~ f'~,refi I l

- % ] o at~i/i

c TAN K

FIGURE 3 A reverse-trap toilet.

, i m , ,

ll!ft

I "~ Over.fl ow ' ~ ' - ' ) p, pe • ~flush ball

K

~Bk~6 c~c~ sutp6y Fuu~ ~F t ~ b

V ~ # ~ .

v~Lv~

Bo~L. 1"o w~rs~n~ G,'Z~W, T7

~. w ~,~J~

wWr~ F~

15owu 6J~TF.~ H ¢ 1 6 . ~ o~rr~ L~P ~F wksl~

FIGURE 4 O~eration of the reverse-trap toilet.

192

I I I I I

Page 22: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

9*4F#%&(#**4# *'%)#$4('*+#

22

Page 23: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4 !"+2#" %)4F*4- +#"'"<++ 2*4F#%&(#**4@4 *'%)#$4('*+1

23

Page 24: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4 !"4=)#2' ')2',' (diamond problem)

!4)4F+2, A&4 /('/#"7 — L&4 ;'0+5+%&7, &4 #%&? ( %)4&# «;'0+5+%&» 5"#-2' «/('/#"» $4)F*4 =7&? ,*'A#*+# +%&+*'. S';"4&+(, "#%;3=)+/'*07 ;'0+5+%&'2+ *# 1()1C&%1, ,*'A+&, ( %)4&# «;'0+5+,2» 5"#-2' «"#%;3=)+/'*#0» =3$#& ,*'A#*+# «)4F?».V V

24

Page 25: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4 N)'=7# %&4"4*7 ( '"<+&#/&3"# 2*4F#%&(#**4@4 *'%)#$4('*+1

1) '(#)*#+*,-*#.$/ — «%/#;&+A#%/+#» + «$4(#"A+(7#» %+%&#27.

2) !"#01(2, 3"4&5#.$% 0,+#6#7# 51,.., (fragile base class problem) — +,2#*#*+1 ( /4"*#(42 3,)# 24@3& =7&? *#=#,4;'%*72+ $)1 *'%)#$3#27<.

3) !"#01(2, 8#-8# (yo-yo problem) — *#;42#"*4 =4)?H4- @"'5 +#"'"<++ *'%)#$4('*+1.

25

Page 26: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

8=T#/&*4-4"+#*&+"4('**7- ;4$<4$

J;G#+'.(–("7#.'7"(2,..,4 '#0.(3(:74 (object–oriented approach) 1"(:",%%7"(2,.74 (JJC) )>("%7"(2,3,)? 2 .,<,3# 1980-0 ::.

J;G#+'.(–)'"*+'*"7"(2,..(# 1"(:",%%7"(2,.7#.

L,;3(./ 1"(#+'7"(2,.74 (design patterns).

26

Page 27: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

:=%&"'@+"4('*+# + /)'%%+5+/'0+1

90.$",5:%; (7$#)1#& %3G#%&(#**7# <'"'/&#"+%&+/+ *#/4&4"4@4 4=T#/&', 4&)+A'CG+# #@4 4& (%#< $"3@+< (+$4( 4=T#/&4( +, &'/+2 4="',42, A#&/4 4;"#$#)1#& #@4 /4*0#;&3')?*7# @"'*+07 % &4A/+ ,"#*+1 *'=)C$'&#)1.

<1,..%=%5,:%; — %"#$%&(4 3;4"1$4A#*+1 ,*'*+-, "'%;"#$#)#*+# ;"#$2#&4( ;4 @"3;;'2, @$# /'F$'1 @"3;;', /'F$7- /)'%% +2##& %(4# ;4%&41**4# 2#%&4

27

Page 28: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

!"+2#"7 '=%&"'/0+-1),0.$",5:%; .4>*#.$% — 4=T#/& ;"#$%&'()1#& %4=4- ;4)#,*3C 24$#)? *#/4- %3G*4%&+ ( ;"#$2#&*4- 4=)'%&+;

2),0.$",5:%; &#6()(*%; — 4=T#/& %4%&4+& +, 4=4=G#**4@4 2*4F#%&(' 4;#"'0+-;

3),0.$",5:%; 6%"$4,1/*#8 2,?%*@ — 4=T#/& @"3;;+"3#& 4;#"'0++, /4&4"7# )+=4 (2#%&# +%;4)?,3C&%1 =4)## (7%4/+2 3"4(*#2 3;"'()#*+1, )+=4 %'2+ +%;4)?,3C& *#/4&4"7- *'=4" 4;#"'0+- =4)## *+,/4@4 3"4(*1

4)&"#%+6#1/*,; ,0.$",5:%; — 4=T#/& (/)CA'#& ( %#=1 *'=4" 4;#"'0+-, *# +2#CG+< $"3@ % $"3@42 *+A#@4 4=G#@4.

28

Page 29: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

!4$<4$7 / /)'%%+5+/'0++

1)<1,..%-(.5,; 5,$(7#"%+,:%; — /)'%%+5+/'0+1 ;4*1&+- 4%3G#%&()1#&%1 +%<4$1 +, 4;"#$#)#**4@4 %(4-%&(' +)+ %4(4/3;*4%&+ %(4-%&(, *' 4%*4('*++ /4&4"7< 54"2+"3#&%1 *#/4&4"'1 /'&#@4"+1 (%(4-%&(').

2)<#*:(&$4,1/*,; 51,.$("%+,:%; — 54"2+"4('*+# /4*0#;&3')?*7< 4;+%'*+- /)'%%4( (/)'%&#"4( 4=T#/&4(), *' 4%*4('*++ /4&4"7< ,'&#2 (7;4)*1#&%1 /)'%%+5+/'0+1 %3G*4%&#- (4;"#$#)#*+1).

3) A(#"%; &"#$#$%&#6 — /)'%% 4;"#$#)1#&%1 4$*+2 4=T#/&42-;"4&4&+;42, + *4(7- 4=T#/& 24F*4 4&*#%&+ / /)'%%3 ;"+ 3%)4(++, A&4 4* *'$#)#* %3G#%&(#**72 %<4$%&(42 % ;"4&4&+;42 (;"+2#").

29

Page 30: Экспертные системы: лекция №4

© 2

012 !"#$%&'( )

.*.

+',&-.

4

«J+%&'1» 4=T#/&*4-4"+#*&+"4('**'1 24$#)?

51,.. (class),

,$"%04$@ (attribute) + 2($#)@ (method),

%*$("=(8. (class interface),

.##0>(*%( (message),

%*5,&.41;:%; (encapsulation),

*,.1()#6,*%( (inheritance),

&#1%2#"=%+2 (polymorphism),

#0B(5$ (object),

2($,51,.. (metaclass),

%*$"#.&(5$%6*@( (introspective) +)+ "(=1(5.%6*@( (reflex) 4=T#/&7.

30