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

Certificate Certificate

Shree U. V. Patel College Of Shree U. V. Patel College Of

Engineering Engineering
Ganpat Vidhyanagar,Kherva. Ganpat Vidhyanagar,Kherva.
Department Of Computer Engg. Department Of Computer Engg.
This is to certify that Mr. SARAIYA SARAIYA
EPARTMENT Ro!! No. ""EC#" has $artici$ate% i& Tech&ica!
Semi&ar 'SYMPOSIUM ())(* +y $rese&ti&, his semi&ar o&
Computer Engineering
Signature Of Jury Members
S!POS"U! # $E% &'( S!POS"U! # $E% &'(
PP)EP*)ED )EP*)ED %%
+*!E , S*)*"* +"-* +"."+ S*)*"* +"-* +"."+
SE!ES.E) , V" SE!. V" SE!.
%)*+C/ , CO!PU.E) E+G"+EE)"+G CO!PU.E) E+G"+EE)"+G
)O-- +O , 00EC10 00EC10
CO--EGE +*!E , SS/)EE /)EE U. V. P U. V. P*.E- *.E- CCO--EGE O--EGE OO$$
EE+G"+EE)"+G +G"+EE)"+G, G , G*+P*. *+P*. VV"D/*+*G*) "D/*+*G*), ! , !E/S*+* E/S*+*..
D*.E , (1
2anuary (''(
.hi4 5eing the fir4t e6perience in SS!POS"U! !POS"U! for u4 of it4 7ind great
4upport and encouragement ha4 5een given to u4 5y all the $aculty !em5er4 and
during the proce44 pf preparing thi4 4eminar report, 8e 8ere a5le to reali9e the
va4t practical advance4 that have 5een made in thi4 modern 8orld.
During the proce44 of ma7ing of thi4 4eminar many people have 5een
directly or indirectly a44ociated. " 8ould al4o li7e to than7 all my friend4 for
their 4upport and to my parent4 for 5eing a 4ource of in4piration to me.
* *%S.)*C. %S.)*C.
Artificia !nteigence is somet"ing t"at #i greaty impact our future$
At"oug" it is %ifficut to foresee tec"noogica a%&ancements' A! is sure to assume a
prominent roe$ t"e future #i rey on t"e tec"noogies t"at %e%icate% researc"ers an%
scientists are %e&eoping to%ay$
T"is paper pro&i%es an e(tensi&e o&er&ie# of #"at Artificia !nteigence
actuay means' its "istory' e(pert systems ) #"ic" "as greaty enig"tene% A!' t"e
natura processing ) #"ic" "eps "umans to communicate #it" t"e computers in a
simiar #ay as t"ey communicate #it" eac" ot"er' symboic processing ) #"ic"
incu%es t"e !P* +!nformation Processing *anguage, an% *!ST +*!St Processor, )
#"ic" are t"e most #i%ey use% anguages for t"e %e&eopment of t"e A! tec"noogies$
T"e %eman% for t"ese tec"noogies' especiay A!' #i increase$ Many #on%er
#"ere #i t"at ea&e "umans$
CO+.E+.S CO+.E+.S
:. 3/*. "S *)."$"C"*- "+.E--"GE+CE;
(. ./E /"S.O) O$ *)."$"C"*- "+.E--"GE+CE <
=. E>PE). SS.E!S
1. +*.U)*- -*+GU*GE P)OCESS"+G
?. S!%O-"C P)OCESS"+G
CO+C-US"O+ ('
G-OSS*) (:
)E$E)E+CES ((
T"e first era of computer appications "as focuse% on numerica cacuations$
No#' #e are ma4ing t"e transition to anot"er era ) one in #"ic" computers #i be
abe to reason #it" 4no#e%ge$ Artificia !nteigence +A$!$,' part of computer science
concerne% #it" %esigning inteigent computer systems' is emerging from t"e
aboratory an% is beginning to ta4e its pace in "uman affairs$ .it" A!' t"e roe of t"e
computer in our i&es c"anges from somet"ing usefu to somet"ing essentia$
A! is creating a ne# computer re&oution$ /usiness .ee4 feature% it as 5t"e
secon% computer age'6 but it7s not 8ust t"e secon% computer re&oution ) it7s t"e
important one$ T"e computer is t"e 4no#e%ge #or4er7s most important too$
3no#e%ge is po#er' an% t"e computer is an ampifier of t"at po#er$ .it" t"e ne#
4no#e%ge systems' computers #i be abe to engage in inteigent acti&ities suc" as
con%ucting natura conser&ations #it" peope an% so&ing compe( probems t"at
"eretofore "a&e been t"e e(cusi&e pro&ince of "uman e(perts$ 3no#e%ge itsef is
about to become t"e ne# #eat" of nations$
T"ere "as been muc" acti&ity an% progress t"roug"out t"e "istory of artificia
inteigence researc"' an% t"ere is more acti&ity no# t"an e&er$ !ncreasing researc"
support is coming from t"e pri&ate sector' #"ere interest in using an% mar4eting A!
programs is on t"e rise$ T"ere are acti&e' #e ) fun%e% A! researc" groups in t"e
-nite% States an% abroa%$
!n Japan' t"e Fift" 0eneration Pro8ect aims to o&erta4e t"e American ea% in
t"is most important of a mo%ern tec"noogies by estabis"ing a 54no#e%ge
in%ustry6 in #"ic" 4no#e%ge #i be a saabe commo%ity i4e foo% an% oi$ To#ar%s
t"is en%' t"e Japanese "a&e announce% researc" an% %e&eopment #it" e(tremey
ambitious goas$ T"e sta4es are "ig"9 t"e American response to t"e c"aenge of t"e
Fift" 0eneration may %etermine t"e roe of t"e peope of t"e #or% in t"e post:
in%ustria #or%' a #or% t"at #i re&o&e aroun% a ne# tec"noogy t"at #i embo%y
4no#e%ge as its centra feature$
!t is impossibe to e(aggerate t"e impact t"at A! researc" an% its resuting
tec"noogies #i "a&e on t"e #or% of t"e not:too:%istant future$
3/*. "S *)."$"C"*- "+.E--"GE+CE;
T"e foo#ing %efinition of A! may seem &ague at first gance;
@*rtificial "ntelligence i4 the 4tudy of ho8 to ma7e
computer4 do thing4 at 8hich, at the moment, people are 5etter.A
Ho#e&er' a furt"er e(poration of t"e %efinition s"o#s it to be <uit t"oug"t:
3/*. CO!PU.E)S C*+ DO %E..E) ./*+ PEOP-E
T"ere are in%ee% t"ings t"at computers %o better t"an peope' #"ic" probaby %oes not
surprise you$
Here are %iscussions of some t"ings t"at mac"ines %o better t"an peope$
One sma' specia:purpose computer #it" #"ic" you7re un%oubte%y famiiar
is t"e "an%:"e% cacuator$ !f you #ere as4e% to mutipy =>?@ by ABBC' #ou% you
rat"er perform t"e computation in your "ea% or use a cacuatorD ."ic" tec"ni<ue
#ou% be fasterD More accurateD
Ob&iousy' e&en a tiny cacuator can perform a "uman #"en it comes to
mat"ematica computations$ +Computers #ere' in fact' in&ente% specificay for t"is
purpose,$ *arger computers are so fast an% accurate t"at t"ey can perform cacuations
t"at iteray #ou% be impossibe for one person to compete in a ifetime using any
ot"er means$
!t is i4ey t"at many of t"e bis you recei&e eac" mont" are processe% by a
computer$ A typica business computer mig"t contain' for e(ampe' t"e names an%
a%%resses of t"ousan%s of customers' accompanie% by compete recor%s of t"eir
financia transactions$
!f you %i%n7t "a&e a computer' %o you suppose t"at it #ou% be possibe for
you to remember a of t"at %ataD Of course not$ 2et a computer can 5remember6
&ouminous amounts of information an% reca any of it at your comman%$
.e fre<uenty instruct computers to perform t"e same tas4s' %ay in an% %ay
out' o&er an% o&er again$ Fortunatey for us' computers %on7t get bore%$ !f you use a
computer to print ?EEE copies of a customer report' for e(ampe' t"e <uaity of t"e ast
report is as foo% as t"at of t"e first$ !f you trie% to copy t"ose reports manuay' t"e
<uaity probaby #ou% start to %iminis" <uic4y after t"e first fe# copies$
T"e 4in%s of t"ings t"at computer %o better t"an peope' suc" as t"ose 8ust
%iscusse%' are acti&ities t"at #e ca mechanical:5min%ess6 acti&ities t"at are
ob&iousy capabe of being performe% by mac"inery$ E&er since t"e in%ustria
re&oution' "umans "a&e accepte% t"e fact t"at mac"ines are often superior in
performing many purey mec"anica physical acti&ities$
Simiary' in t"e ast FE years' #e7&e come to accept t"e fact t"at computers:
computing mac"ines:can outperform "umans in coecti&e sef:image' "o#e&er'
because #e remain secure in t"e beief t"at t"ere are aso many t"ings t"at peope can
%o better t"an computers$
3/*. PEOP-E C*+ DO %E..E) ./*+ CO!PU.E)S
Peope "a&e tra%itionay out performe% computers in acti&ities t"at in&o&e
.e %o muc" more t"an 8ust process information9 #e understand it$ .e 5ma4e
sense6 out of #"at #e see an% "ear9 #e come up #it" ne# i%eas seemingy out of t"in
air9 #e use commonsense to ma4e our #ay t"roug" a #or% t"at sometimes seems
"ig"y iogica$
!f peope are more inteigent t"an computers an% if' A! tries to impro&e t"e
performance of computers in acti&ities t"at peope %o better' t"en t"e goa of A! is to
ma4e computers more inteigent$ T"is concept forms t"e basis of a secon% %efinition
of A!;
@*rtificial intelligence i4 the part of computer 4cience concerned 8ith
de4igning intelligent computer 4y4tem4, that i4, 4y4tem4 that e6hi5it the
character4 8e a44ociate 8ith intelligence in human 5ehavior.A
T"e goa of A! is to %e&eop inteigent computers$ !t is important to notice
t"at t"ey %efine as inteigent computer as one t"at emuates inteigent be"a&ior in
/ut e(acty #"at do #e consi%er to be inteigent be"a&ior in "umansD !n ot"er
#or%s' #"at is inteigenceD
Ho#e&er' to e(pain #"at an 5inteigent6 computer s"ou% be abe to %o' #e
nee% a better un%erstan%ing of #"at #e mean by inteigence$
."y %o #e reser&e t"e term intelligence for "umansD ."y %on7t #e consi%er
computers to be inteigentD ."at is it t"at peope can %o better t"an computers t"at
ma4es peope inteigent but not computersD
."ie an e(act %efinition of inteigence "as pro&en to be e(tremey eusi&e'
t"e foo#ing c"aracteristics are suggeste% in a ist of 5essentia abiities for
5To respon% to situations &ery fe(iby6 ) 2ou %o not necessariy respon% t"e
same #ay eac" time you are confronte% #it" an i%entica probem$ !f you %i%'
you #ou% be e("ibiting mec"anica' rat"er t"an inteigent' be"a&ior$
5To ma4e sense out of ambiguous or contra%ictory messages6 ) 2ou are abe
to un%erstan% many statements t"at appear to be ambiguous or contra%ictoriy
arge because your 4no#e%ge an% e(perience ao# you to pace t"em in
F5To recogniGe t"e reati&e importance of %ifferent eements of a situation6 )
At"oug" you are bombar%e% #it" an o&er#"eming amount of information
eac" %ay' you 5ma4e sense6 of your #or% by assigning %ifferent e&es of
importance to %ifferent e&ents$
5To fin% simiarities bet#een situations %espite %ifferences #"ic" may
separate t"em6 ) /y recogniGing simiarities' you can base your future actions
on #"at you "a&e earne% in t"e past$ T#o situations %o not "a&e to be
i%entica for you to appy t"e essons of your e(perience$
5To %ra# %istinctions bet#een situations %espite simiarities #"ic" may in4
t"em6 ) At"oug" t#o situations may appear to be simiar on t"e surface' you
are abe to notice %ifferences #"ic" may ea% you to a%8ust your reactions
T"ese abiities s"are at east one attribute; t"ey a come &ery easiy to peope$
! fact' #e often group t"ese abiities un%er t"e "ea%ing of commonsense$ T"e
impication is t"at t"ere is not"ing specia about possessing t"ese 4in%s of menta
abiities9 t"ey are' infact' common$
*)E*S O$ *" )ESE*)C/
T"ere are i%entifiabe areas of researc" t"at generay' if not uni&ersay' are
incu%e% in %iscussions of artificia inteigence$ Here' are brief intro%uctions to
se&era of t"e A! tec"noogies$
An Expert System is computer program %esigne% to act as an e(pert in a
particuar %omain +area of e(pertise,$ Aso 4no#n as a knowledge-based system' an
e(pert system typicay incu%es a siGabe 4no#e%ge base' consisting of facts about
t"e %omain an% "euristics +rues, for appying t"ose facts$
E(pert systems currenty are %esigne% to assist e(perts' not to repace t"em$
T"ey "a&e pro&en to be usefu in %i&erse areas suc" as me%ica %iagnostics' c"emica
anaysis' geoogica e(poration' an% computer system configuration$
Since t"e e(pert systems fie% promises a great %ea if practica appication an%
commercia potentia in t"e near future' it tec"noogy is poise% to become t"e first A!
tec"noogy to "a&e a #i%esprea% impact on business an% in%ustry$
T"e utiity of computers is often imite% by communication %ifficuties$ T"e
effecti&e use of a computer tra%itionay "as in&o&e% t"e use of a programming
anguage or a set or comman%s t"at you must use to communicate #it" t"e computer$
T"e goa of natura anguage processing is to enabe peope an% computers to
communicate in a 5natura6 +"uman, anguage' suc" as Engis"' rat"er t"an in a
computer anguage$
T"e fie% of natura anguage processing is %i&i%e% into t"e t#o sub:fie%s of;
Natura anguage understanding' #"ic" in&estigates met"o%s of ao#ing t"e
computer to compre"en% instructions gi&en in or%inary Engis" so t"at
computers can un%erstan% peope more easiy9 an%
Natura anguage generation' #"ic" stri&es to "a&e computers pro%uce
or%inary Engis" so t"at peope can un%erstan% computers more easiy$
T"e focus of natura anguage processing is to enabe computers to
communicate interacti&ey #it" Engis" #or%s an% sentences t"at are type% on paper
or %ispaye% on a screen$ Ho#e&er' t"e primary interacti&e met"o% of communication
use% by "umans is not rea%ing an% #riting9 it is speec"$
T"e goa of speec" recognition researc" is to ao# computers to un%erstan%
"uman speec" so t"at t"ey can "ear our &oices an% recogniGe researc" see4s to
a%&ance t"e goa of natura anguage processing by simpifying t"e process pf
interacti&e communication bet#een peope an% computers$
A robot is an eectro:mec"anica %e&ice t"at can be programme% to perform
manua tas4s$ T"e Robotic !n%ustries Association formay %efines a robot as 5a
reprogrammabe muti:functiona manipuator %esigne% to mo&e materia' parts' toos'
or speciaiGe% %e&ices t"roug" &ariabe programme% motions for t"e performance of a
&ariety of tas4s$6
Not a of robotics is consi%ere% to be part of A!$ A robot t"at performs ony
t"e actions t"at it "as been pre:programme% to perform is consi%ere% to be a 5%umb6
robot' possessing no more inteigence sensory apparatus' suc" as a camera' t"at
ao#s it to respon% to c"anges in its en&ironment' rat"er t"an 8ust to foo#
instructions 5min%essy6$
!n simpe terms' programming is t"e process of teing t"e computer e(acty
#"at you #ant it to %o$ De&eoping a computer program fre<uenty re<uires a great
%ea of time$ A program or system +a group of interreate% programs, must be
%esigne%' #ritten' teste%' %ebugge% +ceanse% of errors,' an% e&auate%' a as part of
t"e program %e&eopment process$
T"e goa of automatic programming is to create specia programs t"at act as
inteigent 5toos6 to assist programmers an% e(pe%ite eac" p"ase of t"e programming
process$ T"e utimate aim of automatic programming is a computer system t"at cou%
%e&eop programs by itsef' in response to an% in accor%ance #it" t"e specifications of
a program %e&eoper$
../E /E //"S.O) "S.O) OO$$ **)."$"C"*- )."$"C"*- ""+.E--"GE+CE +.E--"GE+CE
/ecause artificia inteigence is a reati&ey ne# science' e(poring its "istory
mig"t not seem to be especiay #ort"#"ie$ Ho#e&er' t"e "istory of A! is a ric" an%
fascinating story$ Some of t"e most a%&ance% scientific t"in4ers of t"e ast FE years
"a&e gi&en muc" t"oug"t to t"e #or4ings of "uman min%s an% eectronic computers
an% "a&e in&este% a great %ea of time an% effort in&estigating #ays to ma4e
computers #or4 more i4e min%s$
*ong before t"ere #as a fie% cae% artificia inteigence ) ong before t"ere
#ere computers' or e&en a 4no#e%ge of eectronics ) peope #ere irresistiby %ra#n
to i%ea of creating inteigence outsi%e t"e "uman bo%y$
Se&era e(ampes %ate bac4 a t"e #ay to 0ree4 myt"oogy$ Hep"aestus' son
of Hera' seems to "a&e fas"ione% "uman:i4e creations reguary in "is forge9 an%
Taos' one of Hep"aestus7 bronGe men' guar%e% an% %efen%e% Crete$ Disenc"ante%
#it" "uman #omen' Pygmaion ma%e "is o#n #oman out of i&ory an% Ap"ro%ite
broug"t 0aatea' t"is man:ma%e #oman' to ife$
!n me%ie&a Europe' Pope Sy&ester !! is cre%ite% #it" bui%ing a ta4ing "ea%
#it" a imite% &ocabuary an% a 4nac4 for prognostication : Sy&ester #ou% as4 it a
simpe <uestion about t"e future' an% t"e artificia "ea% #ou% ans#er yes or no$ Arab
astroogers are sai% to "a&e constructe% a t"in4ing mac"ine cae% t"e zairja9 t"e
missionary Ramon *u ans#ere% #it" a C"ristian a%aptation' t"e Ars Magna$
!n t"e eary si(teent" century' Paracesus' a prominent p"ysician' caime% to
"a&e in&ente% a homunculus' a itte man$ 5.e s"a be i4e 0o%s'6 "e #rote
ent"usiasticay$ 5.e s"a %upicate 0o%7s greatest mirace ) t"e creation of man'6 !f
"e #as successfu' "e must not "a&e been muc" of a businessman ) Paracesus %ie% a
*ater in t"e si(teent" century' t"e CGec" rabbi Ju%an ben *oe# is reporte% to
"a&e scupte% a i&ing cay man' Josep" 0oem' to spy on t"e genties of Prague
+golem "as become a synonym for an artificia "uman,$ -nfortunatey' t"is particuar
goem gre# o&ery aggressi&e an% "a% to be %ismante%$
As you see' t"e concept of artificia inteigence is "ar%y ne#$ !t seems t"at
for as ong as peope "a&e been abe to bui% mac"inery' t"ey "a&e specuate% about
bui%ing inteigent mac"ines$ An% e&er since t"e first computers #ere buit' scientists
"a&e been trying to ma4e t"em t"in4$
Aan Turing' a briiant an% inno&ati&e mat"ematician' #as an integra part of
Pro8ect -tra' t"e successfu /ritis" effort to brea4 t"e 0erman 5Enigma6 co%e %uring
.or% .ar !!$ As part of "is roe in t"at pro8ect' Turing "epe% %esign one of t"e first
computers e&er buit$
!n ?AIE' Turing #rote a pro&ocati&e artice entite% 5Computing Mac"inery
an% !nteigence'6 #"ic" secure% for "im t"e %istinction of being generay recogniGe%
as t"e 5fat"er6 of artificia inteigence$ Not being one to #aste #or%s' Turing being
t"e artice #it" a proposition t"at continues to be %ebate% after more t"an BI years
+at"oug" Turing "imsef concu%e% t"at t"e <uestion #as 5meaningess6,$ 5! propose
to consi%er t"e <uestion'6 "e began succincty'6 57 Can mac"ines t"in4D76
Turing foresa# t"at t"ere #ou% be many ob8ections to t"e propositions t"at
mac"inery cou% pro%uce t"oug"t$ !n fact' "e consi%ere% an% respon%e% to se&era
possibe ob8ections in t"e artice$ RecogniGing t"at semantic %ifficuties aone cou%
ren%er it impossibe e&er to ans#er t"e <uestion satisfactoriy' Turing suggeste% a test'
in t"e form of game' t"at cou% "ep to %eci%e t"e issue$ He cae% it t"e 5imitation
game69 but in "is "onor' it "as since generay become 4no#n as t"e 5Turing Test6$
./E .U)"+G .ES.
Picture yoursef in room t"at is empty e(cept for you an% a computer termina$
!n simiar room' "i%%en from your &ie#' are a man an% a #oman #it" a termina
simiar to yours$ 2ou communicate #it" t"em by typing <uestions on t"e 4eyboar% of
your computer$ As you type' your <uestions appear on t"e screen of t"eir computer$
T"ey respon% to you by typing on t"eir 4eyboar%' an% you see t"eir responses on your
2ou are t"e 5interrogator69 you can %irect <uestions to eit"er Person A or
Person /' but you %o not 4no# #"ic" is t"e man an% #"ic" is t"e #oman$ T"e ob8ect
of t"e game is to try to guess #"ic" person is mae an% #"ic" is femae ) soey by
anayGing t"eir responses$
!f bot" peope #ere obige% to te you t"e trut"' you cou% 8ust as4' 5Person
A; Are you mae or femaeD6' an% t"e game #ou% 8er4 to a screec"ing "at$ /ut in
Turing7s game' ony one of t"e peope is obigate% to repy trut"fuy9 t"e ot"er person
is acti&ey engage% in attempting to foo an% confuse you' using any %eceitfu tactics
t"at #i ma4e you guess incorrecty$
Ho# #ou% you fare as t"e interrogator in t"e imitation gameD Ho# often
#ou% your incisi&e <uestions enabe you to sort out t"e gen%ers of Persons A an% /
correctyD Ho# often #ou% you be fooe%D
Ne(t ) an% t"is is t"e critica part of t"e Turing Test ) substitute a computer
for one of t"e peope$ No# t"e "uman is obigate% to gi&e you trut"fu' "uman:i4e
responses9 but t"e computer is trying to foo you into t"in4ing t"at it is "umanJ
*oo4 at t"e sampe Turing Test presente% "ere$ Ho# #ou% you fare in t"is
&ersion of t"e imitation gameD Cou% you te #"en you #ere a%%ressing a "uman an%
#"en your respon%ent #as mac"ineD Ho# often #ou% you be fooe%D
"nterrogator, !n t"e first ine of t"e sonnet #"ic" rea%s 5S"a ! compare t"ee to a
summer7s %ay$6 .ou% not 5a spring %ay6 %o as #e or betterD
3itne44, it #ou%n7t scan$
"nterrogator, Ho# about 5a #inter7s %ay6D T"at #ou% scan a rig"t$
3itne4s, 2es' but nobo%y #ants to be compare% to a #inter7s %ay$
"nterrogator, .ou% you say Mr$ Pic4#ic4 remin%e% you of C"ristmasD
3itne4s, !n a #ay$
"nterrogator, 2et C"ristmas is a #inter7s %ay' an% ! %o not t"in4 Mr$ Pic4#ic4 #ou%
min% t"e comparison$
3itne4s, ! %on7t t"in4 you7re serious$ /y a #inter7s %ay one means a typica #inter7s
%ay' rat"er t"an a specia one i4e C"ristmas$
Turing7s point is t"at if your success rate in t"e computerK"uman &ersion of
t"e imitation game is no better t"an your success rate in t"e maeKfemae &ersion' t"en
you mig"t as #e say t"at t"e mac"ine is t"in4ing$ T"at is' t"e mac"ine is at east as
inteigent as a "uman$
./E @)EV"SEDA .U)"+G .ES.
T"e genera concept of a Turing Test "as e&o&e% #it" t"e passage of time9
currenty' a Turing Test is consi%ere% to be any situation in #"ic" a "uman con&erses
#it" an unseen respon%ent #it" a "uman or a computer$ !f a computer can foo you
into beie&ing t"at you are ta4ing to a "uman' one sc"oo of t"oug"t "o%s t"at t"e
computer can be sai% to be inteigent$
One #e:4no#n e(ampe of t"is p"enomenon is a program cae% E*!LA
%e&eope% by Josep" .eiGenbaum at t"e Massac"usetts !nstitute of Tec"noogy
+M!T,$2ou can con%uct a %iaogue #it" E*!LA 8ust as if you #ere on a psyc"iatrist7s
couc"$ Ho#e&er' E*!LA certainy cannot be sai% to 5t"in469 instea%' it uses se&era
ce&er programming tec"ni<ues to as4 pre%etermine% <uestions an% parrot segments
of your responses bac4 to you$
For e(ampe' if you #ere to te E*!LA t"at you misse% your c"i%ren' E*!LA
mig"t respon% #it" 5."y %o you miss your c"i%renD6 or 5Te me more about your
famiy$6 Eit"er response mig"t ea% you to beie&e t"at E*!LA understands #"at you
are saying' #"en actuay it is using some programming tric4s to construct responses
from your statements$ At"oug" it "as fooe% many peope into t"in4ing t"at t"ey
#ere con&ersing #it" an 5inteigent6 program' E*!LA generay is not consi%ere% to
"a&e passe% t"e Turing Test$
."ie t"e etter of t"e Turing Test may "a&e faen from fa&or' its spirit
en%ures$ Many peope in A! continue to maintain t"at #"en #e can simuate
inteigent be"a&ior so cosey t"at it is impossibe for e&en t"e most %iscerning
in%i&i%uas to te t"e %ifference bet#een a "uman an% a computer' it #i be fair to
say t"at #e "a&e create% a mac"ine t"at t"in4s$
$OU) $OU+D"+G $*./E)S O$ *"
2ohn !cCarthy' an assistant mat"ematics professor at Dart"mout"$
!arvin !in47y' a 8unior feo# in mat"ematics an% neuroogy at Har&ar%
+athaniel )oche4ter, Manager of !nformation Researc" for !/M$
Claude Shannon of /e *abs "as estabis"e% a reputation firmy in t"e fie%
of !nformation Science$
Of t"ese four 5foun%ing fat"ers6 of A!' McCart"y an% Mins4y continue to be ea%ers
of t"e A! community$
2ohn !cCarthy
Currenty a professor of computer science at Stanfor% -ni&ersity an% "as been
responsibe for se&era ma8or %e&eopments in artificia inteigence an% in
computer science in genera$
!n ?AI@ "e in&ente% *!SP +*!St Processor,' t"e most commony use% A!
programming anguage' #"ic" is especiay popuar in t"e -nite% States$
McCart"y7s most significant cae% time-sharing$ T"is process' #"ic" enabes
many peope to use a singe computer at one time' "as become an essentia
ingre%ient of mo%ern computing$
!arvin !in47y
.it" Jo"n McCart"y' Mar&in Mins4y foun%e% t"e Artificia inteigence
*aboratory at M!T' one of t"e most prestigious centers of artificia inteigence
researc" in t"e #or%$
Mins4y is best 4no#n for "is #or4 in t"e organiGation an% representation of
4no#e%ge t"roug"out t"e &arious A! tec"noogies$
He "as been a proific #riter in bot" tec"nica an% genera pubications' an%
remains one of t"e more outspo4en proponents of A!$
He confi%enty asserte% t"at 5#it"in a generation t"e probem of creating
artificial intelligence #i be substantiay so&e%$
EE>PE). >PE). S SS.E!S S.E!S
3/*. "S *+ E>PE). SS.E! ;
Human e(perts in any fie% are fre<uenty in great %eman% an% are' t"erefore'
usuay in s"ort suppy$ For e(ampe' a genera practitioner in a sma rura to#n may
be perfecty competent' but may be stymie% #"en confronte% by a patient #it"
unfamiiar symptoms of an unusua boo% infection$ !f a speciaist is not accessibe'
t"e patient may "a&e to sette for treatment t"at may be ess t"an i%ea$
T"e scarcity of e(pertise is "ar%y imite% to me%icine$ ."et"er you7re
repairing automobies' %riing for oi' fiing computer or%ers' or anayGing c"emicas'
t"ere are a times #"en access to 4no#e%ge' e(perience' an% 8u%gment of an e(pert in
t"e fie% #ou% be an in&auabe asset$ -nfortunatey' in most fie%s t"ere are more
probems t"an e(perts$
One soution to t"is %iemma is t"e expert system' an A! computer program
speciay %esigne% to represent "uman e(pertise in a particuar domain +area of
E(pert systems can "ep meet t"e foo#ing nee%s;
Ne# approac"es to business organiGation an% pro%ucti&ity$
Competence an%
Smart automate% e<uipment
E(pert systems act as inteigent assistants to "uman e(perts' as #e as
assisting peope #"o ot"er#ise mig"t not "a&e access to e(pertise$
At"oug" bot" e(pert systems an% 5%atabase6 programs feature t"e retrie&a of
store% information' t"e t#o types of programs %iffer greaty$ !n me%icine' for
e(ampe' a %atabase program mig"t be usefu for enumerating t"e symptoms of
&arious iness9 #"ie an e(pert system mig"t "ep to %iagnose an iness' %etermine its
causes' an% suggest programs of treatment$ Database programs contain knowledge
about t"eir particuar %omains' but t"at 4no#e%ge is ony %ecarati&e +factua,
Since a %atabase program cannot %ra# concusions by reasoning about t"e
facts in its %omain' users of a %atabase program are e(pecte% to %ra# t"eir o#n
concusions$ !n contrast' e(pert systems contain expertise' consisting of bot"
%ecarati&e an% proce%ura 4no#e%ge' #"ic" ao#s t"em to emuate t"e reasoning
process of "uman e(perts$
CO!PO+E+.S O$ *+ E>PE). SS.E!
T"ere is currenty no suc" t"ing as a 5stan%ar%6 e(pert system$ /ecause a
&ariety of tec"ni<ues are use% to create e(pert systems' t"ey %iffer as #i%ey as t"e
programmers #"o %e&eop t"em an% t"e probems t"ey are %esigne% to so&e$
Ho#e&er' t"e principa components of most e(pert systems are a 4no#e%ge base' an
inference engine' an% a user interference$

Eary in t"e "istory of artificia inteigence' many scientists beie&e% t"at by
emuating t"e process of "uman reasoning' computers cou% so&e probems #it"out
"a&ing access to arge amounts of specific 4no#e%ge$ At"oug" eary attempts to
so&e probems #it" pure reason seeme% promising' t"ey utimatey proved to be
T"e current approac" ta4en by A! scientists #"o are %e&eoping e(pert
systems is t"e opposite of t"e initia approac"$ !t is no# consi%ere% &ita t"at' if an
e(pert system is to gi&e inteigent a%&ice about a particuar %omain' it must "a&e
??access to as muc" %omain 4no#e%ge as possibe$ T"e component of an e(pert
system t"at contains t"e system7s 4no#e%ge is cae% its knowledge base$ T"is
eement of t"e system is so critica to t"e #ay most e(pert systems are constructe%
t"at t"ey are aso popuarity 4no#n as knowledge-based systems.
A 4no#e%ge base contains bot" %ecarati&e 4no#e%ge +facts about ob8ects'
e&ents' an% situations, an% proce%ura 4no#e%ge +information about courses of
action,$ Depen%ing on t"e form of 4no#e%ge representation c"osen' t"e t#o types of
4no#e%ge may be separate or integrate%$ At"oug" many 4no#e%ge representation
tec"ni<ues "a&e been use% in e(pert systems' t"e most pre&aent form of 4no#e%ge
representation currenty use% in e(pert systems is t"e rule-based production system
Simpy "a&ing access to a great %ea of 4no#e%ge %oes not ma4e you an
e(pert9 you aso must 4no# "o# an% #"en to appy t"e appropriate 4no#e%ge$
Simiary' 8ust "a&ing a 4no#e%ge base %oes not ma4e an e(pert system inteigent$
T"e system must "a&e anot"er component t"at %irects t"e impementation of
4no#e%ge$ T"at eement of t"e system is 4no#n &ariousy as t"e control structure'
t"e rule interpreter' or t"e rule interpreter' or t"e inference engine.
T"e inference engine 5%eci%es6 #"ic" "euristic search techniques are use% to
%etermine "o# t"e rues in t"e 4no#e%ge base are to be appie% to t"e probem$ !n
effect' an inference engine 5runs6 an e(pert system' %etermining #"ic" rues are to be
in&o4e%' accessing t"e appropriate rues in t"e 4no#e%ge base' e(ecuting t"e rues'
an% %etermining #"en an acceptabe soution "as been foun%$
Since t"e 4no#e%ge is not 5intert#ine%6 #it" t"e contro structure' an
inference engine t"at #or4s #e in one e(pert system may #or4 8ust s #e #it" a
%ifferent 4no#e%ge base' t"us re%ucing e(pert system %e&eopment time$
E&en t"e most sop"isticate% e(pert system is #ort"ess if t"e inten%e% user
cannot communicate #it" it$ T"e component of an e(pert system t"at communicates
#it" t"e user is 4no#n as t"e user interface$
T"e communication performe% by a user must be abe to %escribe your
bi%irectiona$ At t"e simpest e&e' you must be abe to respon% #it" its
recommen%ations$ !n practice' a user interface generay is e(cepte% to perform
a%%itiona functions$ 2ou may #ant to as4 t"e system to e(pain its 5reasoning6' for
e(ampe' or t"e system may re<uest a%%itiona information about t"e probem from
At"oug" t"e designers of e(pert systems generay "a&e a great %ea of
e(perience #it" computers' t"e inten%e% users of e(pert systems are fre<uenty
computer no&ices$ !t is' t"erefore' criticay important to ensure t"at an e(pert system
is especiay easy to use$
Most user interfaces ma4e "ea&y use of tec"ni<ues %e&eope% in anot"er A!
%iscipine; natura anguage processing$ Natura anguage tec"ni<ue ao#s you to
communicate #it" an e(pert system in or%inary Engis" an% enabe t"e computer to
respon% to you in t"e same anguage$ T"is type of user interface is sometimes cae% a
natural language front end.
$E*.U)ES O$ *+ E>PE). SS.E!
?>."at are t"e features of a goo% e(pert systemD At"oug" eac" e(pert
system "as its o#n particuar c"aracteristics' t"ere are se&era features common to
many systems$ T"e foo#ing ist criteria are important prere<uisites for t"e
acceptance of an e(pert system by its inten%e% users$ T"ese criteria form a usefu ist
of features t"at are %esirabe in any e(pert system$
5T"e program s"ou% be useful6$ An e(pert system s"ou% be %e&eope% to
meet specific nee%' one for #"ic" it is recogniGe% t"at assistance is nee%e%$
5T"e program s"ou% be educational when appropriate6$ An e(pert system
may be use% by non:e(perts' #"o s"ou% be abe to increase t"eir o#n
e(pertise by using t"e system$
5T"e program s"ou% be abe to explain its advice6$ An e(pert system s"ou%
be abe to e(pain t"e 5reasoning6 process t"at e% it to its concusions' to
ao# you to %eci%e #"et"er to accept t"e system7s recommen%ations$
5T"e program s"ou% be abe to respond to simple questions6$ /ecause peope
#it" %ifferent e&es of 4no#e%ge may use t"e system' an e(pert system
s"ou% be abe to ans#er <uestions about points t"at may not be cear to a
5T"e program s"ou% be abe to learn new knowledge6$ Not ony s"ou% an
e(pert system be abe to respon% to your <uestions' it aso s"ou% be abe to
as4 <uestions to gain a%%itiona information$
5T"e program7s 4no#e%ge s"ou% be easily modified6$ !t is important t"at
you be abe to re&ise t"e 4no#e%ge base of an e(pert system easiy to correct
errors or a%% ne# information$
5T"e program s"ou% be useful6$ An e(pert system s"ou% be %e&eope% to
meet a specific nee%' one for #"ic" it is recogniGe% t"at assistance is nee%e%$
++*.U)*- *.U)*- --*+GU*GE *+GU*GE PP)OCESS"+G )OCESS"+G
+*.U)*- -*+GU*GE U+DE)S.*+D"+G
.e %on7t "a&e to use any 4in% of speciaiGe%' tec"nica anguage to
communicate #it" ot"er peope ) #e use natural anguages' suc" as Engis"$ !f
computers cou% understand natura anguage' you cou% te t"em #"at you #ante%
t"em to %o in or%inary' e&ery%ay Engis"$ !f computers cou% generate natura
anguage' t"ey cou% as4 you <uestions an% gi&e you information in anguage t"at
#ou% be easy to un%erstan%$ T"e p"rase natural language processing generay refers
to anguage t"at is type%' printe%' or %ispaye%' rat"er t"an being spo4en$
!n bui%ing e(pert systems' scientists are attempting to "a&e mac"ines perform
inteigent acti&ities at a "ig"er e&e t"an most peope9 after a' fe# "umans are
e(perts$ On t"e ot"er "an%' in trying to create programs t"at ao# computers to
un%erstan% natura anguage' scientists are trying to teac" computers to emuate a s4i
t"at neary a of us perform #it"out any troube$ O%%y enoug"' #"ie e(pert systems
area%y "a&e been buit t"at perform at t"e e&e of "uman e(perts' computers sti
cannot un%erstan% natura anguage as #e as a typica four:year:o% c"i%$
Compare% to peope' computers re<uire a great %ea of precision in
communication$ For e(ampe' if you #ant someone to bring you somet"ing to %rin4'
you mig"t get t"e same resut by saying any of t"e foo#ing;
Pease get me somet"ing to %rin4$
/ring me a %rin4$
0ot anyt"ing to %rin4D
!7m t"irsty ) can you get me somet"ingD
-nfortunatey' a computer %oes not "a&e t"at 4in% of inguistic fe(ibiity$ For
e(ampe' a common 5operating system6 cae% MS:DOS re<uires t"e foo#ing
comman% to instruct a computer to copy a fies from one %is4ette to anot"er;
COP *, B.B %,
!f you type 5Pease copy a fies on %is4ette A to %is4ette /6 instea%' t"e
computer %oes not 4no# #"at you are typing to te it to %o$ T"e computer ony
accepts an instruct entere% precisey in a form t"at it "as been programme% to
un%erstan%$ !f you misspe a #or%' mispace a coon' or omit an asteris4' t"e
computer cannot e(ecute your instruction propery$
P)O%-E!S "+ +*.U)*- -*+GU*GE U+DE)S.*+D"+G
T"e natura anguage #it" #"ic" #e normay communicate is informa an%
can be e(tremey ambiguous' imprecise an% incompete ) e&en #"en it is #ritten
correcty$ ."en you a%% t"e probems of t"is in"erent informaity to t"e fact t"at #e
often use natura anguage 5incorrecty6 ) t"at is' not stricty in accor%ance #it" rues
of grammar an% synta( ) you may begin to un%erstan% #"y computers "a&e so muc"
%ifficuty in un%erstan%ing peope$
Many of t"e t"ings #e say can be interprete% in more t"an one #ay$ T"is
ambiguity sometimes resuts in miscommunication bet#een peope an% is one of t"e
primary probems in programming computers to un%erstan% natura anguage$ Some
of t"e factors t"at contribute to t"e ambiguity of natura anguage are as foo#s;
!ultiple 3ord !eaning4 ) !t is not uncommon for a singe #or% to "a&e
more t"an one meaning' as in t"e foo#ing sentences$
.he pitcher i4 angry$
.he pitcher i4 empty$
Of course' t"e #or% 5pitc"er6 in t"e first sentence refers to a base ba payer'
#"ie t"e 5pitc"er6 in t"e secon% sentence is a container %esigne% to "o% an% pour
i<ui%s$ .it"out 4no#ing somet"ing about t"e c"aracteristics of bot" 4in%s of pitc"er
is meant in eac" sentence$
Syntactic *m5iguity ) Some of t"e ambiguity in Engis" is cause% by
pecuiarities in its synta($ Consi%er t"e foo#ing sentence$
" hit the man 8ith the hammer.
Ho# %o you interpret t"e sentenceD Di% ! pic4 up a "ammer an% "it a man' or
%i% ! "it a man #"o #as "o%ing a "ammerD -ness it is abe to un%erstan% t"e conte(t
in #"ic" t"e sentence appears' a computer may be unabe to %etermine t"e inten%e%
Unclear *ntecedent4 ) .e fre<uenty use pronouns in pace of pre&iousy
use% nouns$ T"is can create occasiona ambiguity' as in t"e foo#ing
2ohn hit %ill 5ecau4e he 4ympathi9ed 8ith !ary.
!s Jo"n or /i t"e antece%ent of 5"e6D !n ot"er #or%s' #"o sympat"iGe% #it"
MaryD As in t"e case of syntactic ambiguity' you cannot %etermine t"e antece%ent of
5"e6 #it"out estabis"ing a conte(t for sentence$
.e %o not a#ays say a of #"at #e mean$ /ecause #e s"are common
e(periences' #e usuay can omit many %etais #it"out fear of being misun%erstoo%9
#e assume t"at our isteners can 5rea% bet#een t"e ines6$
As an e(ampe'
@2ohn 8ent out to a re4taurant la4t night. /e ordered 4tea7.
3hen he paid for it, he noticed that he 8a4 running out of money.A
Di% Jo"n eat t"e stea4D At"oug" it is not state% e(picity in t"e story' you
probaby assume% t"at "e %i%9 after a' #"y ese #ou% "e "a&e pai% for itD 2our
e(pectations of i4ey e&ents in t"at particuar situation ao#e% you to un%erstan%
information t"at #as not incu%e% in te(t$ To be abe to compre"en% incompete
information' a computer must posses t"e same 4in% of situationa e(pectations$
A%%ing to probems in"erent in un%erstan%ing correcty structure% natura
anguage is t"e fact t"at natura anguage se%om a%"eres to rues$ For e(ampe' t"e
correspon%ence t"at you recei&e may incu%e mista4es in any of t"e foo#ing areas;
Speing errors'
Transpose% #or%s'
-ngrammatica constructions'
!ncorrect synta('
!ncompete sentence an%Kor
!mproper punctuation$
."ie too many mista4es may ma4e a etter or a memo incompre"ensibe'
peope can o&eroo4 a &ariety of errors an% <uic4y ascertain t"e inten%e% meaning$ A
computer %esigne% to un%erstan% natura anguage must be abe to un%erstan%
inaccurate uses of anguage at east as #e as a person$
USES O$ +*.U)*- -*+GU*GE U+DE)S.*+D"+G
Muc" of t"e researc" t"at "as con%ucte% on natura anguage un%erstan%ing
"as been concerne% #it" t"e %e&eopment of natural language interfaces +N*!7s,'
programs t"at ao# you to 5interface6 +communicate, #it" a computer in e&ery%ay
Engis"$ Aso 4no#n as natural language front ends' N*!7s usuay incu%e bot"
un%erstan%ing an% generation capabiities so t"at t"ey can bot" un%erstan% #"at you
type an% %ispay te(t t"at is easy for you to un%erstan%$
!n effect' an N*! 5stan%s6 bet#een you an% t"e computer +as in fig$,$ 2ou
actuay %o not communicate %irecty #it" t"e computer9 bot" you an% t"e computer
communicate #it" t"e N*!' #"ic" transates an% for#ar%s t"e communicate%
Typicay' to re<uest information from a %atabase' you must use a se&erey
imite% set of comman%s an% structure your re<uest in a precise format$ For e(ampe'
to retrie&e t"e information regar%ing t"e ist of magaGine artices about automobie
insurance from t"e %atabase of an information ser&ice t"en #e type t"e foo#ing;
4elect maga9ine4 from Cin4urance 4ervice nameDE
!f any #or% is misspee%' or if t"e #or%s are not entere% in t"e correct or%er'
or if t"e synta( is #rong' t"en t"e program %oes not retrie&e t"e %esire% information$
Ho#e&er' if t"e ser&ice #ere e<uippe% #it" a natura anguage interface' you mig"t be
abe to re<uest t"e same information in any of t"e foo#ing #ays;
S"o# me a ist of artices about automobie insurance$
."at %o you "a&e about car insuranceD
Anyt"ng about car insruanceD
Notice t"at t"e ast e(ampe contains t#o misspeings an% is not a compete
sentence$ Ho#e&er' you #ere abe to figure out #"at it meant' so a natura anguage
interface t"eoreticay s"ou% be abe to %o t"e same$
Currenty' an N*! %oes not e(it t"at can interpret correcty e&ery re<uest
entere% in e&ery format$ Ho#e&er' natura anguage tec"noogy is impro&ing rapi%y'
an% programs %o e(ist t"at ao# #i%e fe(ibiity in re<uesting information from
!f a %igita computer can ony 5un%erstan%6 binary numbers' "o# can #e use
computers to process etters an% #or%sD Ho# can a computer process symbosD
One simpe #ay in #"ic" a computer can process symbos is by using a
system of co%es to represent etters an% ot"er c"aracters$ Morse co%ing system is
#i%ey use% to represent etters$ Morse co%e uses &arious combinations of 8ust t#o
symbos' a %ot an% a %as"' to represent a t"e etters of t"e ap"abet$
Computers use a binary co%e system to represent etters an% ot"er symbos$
T"e co%e most commony use% to%ay is cae% AS!! +American Stan%ar% Co%e for
!nformation !nterc"ange,9 anot"er computer co%e system' use% by !/M' is cae%
E"#! +E(ten%e% /inary Co%e% Decima !nterc"ange Co%e,$
."en computers began to be use% in t"e business #or%' it #as important t"at
a programming language be %e&eope% t"at cou% process etters as #e as numbers$
CO/O* +COmmon /usiness Oriente% *anguage,' "as t"is capabiity$ !t can compare
t#o names to %etermine if t"ey are i%entica' for e(ampe' an% it can sort a ist of
names in ap"abetica or%er ' but #e %on7t consi%er t"is cru%e 4in% of symboic
processing to be muc" more inteigent t"an numeric processing$
To perform t"e 4in% of symboic processing t"at #e #ou% consi%er
5inteigent6' it #ou% be "epfu to "a&e a programming anguage #it" greater
symboic capabiities t"an CO/O*$
P)OG)*!!"+G $O) *)."$"C"*- "+.E--"GE+CE
*anguages i4e CO/O* anguage' "a&e not pro&en to be especiay efficient
for #riting A! programs$ A! programmers "a&e "a% to %e&eop t"eir o#n
programming anguages to ao# t"em to manipuate symbos more efficienty$
T"ese specia A! anguages are 4no#n as 5symboic processing programming
anguages6$ T"e most prominent A! anguage is Jo"n McCart"y7s &enerabe *!SP' but
t"ere are ot"er important anguages use% in A!$ *!SP #as not t"e first programming
anguage %e&eope% for A! ) t"at %istinction is reser&e% for !P*$
"P- C"nformation Proce44ing -anguageD
T"e *ogic T"eorist' often consi%ere% to be t"e first A! program' #as
%e&eope% by Aen Ne#e' J$C$ S"a# an% Herbert Simon$ /efore t"ey cou% create
t"e *ogic T"eorist' Ne#e' S"a# an% Simon "a% to fin% a programming anguage
?Ct"at #ou% et t"em represent t"e symboic concepts t"ey #ere trying to program$
T"e ony anguage t"at seeme% e&en remotey suitabe #as a anguage t"at t"ey "a%
create% earier for #riting a program to pay c"ess ) a anguage t"at t"ey "a%
informay name% !P*$
Fi&e &ersions of !P* F %ubbe% !P*:! t"roug" !P*:1 # #ere actuay %e&eope%
at &arious times$ .i%esprea% use of !P* "as since been suppante% by a "ig"er ece'
more con&enient A! anguage; *!SP$
Se&era popuar features of symboic processing anguages oriente% #it" !P*$
One suc" feature is t"at of a generator' a process t"at computes or retrie&es a series of
&aues' one at a time$ For e(ampe' if you construct a generator to retrie&e t"e names
of customers in 0eorgia from a %atabase' t"e generator retrie&es t"e name of a
%ifferent 0eorgia customer eac" time you use it' unti a t"e names of your 0eorgia
customers "a&e been retrie&e%$
A criticay important symboic programming concept t"at #as first
impemente% in !P* is association$ !n our min%s' #e reate groups of symbos to eac"
ot"er in &arious #ays$ An inteigent program aso must be abe to estabis"
associations bet#een symbos' not merey store t"em as unreate% pieces of %ata$
T"e tec"ni<ue use% by !P* to represent associations bet#een symbos is a
structure cae% a list. T"e processing of symbos in ist structures' an arrangement
t"at originate% #it" !P*' is per"aps t"e most important concept of symboic
processing$ !n fact' t"e name of t"e most popuar symboic processing anguage'
*!SP' is an acronym for 5*!St Processor6$
A ist is represente% in t"e memory of a computer as a series of cells as s"o#n
in fig$ Eac" ce can contain t#o parts' or fields$ !n a simpe ist' one fie% contains a
symbo an% t"e ot"er fie% contains a pointer to ne(t ce in t"e ist$ !n a more compe(
ist +suc" as in *!SP,' eac" se can contain a pointer to a simpe or to t"e ne(t ce$
Due to t"is type of arrangement t"e ces in t"e memory are not arrange% in a
consecuti&e se<uence' but t"ey are scattere% in t"e memory' yet t"ey are firmy
associate%$ /ecause eac" ce can point to ot"er ces' a ist can be dynamic9 t"at is' its
siGe an% s"ape can c"ange continuay t"roug"out t"e e(ecution of t"e program as
s"o#n in t"e fig$
-"SP C-"St Proce44orD
Jo"n McCart"y' of M!T propose% t"e %e&eopment of an A! program' t"e
A%&ice Ta4er' t"at #ou% use t"e tec"ni<ues of forma mat"ematica ogic in or%er to
ma4e %e%uctions an% e("ibit 5commonsense6$ /ecause t"e A%&ice Ta4er cou% not be
impemente% in t"e e(isting programming anguage' McCart"y %esigne% "is o#n
programming anguage$ !t is t"e most #i%ey use% symboic processing anguage in
t"e #or%9 it is no# t"e secon% o%est programming anguage +after FORTRAN,$ T"at
anguage is 'of course' *!SP$
./E $E*.U)ES O$ -"SP
T"e origina &ersions of *!SP pro&i%e% se&era features t"at ma%e it an
e(tremey attracti&e programming anguage for artificia inteigence' incu%ing of
course' its use of t"e ist as a %ata structure$ As *!SP "as continue% to %e&eop o&er
t"e years' a%%itiona features "a&e been impemente% t"at "a&e furt"er increase% its
A list in *!SP is a se<uence of elements' #"ere eac" eement may be eit"er an
atom +a singe ob8ect, or anot"er ist$ Notice t"at t"e #or% list is part of its o#n
%efinition9 t"at is' a list may be a se<uence of lists$ ."en a %efinition of a term
incu%es t"e term itsef' t"at %efinition is sai% to be recursive9 in more genera terms'
an item is recursi&e if it incu%es itsef$
*!SP is not ony recursi&e in t"e %efinition of its %ata structure but aso in t"e
programming tec"ni<ues it ao#s$ For e(ampe' t"e t#o ) part mat"ematica
%efinition of t"e factoria of a positi&e integer is as foo#s;
?$ T"e factoria of ? is ?$
>$ T"e factoria of an integer greater t"an ? is t"at integer mutipie% by t"e
factoria of t"e ne(t o#er integer +t"e integer minus ,$
Some programming anguages %o not ao# recursion9 t"at is' you cou% not
use t"e abo&e tec"ni<ue to cacuate t"e factoria of a number$ *!SP' on t"e ot"er
"an%' faciitates t"e use of t"e recursion' an important tec"ni<ue in inteigent probem
Programs As Data
A *!SP program is itsef a *!SP ist$ T"is means t"at a *!SP program can be
treate% as %ate by anot"er program e&en by itsef$ T"e benefits of t"is uni<ue
approac" incu%e t"e foo#ing;
?$ /ecause *!SP %ata an% program instructions are in e(acty t"e same format'
information about t"e properties of an ob8ect +declarative 4no#e%ge, can be
integrate% easiy #it" information about #"at actions to perform +procedural
>$ A *!SP program can actuay mo%ify its o#n program instructions ) or a%%
entirey ne# instructions to itsef$ !t e&en is possibe for a gi&en *!SP program
to #rite an entirey ne# *!SP program$ T"is is especiay "epfu in an A!
program t"at is earning to perform a ne# tas4$
B$ *!SP programs can easiy 4eep trac4 of #"ic" instructions "a&e been
e(ecute%' "o# often eac" "as been e(ecute%' an% #"at or%er t"ey "a&e been
e(ecute%$ T"is is a &auabe feature for e(pert systems' because t"ey often are
e(pecte% to e(pain "o# t"ey "a&e arri&e% at t"eir concusions$
!nteracti&e !nterpreter
Since *!SP is an interpreted anguage' t"e *!SP interpreter transates eac"
instruction into mac"ine anguage as it is nee%e% to e(ecute t"e program$ T"is
eiminates t"e #aiting time t"at #ou% be re<uire% if it #ere necessary to compile t"e
entire program eac" time a c"ange #ere ma%e$ As t"e %e&eopment of inteigent
programs is fre<uenty a tria:an%:error process' being abe to test program c"anges
<uic4y is an important benefit$
*!SP aso #as %esigne% as an interactive anguage$ /efore *!SP' t"e typica
met"o% of e(ecuting a program #as for you to run a stac4 of punc"e% car%s t"roug"
t"e computer7s car% rea%er$ T"e computer #ou% e(ecute your program an% pro&i%e
you #it" a printout of resuts$ !n contrast' a *!SP program interacts #it" t"e
programmer in e&ery p"ase of %e&eopment' greaty faciitating e(perimentation #it"
ne# programming tec"ni<ues$ *!SP programs aso can be interacti&e #"ie t"ey are
e(ecuting' so t"ey can obtain any a%%itiona information nee%e% to so&e a probem$
.he Element4 Of -"SP
At"oug" *!SP "as been use% to create some of t"e most sop"isticate%
computer programs e&er #ritten' t"e basic structure of *!SP is fairy straig"tfor#ar%$
T"e smaest unit in *!SP is t"e atom$ An atom may be a number or a symbo$
For e(ampe' t"e foo#ing may be *!SP atoms;
T"e atoms in t"e first coumn are numeric atoms or 8ust numbers. T"e rest of
t"e atoms iste% abo&e are symbolic atoms or symbols.
A list is a series of atoms or ists' encose% in parent"eses$ T"e foo#ing are
e(ampes of *!SP ists$
T"at ist' in turn' is one of t"e t#o eements of t"e main ist +t"e atom
AN!MA*S is t"e ot"er eement,$ Atoms an% ists coecti&ey are often cae%
symbolic expressions or 8ust expressions.
A procedure is an eement in a ist t"at specifies "o# somet"ing is to be %one$
!f present' a proce%ure is a#ays t"e first eement in a ist$ T"e remaining eements'
t"e %ata #it" #"ic" t"e proce%ure is to #or4' are t"e arguments$ A *!SP program is
simpy 5a coection of proce%ures inten%e% to #or4 toget"er6$
Some proce%ures' cae% primitives' are buit into *!SP$ For e(ampe' in t"e
ist +M B I,' M is a primiti&e t"at specifies t"e action to ta4e #it" t"e arguments B an%
I$ T"us' t"e proce%ure M in%icates a%%ition of B an% I$ T"e ans#er of +M B I, is @$
Ot"er proce%ures are %efine% by t"e programmer #it" t"e DEF-N +DEfine
F-Nction, primiti&e$ For e(ampe' t"e foo#ing e(pression is t"e %efinition of
FACTOR!A*' a proce%ure t"at uses recursi&e met"o% to compute t"e factoria of
positi&e integer$
+COND ++P N ?, ?,
+T +O N +FACTOR!A* +: N ?,,,,,,
*!SP can e&auates e(pressions t"at use t"at proce%ure$ For
e(ampe' t"e resut of e&auating t"e e(pression +FACTOR!A* I, is ?>E$
Symbo Manipuation
A <uic4 intro%uction to a fe# basic symbo:manipuation primiti&es to get t"e
i%ea of "o# *!SP can be use% to #or4 #it" ists$
C*), T"e CAR primiti&e retrie&es t"e first eement of a ist' as in t"e foo#ing
E6pre44ion Value
+CAR Q+A / C,, A
+CAR Q++A /, C,, +A /,
+CAR +CAR Q++A /, C,,, A
5Neste%6 e(pressions are e&auate% one at a time' starting from t"e innermost
parent"esis an% #or4ing out$
CD), T"e CDR primiti&e' t"e compement of CAR primiti&e' retrie&es a but t"e
first eement of a ist' as in t"e foo#ing e(ampes;
E6pre44ion Value
+CDR Q+A / C,, +/ C,
+CDR Q++A /, C,, +C,
+CDR +CAR Q++A /, C,,, +/,
SE., T"e SET primiti&e assigns a &aue to a symbo' as in t"e foo#ing e(ampes;
E6pre44ion Sym5ol Value
+SET J!M +CAR Q+A / C,,, J!M A
Artificia !nteigence +A!, is a combination of computer
science' p"ysioogy' an% p"iosop"y$ !t is t"e area of computer science focusing on
creating mac"ines t"at can engage on be"a&iors t"at "umans consi%er inteigent$
Researc"ers are creating systems #"ic" can mimic "uman t"oug"t' un%erstan%
speec"' beat t"e best "uman c"ess payer' an% countess ot"er feats ne&er before
possibe an% in t"e near future Artificia !nteigence may impact our i&es$
T"ere are no# in t"e #or% mac"ines t"at can t"in4' t"at can
earn an% t"at can create$ Moreo&er' t"eir abiity to %o t"ese t"ings is going to increase
rapi%y unti::in a &isibe future::t"e range of probems t"ey can "an%e #i be
coe(tensi&e #it" t"e range to #"ic" t"e "uman min% "as been appie%$
*SC"" ) American Stan%ar% Co%e for !nformation !nterc"ange$ T"is is a
stan%ar% co%e use% to represent etters' numbers an% specia functions as a
series of Geros an% ones$
E6pert Sy4tem ) A computer program #"ic" contains bot" %ecarati&e
4no#e%ge an% proce%ura 4no#e%ge to emuate t"e reasoning process of
"uman e(perts in a particuar %omain$
-"SP ) *!St Processor$ An A! programming anguage t"at is especiay
popuar in t"e -nite% States$
-i4t ) A se<uence of eements encose% in parent"esis' #"ere eac" eement is
eit"er an atom or anot"er ist$
+atural -anguage "nterface C+-"D ) A program t"at ao#s you to
communicate #it" a computer in norma Engis"$
Speech )ecognition ) An area of A! researc" #it" t"e utimate goa of
ao#ing computers to recogniGe an% un%erstan% "uman speec"' regar%ess of
t"e spea4er$
.uring .e4t ) An 5imitation game6 %e&ise% by Aan Turing #"ic" is use% to
%etermine if a computer is t"in4ing$ An interrogation attempts to %isco&er
#"ic" of t#o respon%ents is a person an% #"ic" is a computer by engaging in
t"oug"tfu con&ersations$
?$ -n%erstan%ing Artificia !nteigence ) by ) HENR2 C$ M!SH3OFF
>$ ###$t"in4<uest$org
B$ ###$cs $ber4eey$e%u