Upload
jonadri-bundo
View
95
Download
5
Embed Size (px)
Citation preview
Tematikat
• Te mesuarit ne sistemet e inteligjences artificiale
• Gjuhet e programimit te inteligjences artificiale
• Disa koncepte te psikologjise artificiale
KONCEPTI I TE MESUARIT
• Vetepermiresim
• Aftesi per t’u adaptuar me situata te reja
• Modifikimi i sjelljes
• Formulimi i koncepteve , tendenca drejtpermiresimit, aftesia per te kryerpergjithesime apo per tu shkeputur prej tyredrejt situatave te vecanta
METODA TE TE MESUARIT
• Nepermjet burimeve te jashtme ne
lidhje me sistemet e IA (H-D ne
lidhje me boten e jashtme)
• Investigime mbi burimet e reja te
informacionit
• Vleresimi i pasojave te veprimeve te
kryera me pare
METODA TE TE MESUARIT (VAZHDIM ...)
• Rote learning
• Advice learning
• Learning concepts
from examples or
evidence
METODA TE TE MESUARIT (VAZHDIM ...)
• Learning by
exploration
• Learning by
analogy
ALGORITME TE TE MESUARIT
Dy tipe kryesore te algoritmave :
• Pergjithesim drejt specifikimit (G-S)
• Specifik drejt pergjithesimit (S-G)
ALGORITME TE TE MESUARIT (VAZHDIM...)
Nje pershkrim ci“mbulon” nje ekzemplarelementar nese:
-Konsiston ne njeelement pozitiv.
-Eshte inkonsistentme nje element negativ.
KonsistencaShpjegimi“Mbulimi”
PROLOG
Gjuheprogramimi e nivelit te
larte
General purpose
Aftesillogaritese
“linguistike”
Gjuhedeklaruese
E bazuar ne “rregullat”
Joeksplicite
Baze tedhenashdinamike
Klauzolat
Faktet • has(house, door)
Qellimet • ?-has(What, door)
Rregullat• has(X, door) : - is_house(X)
Elemente te gjuhes
does_research(rjs).documents_research(rjs).writes_proposals(rjs).gets_funded(rjs).prepares_lectures(rjs).lectures_well(rjs).gets_good_evaluations(rjs).gets_tenure (Faculty): - publishes (Faculty),gets_research(Faculty), teaches_well(Faculty)publishes(Professor): - does_research(Professor),documents_research(Professor)gets_research (Researcher): - writes_proposals(Researcher), gets_funded(Researcher)teaches_well (Educator): -prepares_lectures(Educator),lectures_well(Educator),gets_good_evaluations(Educator)
# Kerkimi me i thjeshte i informacionit do te ishte sipas sintakses: ?-gets_tenure(Who)
TRAJTIM SIPAS SHEMBUJVE :
Aplikim i IA per mbrojtjen e sistemeveelektrike te fuqise :
(VAZHDIM…)
protected_by( Line_x, Breaker_l, Breaker_r ),generation(Breaker_l),generation(Breaker_r)// rregull per funksionimin e celesit te anes se majte te linjes:correct_oper_left(Line_x, Breaker_l, Breaker_r): -protected_by(Line_x, Breaker_l, Breaker_r), fault(Line_x), generation( Breaker_l),operated( Line_x, Breaker_l).correct_oper_right( Line_x, Breaker_l, Breaker_r): -protected_by( Line_x, Breaker_l, Breaker_r),fault(Line_x),generation(Breaker_r),operated(Line, Breaker_r).
Per te arritur nje pershkrim te kenaqshem me prolog do te nevojitej :
①Topologjia e rrjetit ose
ndryshe pershkrimi linjave te
interkoneksionit. Ketu duhen
specifikuar ne menyre eksplicitetipet dhe kahet e
lidhjeve.
②
Percaktimi ivendndodhjes se gjeneratoreve.
③
Percaktimi istatusit te te
gjithecelesave.
Maksimalisht mund te kemi keqfunksionim vetem nga nje celes
Celesi qe mund te keqfunksionoje ka nje ose me shume celesa backup
Maksimalisht mund te kete probleme vetem ne nje linje
Relete detektojne probleme vetem sipas nje kahu
Per sistemin e Backup pranojme:
Topologjiaprotected_by( Line, Breaker1, Breaker2)interpretimi i pohimit: “linja me emrin variabel Line eshte e mbrojtur nga celesat me emra variabelBreaker1 dhe Breaker2”.Kodi per kete pjese per rrjetin me siper:
protected_by(line1, 1, 2),protected_by(line2, 3, 4),protected_by(line3, 5, 6),protected_by(line4, 7, 8).
// connect(Breaker1_name, Breaker2_name) ky funksion do te thote qe dy celesat me emra variabel Breaker1_name, Breaker2_name jane te lidhur me njeri-tjetrin me ane te busit perkates.
connect(2,3),connect(2,6),connect(2,7),connect(3,6),connect(3,7),connect(6,7).
generation(Breaker_name) qe do te thote qe me celesin te vendosur si argument kemi nje gjenerator te lidhur.
generation(1),generation(4),generation(5),
” operate(Breaker_name)” qe do te thote se deklarojme se cilet celesa jane vendosur ne gjendje pune. Ne rastin ne studim pranojme skenarin e meposhtem:
operate(1),operate(4),operate(5).
// me siper jepet deklarimi i fakteve// me tej procedojme me rregullatconnection(B1,B2) : - connect(B1,B2),//other_breaker(known_breaker_name, unknown_breaker_name)other_breaker(B1,B2) : - protected_by( _ , B1, B2),other_breaker(B1,B2) : - protected_by( _ , B2, B1).has_gen( B ) : - generation ( B ), !.has_gen( B ) : - connection(B,B1),other_breaker(B1,B2),has_gen(B2), !.
Topologjia(Vazhdim…)
back_up( B1, B2). (B2 eshte nje nga celesat qe mund t’i japin backup B1)back_up(B1,B2): - not(generation(B1)),
connection(B1,B3),other_breaker(B3, B2),has_gen(B2).
//Kodi per te testuar nese backup nuk funksionoi:backup_did_not_work(B1,B2) : - back_up(B1,B2),
not(operate(B2)).
//Shembull per gjetjen e gjeneratoritprotected_by(line1,1,2),
protected_by(line2,3,4),
protected_by(line3,5,6),
connect(2,3),
connect(4,5),
generation(1),
generation(6), connection(B1,B2) : - connect(B1,B2),
connection(B1, B2) : - connect (B2,B1),
other_breaker(B1,B2) : - protected_by( _ , B1, B2),
other_breaker(B1, B2) : - protected_by ( _ , B2, B1),
has_gen(B) : - generation (B),
write(‘Breaker’), write(B),
write(‘is connected to a generation directly.’),
nl, has_gen (B) : - connection ( _ , B, _ , B1),
other_breaker(B1,B2),
write(‘Breaker’), write(B),
write(‘is not connected to a generation correctly’),
nl, write(‘but’),
write(‘ it is connected to breaker’),write (B1), nl,write(‘and breaker’), write(B1),write(‘protect a line’),write(‘ with breaker’ ), write(B2), write(‘.’),nl.has_gen(B2), !.
Pergjigjetpas
simulimitdo teishin:
Percaktimi i vendndodhjes se problemit :
no_source_coming(B1) :- not(has_gen(B1)).
no_source_coming(B1) :- has_gen(B1),operate(B1).
no_source_coming(B1) :- back_up(B1,_),
not(backup_did_not_work(B1,_)).
//Per te gjetur linjen ne te cilen kemi problemi aplikojme kodin e meposhtem:
elect_isolated(L, B1, B2) :-no_source_coming(B1),
no_source_coming(B2), !.
// Interpretim dhe display
printout(B) :- has_gen(B),operate(B),
write(‘Breaker’),
write(B),
write(‘operated correctly.’), nl, !.
printout(B) :- has_gen(B),
not(operate(B)),
write(‘Breaker’),
write(B),
write(‘malfunctioned.’), nl,
not(printbackup(B)), !.
Programi i plote per gjetjen e problemitne linje dhe mbrojtjen e sistemit:
// mbi topologjine
protected_by(line1,1,2).
protected_by(line2,3,4).
protected_by(line3,5,6).
protected_by(line4,7,8).
connect( 2,3).
connect(2,6).
connect(2,7).
connect(3,6).
connect(3,7).
generation(1).
generation(4).
generation(5).
// statusi i celesave
operate(1).
operate(4).
operate(5).
// rregullat
connection(B1,B2) :-connect(B1,B2).
connection(B1,B2) :-connect(B2,B1).
(Vazhdim…)
other_breaker(B1,B2) :-protected_by( _, B1, B2),other_breaker(B1,B2) :-protected_by( _, B2, B1).has_gen(B) :- generation(B) !.has_gen(B) :- connection(B,B1),
other_breaker(B1,B2),has_gen(B2), !.
back_up(B1,B2) :-not(generation(B1)),
connection(B1, B3),
other_breaker(B3,B2),
has_gen(B2).back_up__not_work(B1,B2) :-back_up(B1,B2),
not(operate(B2)).no_source_coming(B1) :-not(has_gen(B1)).no_source_coming(B1) :-has_gen(B1),
operate(B1).no_source_coming(B1) :-back_up(B1,_),
not(backup_did_not_work(B1,_)).fault(L, B1, B2) :-no_source_coming(B1),
no_source_coming(B2), !.//printbackup(B) jep informacion mbi gjithe celesat qe operuan ne menyre korrekte dhe kthen FALSE
printbackup(B) :- back_up(B,B1),
operate(B1),
write(‘Breaker’),
write(B1),write(‘
operated correctly as a back_up breaker’),
nl, fail.
(Vazhdim…)
// printout jep interpretimin perkates
printout(B) :- has_gen(B),
operate(B),
write(‘Breaker’),
write(B),
write(‘operated correctly’), nl, !.
printout(B) :- has_gen(B),
not(operate(B)),
write(‘Breaker’),
write(B),
write(‘malfunctioned’),nl,
not(printbackup(B)), !.
// Goal
run :- protected_by(L,B1,B2),
fault(L,B1,B2),
write(‘Possible fault location is on’),
write(L), nl,
printout(B1),
printout(B2),
nl, nl,
fail.
Logjika Kohore
Pohimet qe kane qene te verteta me pare, mund te jene edhe sot te tilla, por nuk mund te flasim per te ardhmen. (RWT proces dinamik)
Vendimet e marra(apo te mosmarra)ne kohen
aktuale shkaktojneqe situata tecaktuara ne teardhmen te kene
gjendje tecaktuara.
Njerezit arsyetojne dhe planifikojne ne
nje sfere historie , bazohen ne
deadline, pohime dhe kufizime te tjera kohore.
Sipasrregullave
IF <statement> ... THEN
<consequent>
Sipaslogjikeskohore
WHEN<statement> .... THEN ...
- Henceforth(subsequently)- Until- Never- Eventually- Previously- Before, after dhe during
Trajtim i RWT sipas nje shembulli
holds(A,I)
/* database */
current(1989),
born(Morris,1974), born(Jesse,1983),
born(Ruffie,1979), born(Ralphie, 1965),
born(Harry, 1981), born(Rasp,1980),
born(Tiger, 1960), killed(Ruffie,1983),
died(Ralphie, 1971), died(Tiger, 1964),
died(Morris, 1985).
// shembuj pohimesh te kushtezuara RWTwas_alive(X) :- born(X, _ ),
dead(X),unborn(X) :- born(X,date),
current(Now),Now<Date,
unborn(X) :- not(born(X, _ )),will_die(X) :- born(X, then),
current (Now),Then=<Now,not(dead(X)),
dead(X) :- died(X,When),current(Now),Now>When,
dead(X) :- killed (X, When),current(Now),Now>When,
age(X, Years) :- born(X,Date),current(Now),
Years is Now-Date,Years> 0,not(dead(X)).alive(X) :- born(X, _ ),
not(dead(X)),same_age(X,Y) :- not (X,Y),
alive(X),
alive(Y), age(X,A1),
age(Y,A2), A1==A2,
// pohime te kushtezuara bazuar
ne RWT me intervale kohore
lifespan(X,Begin,End) :-
born(X,Begin),
Killed(X,End),
lifespan(X,Begin,End) : -
born(X,Begin),
died(X,End),
alive_at_same_time(X,Y) :-
lifespan(X,Bx,Ex),
lifespan(Y,By,Ey),
not(X=Y), overlap(Bx,Ex,By,Ey).
// pohime te kushtezuara te
nevojshme
overlap(Bx,Ex,By,Ey) :-
contained_in(Bx,By,Ey),
overlap(Bx,Ex,By,Ey) :-
contained_in(Ex,By,Ey),
overlap(Bx,Ex,By,Ey) :-
contained_in(By,Bx,Ex),
overlap(Bx,Ex,By,Ey) :-
contained_in(Ey,By,Ex),
contained_in(A, B, C) :-
bound(A),
B=<A, bound(C), A=<C,
contained_in(A,B,C) :- bound(A),
B=<A, not(bound(C)),
not(P) :- call(P), !, fail.
bound(X) :- nonvar(X).
F(A); P(A);G(A);H(A);
Psikologjia Artificiale
PSIKOLOGJIA ESHTE STUDIMI I PROCESEVE
MENTALE DHE SJELLJES SE INDIVIDEVE.
PSIKOLOGJIA ARTIFICIALE ESHTE
STUDIMI I PROCESEVE “MENTALE” TE NJE
SISTEMI TE NDERTUAR SIPAS INTELIGJENES
ARTIFICIALE NGJASHEM ME NJEREZIT.
Psikologjianjohese
Te mesuarit
Memoria
Perceptimi
Te folurit
Logjika
Adaptimi
Sipas Dan Curtis, IA i afrohet IH kur :
• SIA jane ne gjendje te marrin te gjitha vendimet ne menyre autonome,
bazuar ne informacionin qe mund te jete: - ri; abstrakt; joeksplicit.
• SIA jane ne gjendje te autoprogramohen, bazuar ne informacionin e ri,
nderkohe qe jane ne gjendje te zgjidhin ne menyre te mevetesishme
problemet qe kane lidhje me programimin e tyre edhe kur informacioni
eshte i paplote.
• Dy kushtet me siper vlejne plotesisht per evolimin dhe performancen e
sistemit, por jane te pavlefshme kur flasim per sistemin baze te operimit.
•Njohja artificiale:
Njohja artificiale ka te beje me SIA dhe se si ato mesojne,
integrohen dhe se si perdorin informacionin qe tashme kane.
•Intuita artificiale:
Mund te konceptohet si nje metodike per te arritur ne
zgjidhjen e problemeve me ane te nje menyre qe eshte e
ndryshme nga logjika.
•Emocionet njerezore vs “emocionet” e makinave.