vest int skripta pot miklos

Upload: jackie-2

Post on 25-Feb-2018

241 views

Category:

Documents


1 download

TRANSCRIPT

  • 7/25/2019 Vest Int Skripta Pot Miklos

    1/129

    VISOKA TEHNIKA KOLASUBOTICA

    Pot Miklo

    VETAKA INTELIGENCIJA- SKRIPTA -

    Algoritmi za prtra!i"a#$

    Igr za %" o&o'

    G#t&ki algoritmi

    N(ral# mr!

    S('oti)a* +,.

  • 7/25/2019 Vest Int Skripta Pot Miklos

    2/129

    Pr%go"orOva skripta pisana je prvenstveno za stuente tre!e "oine

    In#or$ati%ko" s$era Visoke Te&ni%ke ko'e u Su(oti)i koji s'u*ajupre$et Ve*ta%ka Inte'i"en)ija+ ,o*to se pre$et Ve*ta%kaInte'i"en)ija na Visokoj Te&ni%koj ko'i izu%ava tek neko'iko "oina-jo* ne$a nikakve 'iterature koja (i stuenti$a o'ak*a'a ve.(anje i

    po'a"anje+ To je ujeno i "'avni raz'o" za nastajanje ove skripte+Skriptu $o"u koristiti i ru"i koji se interesuju za o('ast ve*ta%keinte'i"en)ije+

    Skripta sar.i / "'avna po"'av'ja01+ A'"orit$i za pretra.ivanje-2+ I"re za ve oso(e-3+ 4enetski a'"orit$i i

    /+ Neura'ne $re.e+

    O o(ra5eni& te$a najvi*e pa.nje posve!eno je neura'ni$ $re.a$a-tako a je ova o('ast o(ra5ena najeta'jnije+

    Na po%etku svako" po"'av'ja za svaku o('ast ate su teorijske osnove-zati$ s'ee re*eni pri$eri- a na kraju su zaa)i za sa$osta'o ve.(anje+Svi pri$eri izra5eni su u pro"ra$sko$ paketu 6ATLAB+

    ,ri'iko$ pisanja skripte- na .a'ost- $o"u!e su i "re*ke koje ostaju inakon vi*estruko" %itanja teksta+ Autor !e (iti za&va'an svi$a koji nanji& uka.u+

    Su(oti)a- nove$(ar 2711+

  • 7/25/2019 Vest Int Skripta Pot Miklos

    3/129

    SA/R0AJ

    . Prim#a prtrag ko% ra"a#$a pro'lma.............................1

    +. Primr za prtrag(...................................................................+

    2. G#t&ki algoritmi....................................................................+3

    1. N(ral# mr!........................................................................22

    4. Primr #(ral# mr!............................................................12

    5. Pra"ila za o'(6a"a#$ pr)ptro#a........................................17

    8. Primr za (6#$ pr)ptro#a.................................................8

    7. Vr#$ logi6ki9 opra)i$a pomo:( #(ral#i9 mr!a...........8

    3. Algoritam pro&tira#$a grk (#aza%....................................74

    ,. Pri#)ipi o'(6a"a#$a "i&lo$# #(ral# mr!kori:#$m pro&tira#$a grk (#aza%..............................34

    . Ko9o##-o" ;takmi6ar&k< mr!.......................................33

    +. N(ral# mr! ( MATLA=-(...........................................,5

    /o%atak . Pro$kto"a#$ #(ral#i9 mr!a pomo:(MATLA=-a.............................................................+

    /o%atak +. Prtra!i"a#$...........................................................5

    /o%atak 2. Lokal#a prtraga....................................................+

    /o%atak 1. Igr za %" o&o'....................................................+1

    /o%atak 4. G#t&ki algoritmi..................................................+8

    Litrat(ra....................................................................................2,

  • 7/25/2019 Vest Int Skripta Pot Miklos

    4/129

    Ve*ta%ka Inte'i"en)ija Skripta

    . Prim#a prtrag ko% ra"a#$a pro'lma

    Ci'j ovo" po"'av'ja je upoznavanje sa &euristi%ki$ na%ini$a pretra"e i nji&ova pri$enapri'iko$ re*avanja pro('e$a ve*ta%ke inte'i"en)ije+ Bi!e prestav'jeni osnovni prin)ipip'aniranja- kao i prin)ipi i"ara za ve oso(e+ Ci'jevi ovo" po"'av'ja su0

    a se karakteri*u raz'i%iti a'"orit$i za pretra"u- i a se poka.e kako se $o.e pro!ikroz jeno sta('o za pretra"u pri$eno$ ovi& a'"orita$a-

    a se poka.e koje jenostavne za"onetke $o"u a se postave kao pro('e$i pretra"e- upoznavanje sa prenosti$a i $ana$a pojeini&a a'"orita$a za pretra"u- kao i sa

    nji&ovi$ o"rani%enji$a- karakteriza)ija jenostavno" postupka p'aniranja- upoznavanje sa $ini$a8 a'"orit$o$ ko i"ara za ve oso(e i po(o'j*anje ovo"

    postupka pri$eno$ a'#a9(eta se%enja+

    .. >"o%

    U ovo$ e'u izvr*i!e$o pre"'e najva.niji& te&nika pretra"e na po'ju ve*ta%ke inte'i"en)ije+,ose(nu pa.nju !e$o posvetiti pri$eni a'"orita$a za pretra"u ko prona'a.enja jeno"konkretno" pro('e$a+ Osnovna $isao je a uvek poznaje$o $o"u!e ranje koje $o.e$ovr*iti u )i'ju prona'a.enja re*enja- a'i ne zna$o koja o ranji !e nas ovesti ('i.e re*enju+Taa vr*i$o neku pretra"u $e5u ostupni$ $o"u!nosti$a- kako (i orei'i koja o ranji !enas ovesti o re*enja+

    Ova osnovna ieja je pri$enjiva ko svake vrste pro('e$a+ U ve'ikoj ve!ini s'u%ajevazaatak se $o.e svesti na prona'a.enje puta opoetnog stanjao jeno" o ciljnih stanja+O svi& $o"u!i& ranji tra.i$o upravo onaj niz koji !e nas ovesti o )i'jno" stanja+

    ,o"'av'je po%inje prestav'janje$ osnovni& te&nika+ Najve!i eo nji& su osnovni a'"orit$ikoji se %esto pojav'juju i na po'ju ru"i& ra%unasrki& po'ja+ ,ose(na pa.nje (i!e posve!enateoriji grafova- jer !e$o u najve!e$ (roju s'u%ajeva pretra"u vr*iti upravo na "ra#ovi$a+

    :(o" (o'je" razu$evanja- upoznavanje sa ovi$ osnovni$ a'"orit$i$a !e$o prikazati prekotra.enja pravo" puta na jenoj $api+ Nakon to"a- pokaza!e$o kako se ovi postup)i $o"u

    pri$eniti ko jenostavni& pro('e$a pretra"e i kakvi spe)ija'ni a'"orit$i postoje koji se

    $o"u koristiti ko p'aniranja i'i ko teorije i"ara+i koji se spe)ija'ni a'"orit$i $o"u koristitiko p'aniranja+++

    .+. T9#ik za prtrag(

    ,retpostavi$o a u jeno$ "rai!u o neko'iko jenos$erni& u'i)a tra.i$o o"ovaraju!i putkako (is$o o*'i o .e'jeno" )i'ja+ To je prikazano na S'i)i 1+1+

    Kako (is$o pojenostavi'i a'"orita$ za pretra"u- uve*!e$o s'ee!a o"rani%enja0 svaki$pute$ $o.e$o pro!i sa$o jeno$- i ako s'u%ajno o5e$o o parka- oat'e vi*e ne$a iz'aza+

    /

  • 7/25/2019 Vest Int Skripta Pot Miklos

    5/129

    Ve*ta%ka Inte'i"en)ija Skripta

    ,retpostavi$o a u po%etku stoji$o ko knji.are ;poetno stanje< i a .e'i$o a o5e$o ouniverziteta ;ciljno stanjeenostavan pro('e$ pretra"e0 ,rona'a.enje puta na $api

    U s'u%aju ovako jenostavno" pri$era $o.e$o vr*iti i siste$ati%nu i potpunu pretra"u svi&putanja+ Siste$ati%no $o.e$o proveravati svako pojeina%no stanje- o ko" $o.e$o o!i izpo%etno" stanja- kako (is$o prona*'i pravi'nu putanju koja nas voi o )i'ja+ Skup svi& stanja

    %iniprostor za pretragu+ Ako je prostor za pretra"u $a'i- taa $o.e$o koristiti i re'ativnojenostavne a'"orit$e za pretra"u koji !e ispro(ati svaku putanju+ Ove a'"orit$e naziva$osistematinim, neinformisanim i'islepimte&nika$a za pretra"u+ Ovi a'"orit$i o(u&vatajudubinskui irinskupretra"u+ 6e5uti$- u s'u%aju s'o.eniji& pro('e$a- prostor za pretra"u jeveo$a ve'ik i $o.e postojati ve'iki (roj $o"u!i& stanja koje (i tre(a'o ispitati+ Taa nije$o"u!e proveriti svako stanje u pri&vat'jivo$ vre$enu+ U s'u%aju ovakvi& pro('e$a tre(a

    pri$eniti heuristiku;korisna pravi'a

  • 7/25/2019 Vest Int Skripta Pot Miklos

    6/129

    Ve*ta%ka Inte'i"en)ija Skripta

    E

  • 7/25/2019 Vest Int Skripta Pot Miklos

    7/129

    Ve*ta%ka Inte'i"en)ija Skripta

    ve po$enute te&nike o(i'aze sta('o za pretra"u na raz'i%ite na%ine- a'i na kraju !e o(ete&nike a o(i5u sve %vorove+ A'"orita$ u o(a s'u%aja koristi jenu 'istu koja sar.i %vorovekoje s$o ve! poseti'i- a'i i& tre(a i a'je pos$atrati ;na pri$er nji&ove poto$ke jo* nis$ootkri'i

  • 7/25/2019 Vest Int Skripta Pot Miklos

    8/129

    Ve*ta%ka Inte'i"en)ija Skripta

    U na*e$ pri$eru- pri$enjuju!i opisani a'"orita$- pretra"a se vr*i na s'ee!i na%in0kFIzvai$o kiz niza i orei$o nje"ove poto$ke+ To su %vorovi i b+ Nji& stavi$o na krajniza- tako a niz i$a s'ee!i iz"'e0

    - bFU s'ee!e$ koraku izvai$oiz 'iste- ok na kraj 'iste stav'ja$o poto$ke o0b-fFbi$a va poto$ka- to su park ;p< i tra#ika ;t

  • 7/25/2019 Vest Int Skripta Pot Miklos

    9/129

    Ve*ta%ka Inte'i"en)ija Skripta

    A'"orita$ za pretra"u je veo$a s'i%an kao i ko *irinske pretra"e sa raz'iko$- a kou(inske pretra"e ne koristi$o niz- ne"o stek- tako a je oavanje i (risanje %vorova$o"u!e sa$o na po%etku 'iste+

    ,retra"e u *irinu i u(inu su veo$a jenostavni a'"orit$i i u s'u%aju a re*enje postoji ;i ako

    je sta('o kona%no

  • 7/25/2019 Vest Int Skripta Pot Miklos

    10/129

    Ve*ta%ka Inte'i"en)ija Skripta

    ,ostoji ve'iki (roj a'"orita$a za &euristi%ku pretra"u+ U ovo$ po"'av'ju $i !e$o eta'jnijeo(raiti tri a'"orit$a0 algoritam penjanja- pretraga tipa prvo najbolji ;best first< i A

    algoritam+ ,retpostavi$o a !e$o pretra"u naj%e*!e vr*iti u sta('u- a ne u "ra#u ;to zna%i ane$a pet'ji

  • 7/25/2019 Vest Int Skripta Pot Miklos

    11/129

    Ve*ta%ka Inte'i"en)ija Skripta

    S'ika 1++ 6apa koja prikazuje o"rani%enja ko a'"orit$a penjanja

    Ovi pro('e$i nastaju z(o" postojanja lokalnih maksimuma unutar prostora za pretra"u+Loka'ni $aksi$u$i su ta%ke koje su (o'je o svoji& susea- a'i ipak nisu re*enja+ Ako u$a'oj $eri pro$eni$o a'"orita$- pro('e$i 'oka'ni& $aksi$u$a se u ore5enoj $eri $o"u

    iz(e!i+ >eno o $o"u!i& re*enja je a ozvo'i$o o"rani%en (roj koraka unaza- to jest apa$ti$o a'ternativne putanje- na koje $o.e$o a se vrati$o- ako se aktue'na putanja poka.ekao po"re*na ;(a)ktra)kin"

  • 7/25/2019 Vest Int Skripta Pot Miklos

    12/129

    Ve*ta%ka Inte'i"en)ija Skripta

    ,retpostavi$o a je )i'jni %vor 4+ Ako (is$o u ovo$ sta('u pri$eni'i pretra"u po *irini- ona(is$o i$a'i s'ee!i reos'e %vorova0 A- B- C- - E- @- 4+ ,ri$eno$ pretra"e po u(ini-reos'e (i (io A- B- - E- 4+ Ni u jeno$ o pret&ona va s'u%aja nis$o o(rati'i pa.nju navrenosti %vorova+ Sa jenostavni$ a'"orit$o$ penjanja nika ne (is$o na*'i re*enje;'oka'ni $aksi$u$ je C i a'"orita$ (i se u to$ %voru za"'avio

  • 7/25/2019 Vest Int Skripta Pot Miklos

    13/129

    Ve*ta%ka Inte'i"en)ija Skripta

    S'ika 1++ AP pretra"aUko'iko (is$o koristi'i a'"orita$prvo najbolji- reos'e razvijanja %vorova (io (i s'ee!i0 A-B- - E- @+ Ako je )i'jno stanje @- ona s$o prona*'i jeno re*enje koje nije pose(no o(ro+Ko*tanje ovo" re*enja je 13 ;2Q/Q3Q/

  • 7/25/2019 Vest Int Skripta Pot Miklos

    14/129

    Ve*ta%ka Inte'i"en)ija Skripta

    :aat je pro('e$+ ,rvo tre(a a o'u%i$o kako !e$o reprezentovati pojeina stanja pro('e$a;na pri$er ko'iko voe i$a u pojeini$ (oka'i$a

  • 7/25/2019 Vest Int Skripta Pot Miklos

    15/129

    Ve*ta%ka Inte'i"en)ija Skripta

    U po%etku- o(a (oka'a su prazna- tako a je po%etno stanje 7- 7- a (aza poataka je 7-7FF+ U"'aste za"rae su potre(ne+ ,rikazano stanje je 7- 7- putanja koja sar.i ovo stanje je7- 7F- a (aza poataka je 7- 7FF ;'ista o saa prona5eni& putanja iz koji& se $o.e sti!io re*enja

  • 7/25/2019 Vest Int Skripta Pot Miklos

    16/129

    Ve*ta%ka Inte'i"en)ija Skripta

    S'ika 1+17+ Sta('o za pretra"u za pro('e$ (oka'a

    Na osnovu sta('a re*enje $o.e$o opisati i re%i$a0 Napuni$o (oka' o / 'itre- napuni$o(oka' o 3 'itre- prospe$o vou iz (oka'a o / 'itre- pre'ije$o vou iz (oka'a o 3 'itre u

    (oka' o / 'itre- napuni$o (oka' o 3 'itre- iz (oka'a o 3 'itre opuni$o (oka' o / 'itre-prospe$o vou iz (oka'a o / 'itre i na kraju pre'ije$o vou iz (oka'a o 3 'itre u (oka' o /'itre+

    ,rikazani a'"orita$ jeste siste$ati%an- a'i 'o"i%ki$ zak'ju%ivanje$ $o.e$o uvieti a nijenajkra!i+ Bi'o (i (r.e prvo sipati vou u (oka' o 3 'itre ;stanje 7- 3

  • 7/25/2019 Vest Int Skripta Pot Miklos

    17/129

    Ve*ta%ka Inte'i"en)ija Skripta

    u(ini i$a'i vi*e sre!e i $o.e se esiti a ranije nai5e$o na re*enje+ 6e5uti$- ako se re*enjene na'azi na prvoj "rani- ova te&nika $o.e za&tevati ispitivanje vi*e %vorova ne"o *irinska

    pretra"a+ Heuristi%ke te&nike $o"u (iti korisne- a'i sa$o u s'u%aju a na5e$o o(ru #unk)ijuza eva'ua)iju+

    Bitan poja$ ko siste$ati%ni& $etoa pretra"e jefaktor grananja+ @aktor "rananja izra.avaprose%an (roj poto$aka %vorova u prostoru za pretra"u+ Uko'iko .e'i$o a pretra"a (uee#ikasna- tre(a a se po(rine$o a #aktor "rananja (ue ovo'jno $a'i+ @aktor "rananjaiz$e5u osta'o" zavisi o to"a- ko'iko o(ro $o.e$o a #or$a'izuje$o neki pro('e$+,ri'iko$ pretra"e u prostoru stanja- #aktor "rananja $o.e$o reukovati ako pri$eni$o i'jusku inte'i"en)iju- *to zna%i a ne!e$o ispitivati %vorove koji nas ne voe pre$a )i'ju+@aktor "rananja $o.e se s$anjiti i ako pravi'no oa(ere$o a 'i !e$o pretra"u vr*iti iz

    po%etno" stanja pre$a )i'ju i'i o )i'ja pre$a po%etno$ stanju ;o(e varijante se %estokoriste

  • 7/25/2019 Vest Int Skripta Pot Miklos

    18/129

    Ve*ta%ka Inte'i"en)ija Skripta

    S'ika 1+12+ prikazuje potpuno sta('o jene jenostavne #iktivne i"re+ Kao *to vii$o- opo(ee je potre(no sve"a va koraka+ 6o"u!a stanja i"re o(e'e.ena su 'a(e'a$a AJ>+,ostav'ja se pitanje kako i"ra%i a oa(eru koji !e potez a oi"raju= Svaki o i"ra%a

    pretpostav'ja a protivnik .e'i a po(ei+ Ako prvi i"ra% oi"ra u stanje B- ru"i i"ra% !eoa(rati potez koji voi u stanje @ i po(ei!e+ Ako prvi i"ra% oi"ra u stanje C- (ez o(zira *ta

    !e ru"i i"ra% a oi"ra- po(ei!e prvi i"ra%+ Na kraju- ako prvi i"ra% oi"ra u stanje - (i'okoji o poteza ru"o" i"ra%a o(ez(ei!e $u po(eu+ Sa aspekta prvo" i"ra%a ne$a i'e$e atre(a a oi"ra u stanje C- jer je to jeino stanje koje $u si"urno o(ez(e5uje po(eu+

    S'ika 1+12+ Sta('o jenostavne i"re

    .4. Mi#imak& po&t(pak

    U s'i%no$- potpuno$ sta('u na s'ee!i na%in $o.e$o prona!i o(re poteze za prvo" i"ra%a+,o(eu prvo" i"ra%a o(e'e.i!e$o sa Q17- nje"ov poraz sa J17- a nere*en rezu'tat sa 7+ Nakonto"a napreuju!i pre$a "ore- orei!e$o vrenosti koje o"ovaraju vi*i$ %vorovi$a sta('a+S'ika 1+13 prikazuje jenostavno sta('o za i"ru- na kojoj su ozna%ene i po$enute vi*evrenosti+ U %vorovi$a E- @- 4 i H na potezu je prvi i"ra%+ On poku*ava a maksimizira

    svoje stanje+ Iz %vorova E- @ i H prvi i"ra% $o.e a o5e u o(itno stanje- tako a ovi%vorovi o(ijaju vrenost 17+ Iz stanja 4 prvi i"ra% u naj(o'je$ s'u%aju $o.e a i"ranere*eno- tako a !e ovaj %vor o(iti vrenost 7+ Nakon to"a po"'eaj$o %vorove B i C kaa

    je na potezu ru"i i"ra%+ ru"i i"ra% poku*ava a minimizujeo(itak prvo" i"ra%a+ ;voroveB i C $o.e$o nazvati i $ini$iziraju!i$- a %vorove E- @- 4 i H $aksi$iziraju!i$%vorovi$a

  • 7/25/2019 Vest Int Skripta Pot Miklos

    19/129

    Ve*ta%ka Inte'i"en)ija Skripta

    orei vrenost;%vor

  • 7/25/2019 Vest Int Skripta Pot Miklos

    20/129

    Ve*ta%ka Inte'i"en)ija Skripta

    vrenosti koristi$o para$etar [

  • 7/25/2019 Vest Int Skripta Pot Miklos

    21/129

    Ve*ta%ka Inte'i"en)ija Skripta

    +. Primr za prtrag(

    Uko'iko .e'i$o a o5e$o o ta%ke A o ta%ke B tre(a a pri$eni$o neku vrstu pretra"e+,retra"a zna%i prona'a.enje puta o ta%ke "e se trenutno na'azi$o- o ta%ke u koju .e'i$oa sti"ne$o+ Na pri$er- u *a&ovskoj i"ri put o ta%ke A o ta%ke B- $o.e (iti iz$e5utrenutne pozi)ije i pozi)ije koja !e (iti aktue'na za ? poteza+ ,ut o ta%ke A o ta%ke B $o.e

    (iti raz'i%it za svaku situa)iju+

    ,retra"a pripaa pro('e$ati)i ve*ta%ke inte'i"en)ije+ :aatak ve*ta%ke inte'i"en)ije je apru.e $o"u!nost raz$i*'janja ra%unari$a- to jest a ra%unari i$aju oso(inu 'jusko"pona*anja i zak'ju%ivanja+ ,ro('e$ je u to$e- *to ra%unari ;na na*u .a'ost< ne #unk)ioni*u nana%in- na koji #unk)ioni*e 'juski $ozak+ :a prona'a.enje re*enja- ra%unari$a je potre(an nizkoraka pre ne"o *to prona5u re*enje+ Ci'j pro"ra$era je- a jean ko$p'ikovani zaatak

    pretvori u jenostavnije korake- koje !e ra%unar $o!i a re*i+

    +.. Rprz#ta)i$a prtrag

    ,rvo a vii$o- kako (is$o 'jusko$ inte'i"en)ijo$ re*i'i neki pro('e$ pretra"e+ ,rvo tre(aa o'u%i$o na koji na%in !e$o a reprezentuje$o pro('e$ pretra"e+ S'ika 2+1+ prikazujesta('o za pretra"u+ Sta('o je niz $e5uso(no povezani& %vorova- i pretra"u !e$o vr*iti nanje$u+

    S'ika 2+1+ ,ri$er sta('a za pretra"u

    U prikazano$ "ra#u veze iz$e5u %vorova su jenos$erne+ Sve putanje voe o "ore pre$ao'e+ ru"i$ re%i$a- postoji put o %vora A o %vorova B i C- a'i %vorovi B i C ne$aju svoj

    put o %vora A+ Ovu vrstu veze $o.e$o za$is'iti kao jenos$ernu u'i)u+ Svaki s'ovo$o(e'e.eni kru.i! u sta('u naziva se vor+ vor $o.e (iti povezan sa ru"i$ %vorovi$a preko"rana ;ivi)a

  • 7/25/2019 Vest Int Skripta Pot Miklos

    22/129

    Ve*ta%ka Inte'i"en)ija Skripta

    S'ika 2+2+ ,ri$er za u(inu sta('a

    Sa i$a$o na%in kako a opi*e$o po'o.aj u sta('u+ :na$o u kakvoj vezi se na'aze pojeini%vorovi ;susei< i i$a$o na%in za opisivanje u(ine pojeino" %vora+ ,oznavanje ovi&

    in#or$a)ija- nije irektno povezano sa konstruk)ijo$ a'"orit$a za pretra"u- a'i !e po$o!i za(o'je razu$evanje pro('e$a+

    +.+. Prtraga ( %('i#(

    ,retra"a u u(inu rai po s'ee!e$ prin)ipu0 uzi$a %vor- prona'azi nje"ove susee- ispituje;razvija< prvi o prona5eni& susea- proverava a 'i je ispitivani %vor )i'jno stanje- i ako nije-nastav'ja sa ispitivanje$ %vorova+ :a e$onstra)iju a'"orit$a na!i !e$o put iz$e5u %vorovaA i @ sa S'ike 2+3+

    S'ika 2+3+ e$onstra)ija pretra"e u *irinu

    Korak ,,o%etni korak je uzi$anje prvo" %vora ;korena

  • 7/25/2019 Vest Int Skripta Pot Miklos

    23/129

    Ve*ta%ka Inte'i"en)ija Skripta

    Open 'ista0 A C'ose 'ista0 \praznoY

    Korak Saa !e$o potra.iti susee %vora A+ A'"orita$ski$ jeziko$ re%eno- uzi$a$o prvi e'e$ent iz

    p#'iste- i ispita$o nje"ove susee+

    Susei %vora A su %vorovi B i C+ ,o*to s$o zavr*i'i posao sa %voro$ A- iz(risa!e$o "a izp#'iste- i oa!e$o "a Clo&% 'isti+ Saa i$a$o va nova %vora B i C koje tre(a aispita$o] nji& !e$o oati u p#'istu+ Trenutno stanje p#'iste i Clo&%'iste je s'ee!e0

    Open 'ista0 B- C C'ose 'ista0 A

    Korak +Saa na*a p#'ista sar.i va e'e$enta+ U s'u%aju pretra"e po u(ini i pretra"e po *irini-uvek se ispituje prvi e'e$ent iz p#'iste+ ,rvi e'e$ent u p#'isti je %vor B+ ,o*to B nije)i'jni %vor- potra.i!e$o nje"ove poto$ke+

    ,o*to s$o ispita'i %vor B- uk'oni!e$o "a iz p#'iste i oa!e$o "a Clo&%'isti+ ,oto$ke%vora B ; i E< oa!e$o na poetakp#'iste+

    Open 'ista0 - E- C C'ose 'ista0 A- B

    Korak 2,o*to je %vor na po%etku p#'iste- ispita!e$o "a+ vor nije )i'jni %vor- i ne$a susee+:ato !e$o u ovo$ koraku iz(risati %vor iz p#'iste- i stavi!e$o "a u Clo&%'istu+

    Open 'ista0 E- C C'ose 'ista0 A- B-

    Korak 1U ovo$ koraku ispita!e$o %vor E iz p# 'iste+ ,o*to E nije )i'jni %vor- potra.i!e$onje"ove susee ;%vorovi @ i 4

  • 7/25/2019 Vest Int Skripta Pot Miklos

    24/129

    Ve*ta%ka Inte'i"en)ija Skripta

    Iz p#'iste (ri*e$o %vor E- i oaje$o %vorove @ i 4+ vor E oaje$o Clo&%'isti+

    Open 'ista0 @- 4- C C'ose 'ista0 A- B- - E

    Korak 4Saa razvija$o %vor @+ ,o*to je to )i'jni %vor- zaustav'ja$o pretra"u+

    Bri*e$o %vor @ iz p#'iste- i oaje$o "a Clo&%'isti+ ,o*to s$o sti"'i o )i'jno" %vorane$a potre(e za razvijanje$ %vora @ i na'a.enje$ nje"ovi& susea+ Kona%no stanje p#iClo&%'isti i$a s'ee!i iz"'e0

    Open 'ista0 4- C C'ose 'ista0 A- B- - E- @

    Kona%na putanja pretra"e je krajnje stanje Clo&%'iste0 A- B- - E- @+

    +.2. Prtraga ( iri#(

    ,retra"a u *irinu je veo$a s'i%na pretrazi u u(inu+ Ko pretra"e u u(inu poto$ke ispitano"%vora oava'i s$o na po%etak p#'iste+ Ko pretra"e u *irinu- ispitani %vorovi se oajuna kraj p# 'iste+ Saa !e$o po"'eati kako !e ova pro$ena uti)ati na na*u pretra"u+,os$atra!e$o isto sta('o kao i u pro*'o$ pri$eru+ Neka zaatak (ue prona'a.enje putaiz$e5u %vorova A i E+

    Korak ,Kao i $a'opre- po%e!e$o koreno$0

    2/

  • 7/25/2019 Vest Int Skripta Pot Miklos

    25/129

    Ve*ta%ka Inte'i"en)ija Skripta

    Stanja !e$o i a'je pratiti po$o!u p#i Clo&%'iste

    Open 'ista0 A C'ose 'ista0 \praznoY

    Korak Ispita!e$o susee %vora A+ :a saa se a'"orita$ ne raz'ikuje o pretra"e po u(ini+

    Iz(risa!e$o %vor A iz p#'iste i oa!e$o "a Clo&%'isti+ Susee %vora A ;B i C< !e$ooati p#'isti+ Oni se oaju na kraj p# 'iste- a'i po*to je p# 'ista prazna ;nakon

    (risanja %vora A

  • 7/25/2019 Vest Int Skripta Pot Miklos

    26/129

    Ve*ta%ka Inte'i"en)ija Skripta

    ,o*to %vor C ne$a susee- iz(risa!e$o %vor C iz p#'iste i nastaviti a'je sa a'"orit$o$+

    Open 'ista0 - E C'ose 'ista0 A- B- C

    Korak 1S'i%no Koraku 3- ispita$o %vor + ,o*to nije )i'jni %vor i po*to ne$a susee ;poto$ke

  • 7/25/2019 Vest Int Skripta Pot Miklos

    27/129

    Ve*ta%ka Inte'i"en)ija Skripta

    )+ Oreiti susee izva5eno" %vora++ Susee oati na poetak p# 'iste- i oati izva5eni %vor Clo&% 'isti+

    Nastaviti sa )ik'uso$+

    ,seuo ko za pretra"u po *irini0

    1+ ek'arisati ve 'iste0 p#i Clo&%+2+ oati po%etni %vor u p#'istu+3+ 9il;p#'ista nije prazna< /o

    a+ Izvaiti prvi %vor iz p#'iste+(+ ,roveriti a 'i je izva5eni %vor ujeno i )i'jni %vor+

    i+ Ako je izva5eni %vor )i'jni %vor- iza!i iz )ik'usa- oati %vor Clo&%'isti- i re*enje je aktue'no stanje Clo&%'iste+

    ii+ Ako izva5eni %vor nije )i'jni %vor- nastaviti sa izvr*avanje$ pet'je;Korak )+- 6- K- I- C

    vor C je pos'enji %vor koji se ispituje uprkos to$e *to je irektni suse po%etno" %vora A+U s'u%aju pretra"e u *irinu %vor C (is$o prona*'i veo$a (rzo0 A- B- C+ :a neku ru"u

    putanju- re)i$o iz$e5u %vorova A i - pretra"a u u(inu a'a (i (o'je rezu'tate+

    :(o" na%ina #unk)ionisanja ovi& a'"orita$a- pri pravi'no$ iz(oru korisnik !e %esto onetipo"re*nu o'uku+ Iako je %vor C na sa$o jean korak o po%etno" %vora- pretra"a u u(inu"a u"o ne!e prona!i- jer se #avorizuje u(ina u$esto *irine+

    Ovakve stvari e*avaju se- jer su o(e $etoe pretra"e s'epe ;('in sear)&

  • 7/25/2019 Vest Int Skripta Pot Miklos

    28/129

    Ve*ta%ka Inte'i"en)ija Skripta

    ,ri'iko$ pretra"e ve'iki& "ra#ova $o"u se pojaviti pet'je+ Ako (is$o .e'e'i a vii$o s'u%aju koje$ a'"orita$ pretra"e u u(inu ne prona'azi re*enje- tre(a sa$o oati jenu "ranuiz$e5u %vorova i A+

    A'"orita$ ne!e $o!i a prona5e re*enje- jer !e sta'no oavati %vorove A- B- i (ez$o"u!nosti a iza5e iz pet'je+

    ru"i poten)ija'ni pro('e$ je- ako 'eva strana sta('a i$a vi*e $i'iona %vorova- ok je re*enjena esnoj strani sta('a ua'jeno sa$o neko'iko koraka o korena+ ,retra"a u u(inu !e $oratia ispita $no"o %vorova i a iz"u(i $no"o vre$ena- pre ne"o *to uop*te o5e o esnestrane sta('a+

    ,retra"a u *irinu ne$a neostatak z(o" pet'ji- jer se kre!e &orizonta'no unutar svake u(ine+,retra"a u *irinu- uvek !e prona!i re*enje (ez o(zira na tip sta('a- osi$ ako sta('o ne$a

    (eskona%no $no"o %vorova+ Sa ru"e strane- ako sa$o jena "rana i$a (eskona%nu u(inu-pretra"a u u(inu $o.a nika ne!e na!i re*enje+

    2

  • 7/25/2019 Vest Int Skripta Pot Miklos

    29/129

    Ve*ta%ka Inte'i"en)ija Skripta

    2. G#t&ki algoritmi

    U ru"oj po'ovini 27+ veka- vi*e eksperata iz o('asti ra%unarske nauke- nezavisno jeprou%ava'o evo'u)ione siste$e- sa iejo$ a se prin)ipi evo'u)ije pri$ene na pro('e$eopti$iza)ije u in.enjerskoj praksi+ Svaki o ovi& siste$a- os'anjao se na popu'a)iju koja je use(i sar.ava'a $o"u!a re*enja ati& pro('e$a+ A'"orit$i su (i'i (azirani na opera)ija$akoje i$itiraju prironu "enetsku pro$enu i prironou se'ek)iju+

    U 79i$ "oina$a pro*'o" veka- De)&en(er" je iz$is'io tzv+ evo'u)ionu strate"iju ;ESo&n Ho''an+ On je 1G?+ "oine;Ho''an- 1G?< "enetski a'"orita$ prikazao kao apstrak)iju (io'o*ke evo'u)ije- i ao jeteorijski okvir za aapta)iju "enetski& a'"orita$a+ Ova pu('ika)ija s$atra se$onu$enta'no$ u istoriji "enetski& a'"orita$a+ Ko Ho''an9ovo" "enetsko" a'"orit$a iz

    popu'a)ije koja se sastoji o &ro$ozo$a ;na pri$er strin"ovi koji se sastoje o nu'a ijeini)a< stvara se s'ee!a popu'a)ija kori*!enje$ prirone se'ek)ije- to jest preko "enetski&opera)ija reko$(ina)ije- $uta)ije i inverzije+ Svaki &oro$ozo$ sar.i "ene ;na pri$er

    (itove

  • 7/25/2019 Vest Int Skripta Pot Miklos

    30/129

    Ve*ta%ka Inte'i"en)ija Skripta

    pri %e$u je'o"rani%en na )e'o(rojne vrenosti+ @unk)ija ( )'f je sinusna #unk)ija o 7 o ^raijana+ 6aksi$a'na vrenost #unk)ije je 1- i jav'ja se za ^2- to jest za 812+ S'ika 3+1+

    prikazuje #unk)iju ( )'f +

    S'ika 3+1+ Sinusna #unk)ija o 7 o ^ raijanaU ovo$ pri$eru postoji sa$o jena pro$enjiva0 '+ ,retpostavi$o a koristi$o (inarnia'#a(et+ ,rvo tre(a a o'u%i$o kako a prestavi$o pro$en'jivu+ ,o*to ' $o.e uzi$ativrenosti sa$o iz interva'a 792??- 'o"i%no je a !e$o svaku jeinku prestaviti sa 9(itni$

    (inarni$ strin"o$+

    Binarni (roj 77777777 prestav'ja!e 7- ok !e (inarni (roj 11111111 prestav'jati 2??+

    a'je- tre(a o'u%iti ko'iko jeinki !e %initi popu'a)iju+ O(i%no se (ira a (roj jeinki (ueiz$e5u neko'iko esetina i neko'iko stotina+ U na*e$ i'ustrativno$ pri$eru popu'a)ija !e se

    sastojati o sve"a jeinki+

    S'ee!i korak je ini)ija'iza)ija popu'a)ije+ To se rai s'u%ajno- Ta(e'a 3+1+

    Ta(e'a 3+1+ Ini)ija'ne vrenosti popu'a)ije

    U Ta(e'i 3+1+ sa ( )'f s$o o(e'e.i'i #itnes ;o(rotu< jeinke+

    37

  • 7/25/2019 Vest Int Skripta Pot Miklos

    31/129

    Ve*ta%ka Inte'i"en)ija Skripta

    2... Slk)i$a

    Nakon izra%unavanja #itnesa- s'ee!i korak je reprouk)ija+ Deprouk)ija je #or$iranje novepopu'a)ije sa isti$ (roje$ iniviua- se'ektovanje$ %'anova trenutne popu'a)ije $etoo$

    sto&asti%ko" iz(ora+ Verovatno!a iz(ora svake jeinke zavisi o njeno" #itnesa+ to je #itnesate jeinke ve!i- njena *ansa za reprouk)iju !e tako5e (iti ve!a+ U na*e$ pri$eru- su$a#itnesa svi& iniviua ini)ija'ne popu'a)ije je ?+73+ e'jenje$ svako" #itnesa sa ?+73o'azi$o o nor$a'izovano" #itnesa za svaku jeinku+ Su$a nor$a'izovani& #itnesa je 1+

    Nor$a'izovane #itnes vrenosti koriste se u pro)esu koji se zove ru'et to%akM- "e svaki eoru'et to%ka o"ovara jenoj jeinki+ Ve'i%ina e'a ru'et to%ka zavisi o #itnesa jeinke+Spinovanje$ ru'et to%ka "eneri*e$o s'u%ajni& (rojeva iz$e5u 7 i 1+ Ako je s'u%ajan (rojiz$e5u 7 i 7+1//- (ira se prva jeinka iz trenutne popu'a)ije za reprouk)iju+ Ako je s'u%ajan

    (roj iz$e5u 7+1// i ;7+1//Q7+73

  • 7/25/2019 Vest Int Skripta Pot Miklos

    32/129

    Ve*ta%ka Inte'i"en)ija Skripta

    S'ika 3+2+ ,opu'a)ija pre ukr*tanja sa prikazani$ ta%ka$a ukr*tanja ;a

  • 7/25/2019 Vest Int Skripta Pot Miklos

    33/129

    Ve*ta%ka Inte'i"en)ija Skripta

    1. N(ral# mr!1.. =ioloka poza%i#a

    Ve*ta%ke neura'ne $re.e raz$atrane u ovo$ tekstu- sa$o su u okvirnoj vezi sa nji&ovi$o"ovaraju!i$ (io'o*ki$ neuroni$a+ U ovo$ e'u ukratko !e$o opisati one oso(ine $oz"a-koje su inspirisa'e razvoj ve*ta%ki& neura'ni& $re.a+

    6ozak se sastoji o ve'iko" (roja ;oko 17 11< visoko povezani& e'e$enata ;otpri'ike 17/vezapo e'e$entu< koji se nazivaju neuroni+ :a na*e potre(e ovi neuroni i$aju tri osnovneko$ponente0 enrite- !e'ijsko te'o i akson+ enriti su $re.e nervni& v'akana na'ik rvetukoje voe e'ektri%ne si"na'e pre$a !e'ijsko$ te'u+ _e'ijsko te'o su$ira i upore5uje sa neki$

    pra"o$ o'aze!e si"na'e+ Akson je u"a%ko v'akno koje voi si"na' o !e'ijsko" te'a pre$aru"i$ neuroni$a+ Ta%ka spajanja iz$e5u aksona jene !e'ije i enrita ru"e !e'ije nazivase sinapsa+ @unk)ija neura'ne $re.e ore5ena je rasporeo$ neurona i ja%ino$ iniviua'ni&sinapsi+ U 'jusko$ te'u- )eo pro)es je veo$a s'o.ena e'ektro&e$ijska reak)ija+ S'ika /+1

    prestav'ja pojenostav'jenu *e$u va povezana (io'o*ka neurona+

    S'ika /+1+ ,ojenostav'jena *e$a va (io'o*ka neurona

    Neki e'ovi neura'ne strukture e#inisani su po ro5enju+ ru"i e'ovi razvijaju se prekou%enja ;neke nove veze se uspostav'jaju- a neke stare veze se prekiaju $e5u neuroni$a

  • 7/25/2019 Vest Int Skripta Pot Miklos

    34/129

    Ve*ta%ka Inte'i"en)ija Skripta

    1.+.. Mo%l #(ro#a

    Na S'i)i /+2+ prikazan je neuron sa jednim ulazom+ Ska'arni u'azppo$no.en je sa ska'arno$te.ino$ (- i oni #or$iraju proizvo (p koji se *a'je na u'az sa(ira%a+ ru"i u'az- 1-

    po$no.en je sa bias9o$ b- i poto$ se tako5e *a'je na sa(ira%+ Iz'az sa(ira%a- n- %esto senaziva ulazom mre)e- i on se pros'e5uje na prenosnu funkciju f koja aje ska'arni iz'azneurona a ;u$esto izraza prenosna #unk)ija koristi se jo* i ter$in aktivaciona funkcija- au$esto bias9a koristi se ter$in ofset

  • 7/25/2019 Vest Int Skripta Pot Miklos

    35/129

    Ve*ta%ka Inte'i"en)ija Skripta

    ar"u$ent ve!i i'i jenak o 7+ Ovu #unk)iju !e$o koristiti ko neurona koji tre(a ak'asi#ikuju u'aze u ve ovojene kate"orije+

    S'ika /+3+ Osko%na prenosna #unk)ija

    4ra#ik na S'i)i /+3+ esno i'ustruje u'aznoiz'aznu karakteristiku neurona sa jeni$ u'azo$koji koristi pra" #unk)iju+ Na s'i)i $o.e$o a vii$o uti)aj te.ine o#set9a+ Ikona kojo$

    o(e'e.ava$o pra" prenosnu #unk)iju prikazana je iz$e5u ve s'ike+

    Iz'az linearne prenosne funkcije jenak je je u'azu iste #unk)ije ;S'ika /+/+enos'ojna $re.a o Sneurona sa*u'aza tako5e se $o.e na)rtati upojenostav'jenoj #or$i- S'ika /++

    3

  • 7/25/2019 Vest Int Skripta Pot Miklos

    39/129

    Ve*ta%ka Inte'i"en)ija Skripta

    S'ika /++ S'oj o Sneurona- ko$paktna nota)ija

    Si$(o'i ispo pro$en'jivi& ozna%avaju a je u'azni vektor pu.ine*- a $atri)a i$ai$enzije *S - ok vektori a i 'i$aju u.inu S+ Kao *to je ve! napo$enuto s'oj sar.i$atri)u sa te.ina$a- sa(ira%e i $no.a%e- (ias vektor '- prenosnu #unk)iju i iz'azni vektor+

    1.+.5. Mr! &a "i &lo$"a

    Saa !e$o raz$otriti $re.u sa vi*e s'ojeva+ Svaki o s'ojeva i$a svoju $atri)u sa te.ina$a- (ias vektor '- u'azni vektor #i iz'azni vektor a+ :a raz'ikovanje ovi& s'ojeva tre(a uvestineke oatne oznake+ ,ro$en'jiva$a !e$o oati "ornji ineks koji !e o(e'e.avati s'ojeve+6atri)a sa te.ina$a za prvi s'oj (i!e o(e'e.ena sa 1E - a $atri)a sa te.ina$a za ru"i s'oj !e

    (iti o(e'e.ena sa 2E + Ovo je prikazano na S'i)i /+17+

    S'ika /+17+ 6re.a sa tri s'oja

    Kao *to vii$o- i$a * u'aza- S1 neurona u prvo$ s'oju- S2neurona u ru"o$ s'oju- it+Daz'i%iti s'ojevi $o"u i$ati raz'i%it (roj neurona+ Iz'az prvo" s'oja je u'az u ru"i s'oj- a iz'azru"o" s'oja je u'az u tre!i s'oj+ Tako a se s'oj 2 $o.e pos$atrati kao $re.a sa jeni$s'oje$ sa 1S*= u'aza- 2SS= neurona- i $atri)o$ te.ina 2i$enzija 21 SS + U'az us'oj 2 je a1- ok je iz'az a2+ S'oj %iji je iz'az ujeno i iz'az $re.e naziva se izlazni sloj+ Osta'is'ojevi nazivaju se skriveni s'ojevi ;hidden la+ers

  • 7/25/2019 Vest Int Skripta Pot Miklos

    40/129

    Ve*ta%ka Inte'i"en)ija Skripta

    S'ika /+11+ Neura'na $re.a sa tri s'oja- ko$paktna nota)ija

    6re.e sa vi*e s'ojeva su a'eko $o!nije o $re.a koji i$aju sa$o jean s'oj+ Na pri$er-neura'na $re.a sa va s'oja sa si"$oia'no$ prenosno$ #unk)ijo$ na prvo$ s'oju i'inearno$ na ru"o$ s'oju- $o.e se o(u%iti a aproksi$ira "otovo sve #unk)ije sa

    proizvo'jno$ ta%no*!u+ Najve!i (roj prakti%ni& neura'ni& $re.a i$a va i'i tri s'oja+ etiri i'ivi*e s'ojeva koriste se veo$a retko+ Ove se postav'ja i pitanje (ias9a+ 6o"u se koristiti

    neuroni sa i'i (ez (ias9a+ Bias aje $re.i jenu oatnu pro$en'jivu i z(o" to"a $re.a $o.ei$ati (o'je per#or$anse+ 6re.a (ez (ias9a na u'azu !e uvek i$ati vrenost 7 uko'iko su sviu'azi pnu'a *to u neki$ pri$ena$a prestav'ja neostatak+

    1.+.8. Rk(r#t# mr!

    ,re ne"o *to se upozna$o sa rekurentni$ $re.a$a tre(a prestaviti jean jenostavane'e$ent o koji& se rekurentne $re.e sastoje+ Taj ('ok je blok za kanjenjekoji je prikazan naS'i)i /+12+

    S'ika /+12+ B'ok za ka*njenje

    Iz'az ('oka a;t< izra%unava se na osnovu u'aza (;t< na osnovu #or$u'e

    ( ) ( )1= tt (a

    Iz'az je jenak u'azu- sa$o u pret&ono$ trenutku+*ekurentna mre)aje $re.a koja sar.i povratne veze+ Neki o iz'aza povezani su sa u'azi$a+Ove $re.e se raz'ikuju o o saa upoznati& $re.a ;feedfor(ard< ko koji& se si"na'

    prostirao o u'aza pre$a iz'azu+Dekurentna $re.a sa iskretni$ vre$eno$ prikazana je naS'i)i /+13+

    /7

  • 7/25/2019 Vest Int Skripta Pot Miklos

    41/129

    Ve*ta%ka Inte'i"en)ija Skripta

    S'ika /+13+ Dekurentna neura'na $re.a

    1.+.7. R#i primri

    1+ U'az u neuron sa jeni$ u'azo$ i$a vrenost 2+7- te.ina je 2+3- ok (ias i$a vrenost93+a+ Ko'iki je u'az u prenosnu #unk)iju=

    (+ Ko'iki je iz'az iz neurona=

    De*enjea+ U'azna vrenost u prenosnu #unk)iju je

    C+132P3+2 ==+= b(pn(+ Iz'az iz neurona se ne $o.e oreiti jer nije ore5en tip prenosne #unk)ije+

    2+ Ko'iki je iz'az iz neurona iz pret&ono" zaatka- uko'iko su pri$enjene s'ee!eprenosne #unk)ije0a+ ,ra" ;Har 'i$itenos'ojna neura'na $re.a i$a u'aza i va iz'aza+ Iz'azi tre(a a (uu kontinua'ni io"rani%eni na interva' iz$e5u 7 i 1+ ta $o.e$o a ka.e$o o ar&itekturi $re.e=a+ Ko'iko neurona je potre(no=

    (+ Koje su i$enzije $atri)e sa te.ina$a=)+ Koje rnosne #unk)ije $o"u a se koriste=+ a 'i je potre(an (ias=

    De*enje

    a+ ,o*to i$a va iz'aza- potre(na su va neurona ;po jean za svaki iz'az

  • 7/25/2019 Vest Int Skripta Pot Miklos

    43/129

    Ve*ta%ka Inte'i"en)ija Skripta

    4. Primr #(ral# mr!

    U ovo$ oe'jku upozna!e$o se sa jeni$ jenostavni$ pri$ero$ za prepoznavanjeuzoraka i vie!e$o kako se zaati pro('e$ re*ava kori*!enje$ neura'ni& $re.a+

    4.. /?i#i)i$a pro'lma

    ,retpostavi$o a jean tr"ova) i$a proavni)u vo!a i povr!a+ ,ri'iko$ isporuke ro(e vi*evrsta vo!a i povr!a $o.e (iti iz$e*ano+ ,roava) .e'i a i$a $a*inu za razvajanje vo!a uzavisnosti o vrste+ ,ostoji jena (eskona%na traka na kojoj sti.e vo!e+ Ova traka pro'azi kroz"rupu senzora koja $eri tri karakteristike vo!a0 oblik- teksturu i te)inu+ To su jenostavnisenzori+ Senzor za o('ik !e na svo$ iz'azu ati 1 ako je vo!ka okru"'a- i 91 ako je vo!kae'piti%na+ Senzor za teksturu !e na svo$ iz'azu ati vrenost 1 ako je povr*ina vo!ke "'atka- i91 ako je povr*ina vo!ke na(orana ;neravna

  • 7/25/2019 Vest Int Skripta Pot Miklos

    44/129

    Ve*ta%ka Inte'i"en)ija Skripta

    ok prototip ja(uke prestav'ja$o sa

    =

    1

    1

    1

    2p

    Neura'na $re.a !e na svo$ u'azu pri&vatiti troi$enziona'ni u'azni vektor za svaku vo!kukoja sti.e na tra)i i na osnovu to"a $ora a onese o'uku a 'i se rai o naran.i ;p1< i'i

    ja(u)i ;p2

  • 7/25/2019 Vest Int Skripta Pot Miklos

    45/129

    Ve*ta%ka Inte'i"en)ija Skripta

    Ako je proizvo $atri)e sa te.ina$a ;vektor vrsta u ovo$ s'u%aju< i u'azno" vektora ve!i oJb- iz'az !e (iti 1+ Ako je proizvo $atri)e sa te.ina$a i u'azno" vektora $anji o Jb- iz'az!e (iti 1 + Na taj na%in u'azni prostor poe'jen je na va e'a+ S'ika 3+3 i'ustruje ovaj s'u%ajka je 1=b + Kosa 'inija na s'i)i prestav'ja sve ta%ke za koje je u'az u $re.u njenak 70

    [ ] 7111 == pn

    Tre(a pri$etiti a !e "rani%na 'inija o'u%ivanja uvek (iti orto"ona'na na $atri)u sate.ina$a- i a se po'o.aj "rani%ne 'inije $o.e po$erati pro$eno$ para$etra b+ ;U op*te$s'u%aju- $atri)a Wsastoji se o vi*e vektora vrsta+ :a svaku vrstu $atri)e Wpostoja!e jena"rani%na 'inija+< Osen%eni eo S'ike ?+3+ sar.i sve u'azne vektore za koje !e iz'az $re.e (iti

    jenak 1+ Iz'az !e (iti 1 za sve osta'e u'azne vektore+

    S'ika ?+3+ 4rani)a o'u%ivanja ko per)eptrona

    K'ju%na oso(ina per)eptrona sa jeni$ neurono$ je a $o.e a razvoji u'aze vektore u ve

    kate"orije+ 4rani)a o'u%ivanja iz$e5u kate"orija ore5ena je jena%ino$7=+b0p

    ,o*to "rani)a $ora (iti 'inearna- per)eptron sa jeni$ neurono$ $o.e se koristiti sa$o zaprepoznavanje 'inearno razvojivi& uzoraka+

    4.+.+. Primr za prpoz#a"a#$ (zoraka

    Saa !e$o se posvetiti pro('e$u za prepoznavanje ja(uka i po$oran.i+ ,o*to u'azne uzorke

    tre(a razvojiti u sa$o ve ovojene kate"orije- $o.e$o koristiti per)eptron sa sa$o jeni$neurono$+ U'azni vektori su troi$enziona'ni ( )3=* - tako a !e jena%ina per)eptronai$ati o('ik

    [ ]

    +

    = b

    p

    p

    p

    (((hardlimsa /,-/,./,/

    3

    2

    1

    `e'i$o a orei$o (ias b i e'e$ente $atri)e sa te.ina$a tako a per)eptron (ue u$o"u!nosti a razvoji ja(uke o po$oran.i+ Na pri$er- .e'i$o a iz'az per)eptrona (ue1

    ka je na u'azu ja(uka- a a iz'az per)eptrona (ue 1 ka je na u'azu po$oran.a+Kori*!enje$ prin)ipa koji je i'ustrovan na S'i)i 3+3- tre(a a prona5e$o 'inearnu "rani)u

    /?

  • 7/25/2019 Vest Int Skripta Pot Miklos

    46/129

    Ve*ta%ka Inte'i"en)ija Skripta

    koja razvaja ja(uke o po$oran.i+ va vektora prototipa prikazana su na S'i)i ?+/+ Naosnovu s'ike vii se a je si$etri%na "rani)a koja razvaja ova va vektora ravan 31- pp +

    S'ika ?+/+ ,rototip vektori

    Davan 31- pp koja !e (iti "rani)a o'u%ivanja $o.e se opisti jena%ino$

    72 =pi'i

    [ ] 777173

    2

    1

    =+

    p

    p

    p

    Te.ine i (ias i$a!e vrenosti

    [ ]717=0 - 7=b +

    6atri)a sa te.ina$a je orto"ona'na na "rani)u o'u%ivanja i pokazuje pre$a o('asti kojasar.i prototip vektor 2p ;ja(uka< za koju .e'i$o a iz'az neura'ne $re.e (ue 1+ Bias i$avrenost 7- jer "rani)a o'u%ivanja pro'azi kroz koorinatni po%etak+

    Saa !e$o testirati neura'nu $re.u za k'asi#ika)iju ja(uka i po$oran.i+ Ona !e savr*eno

    izvr*avati zaatakjer

    Nara#%!a@

    [ ] ( )narand)a1/1hardlimsa 17

    1

    1

    1

    =

    +

    =

    Ja'(ka@

    /

  • 7/25/2019 Vest Int Skripta Pot Miklos

    47/129

    Ve*ta%ka Inte'i"en)ija Skripta

    [ ] ( )jabuka1/1hardlimsa 17

    1

    1

    1

    =

    +

    =

    6e5uti$- *ta se e*ava ka u k'asi#ikator stavi$o ne (a* savr*enu naran.u= ,retpostavi$oa je etektovao po$oran.u sa e'ipti%ki$ o('iko$+ Taa !e u'azni vektor (iti ore5enjena%ino$

    =1

    1

    1

    2p

    Oziv $re.e u ovo$ s'u%aju (i!e

    [ ] ( )narand)a1/1hardlimsa 17

    1

    1

    1

    =

    +

    =

    Svaki u'azni vektor koji je ('i.i prototip vektoru naran.e ne"o prototip vektoru ja(uke;Euk'isko rastojanje< (i!e k'asi#ikovan kao naran.a+

    2a eksperimentisanje sa perceptron mre)om i jabuka3pomorand)a klasifikatorom mo)emokoristiti 4eural 4et(ork 5esign 5emonstration Perceptron 6lassification !nn3p)#7

    U ovo$ pri$eru $re.u s$o $o"'i a izajnira$o "ra#i%ki (iranje$ "rani)u o'u%ivanja kojajasno razvaja uzorke+ Kakva je situa)ija sa ru"i$ prakti%ni$ pro('e$i$a "e u'azi i$ajuvi*e i$enzija+ Taa se $oraju koristiti a'"orit$i za o(u%avanje za re*avanje ko$p'eksni&

    pro('e$a+

    Najva.nija oso(ina jenos'ojno" per)eptrona je a ona "eneri*e 'inearnu "rani)u o'u%ivanjaza razvajanje u'azni& vektora+ ta se $e5uti$ e*ava- uko'iko i$a$o uzorke koji se ne$o"u razvojiti 'inearno$ "rani)o$= Taa se re*enje tra.i uvo5enje$ vi*es'ojno"

    per)eptrona koji $o.e a re*i pro('e$ (i'o koje s'o.enosti+

    /G

  • 7/25/2019 Vest Int Skripta Pot Miklos

    48/129

    Ve*ta%ka Inte'i"en)ija Skripta

    5. Pra"ila za o'(6a"a#$ pr)ptro#a

    >ean o pitanja koje se postav'ja'o u pret&ono$ oe'jku je (i'o0 Kako oreiti $atri)u sate.ina$a i (ias za per)eptron $re.u za $no"o u'aza "e je ne$o"u!e vizua'izovati "rani)eo'u%ivanja= U ovo$ oe'jku opisa!e$o a'"orita$ za o(u%avanje per)eptron $re.e kako (inau%i'i a re*avaju pro('e$e k'asi#ika)ije+ ,o%e!e$o sa o(ja*njenje$ pravi'a za o(u%avanje iizve*!e$o pravi'a za o(u%avanje per)eptrona+ U zavr*no$ e'u raz$otri!e$o prenosti io"rani%enja neura'ne $re.e sa sa$o jeni$ s'oje$ neurona+

    avne 1/3 "oine- arren 6)Cu''o)& i a'ter ,itts prestavi'i su prvi ve*ta%ki neuron+4'avna oso(ina nji&ovo" $oe'a neurona (i'a je a se ponerisana su$a u'azni& si"na'aupore5uje sa unapre zaati$ pra"o$ kako (i se oreio iz'az neurona+ Kaa je su$a ve!a i'i

    jenaka o pra"a pra"u- iz'az !e (iti 1+ Kaa je su$a $anja o pra"a- iz'az !e (iti 7+ Autorisu pokaza'i a $re.e ovakvi& neurona $o"u izra%unati vrenost (i'o koje arit$eti%ke i'i'o"i%ke #unk)ije+ :a raz'iku o (io'o*ki& neurona- para$etri nji&ove $re.e tre(a a se

    projektuju po*to $etoe za o(u%anje jo* nisu (i'i poznate+ Ve! u to vre$e veza iz$e5u(io'o"ije i i"ita'ni& ra%unara izazva'a je ve'iko interesovanje+

    Kasni& peeseti& "oina pro*'o" veka @rank Dosen('att i $no"i ru"i istra.iva%i razvi'i suk'asu neura'ni& $re.a koje se nazivaju per)eptroni+ Neuroni u ovi$ $re.a$a (i'i su s'i%nioni$a koje su izu$e'i 6)Cu''o)k i ,itts+ Dosen('att9ov k'ju%ni oprinos (io je uvo5enje

    pravi'a za o(u%avanje za per)eptron $re.e za re*avanje pro('e$a k'asi#ika)ije uzoraka+ On jeokazao a !e nje"ova pravi'a za o(u%avanje uvek konver"irati pre$a pravi$ te.ina$a$re.e ;uko'iko takve te.ine postoje

  • 7/25/2019 Vest Int Skripta Pot Miklos

    49/129

    Ve*ta%ka Inte'i"en)ija Skripta

    5.+. Ar9itkt(ra pr)ptro#a

    ,re ne"o *to pre5e$o na pravi'a za o(u%avanje per)eptrona- uve*!e$o neke oatnepoj$ove u per)eptron $er.u+ Op*ta per)eptron $re.a prikazana je na S'i)i +1+

    S'ika +1+ ,er)eptron $re.a

    Iz'az iz $re.e ore5en je s'ee!o$ #or$u'o$0

  • 7/25/2019 Vest Int Skripta Pot Miklos

    50/129

    Ve*ta%ka Inte'i"en)ija Skripta

    ( )

    == ru"e7

    7nza1

    n&ar'i$A ;/+Gean o $o"u!i& pristupa (io (i a postavi$o (1 tako a (ue jenakp/+ To (i o(ez(ei'oa p/u (uu!nosti (ue ispravno k'asi#ikovan+ Na .a'ost- nije te*ko konstruisati pri$er zakoji ovo pravi'o ne $o.e a prona5e re*enje+ S'ee!i ija"ra$ pokazuje pro('e$ koji ne$o.e a se re*i ako vektor sa te.ina$a pokazuje irektno pre$a jeno$ o va )rna kru.i!a+Uko'iko (is$o pri$eni'i pravi'o p(=1 - svaki put !e jean o ova va vektora (iti po"re*nok'asi#ikovan- te.ine !e prosto os)i'ovati u jenu i ru"u stranu- a re*enje nika ne!e (iti

    prona5eno+

    ru"a $o"u!nost (i'a (i sa(iranjep/ i (1 + Sa(iranje$p/ i (1 - (1 (i pokazivao vi*epre$ap/+ Vi*estruko ponav'janje ovo" postupka izazva'o (i a s$er (1 asi$ptotski te.i kas$erup/+ Ovo pravi'o $ate$ati%ki se $o.e izraziti kao0

    ??

  • 7/25/2019 Vest Int Skripta Pot Miklos

    56/129

    Ve*ta%ka Inte'i"en)ija Skripta

    Ako je t$/ i a$1- taa p(( oldne( +=11 ;PPean $o"u!i iz(or i'ustrovan je na S'i)i +11+- "e osen%eneo('asti ozna%avaju $esta na koji$a je iz'az 1+ Najta$nija osen%ena o('ast ozna%ava a suiz'azi o(a neurona jenaka 1+ Ovo re*enje o"ovara )i'jni$ vrenosti$a

    =

    =

    =

    =

    =

    =

    =

    =

    1

    1-

    1

    10/-

    7

    1-

    7

    103

    -1

    7-

    1

    702-

    7

    7-

    7

    701

    IGC?

    /321

    ttclassttclass

    ttclassttclass

    Saa $o.e$o oa(rati vektore sa te.ina$a0

    =1

    31(

    =2

    12(

    u.ine vektora te.ina nije o interesa- va.na je sa$o nji&ova us$erenost+ Oni $oraju (itiorto"ona'ni na na "rani)e o'u%ivanja+ Saa $o.e$o oreiti (ias- iz(oro$ ta%ke na"rani)i koja zaovo'java jena%inu ;P

  • 7/25/2019 Vest Int Skripta Pot Miklos

    65/129

    Ve*ta%ka Inte'i"en)ija Skripta

    S'ika +11+ O('asti o'u%ivanja

    U $atri%noj #or$i i$a$o s'ee!e re'a)ije0

    =

    =

    21

    13

    2

    1

    (

    (0

    =

    7

    1b

    Ovi$ je projektovanje neura'ne $re.e zavr*eno+

    1. Riti &l%:i pro'lm kla&i?ika)i$ pomo:( pr)ptro# pra"ila o'(k. Na (lazmr! r%om %o"&ti (laz o#oliki 'ro$ p(ta koliko $ potr'#o %a pro'lm '(%r#. Nako# pro#ala!#$a r#$a #a)rtati gra?ik pro'lma.

    =

    =

    =

    =

    =

    =

    =

    = 1-

    1

    17-

    2

    21-

    2

    17-

    2

    2//332211 tptptptp

    Kori&titi i#i)i$al# t!i# i 'ia&@

    ( ) [ ]777 =0 ( ) 77 =b

    ,o%e!e$o sa izra%unavanje$ iz'aza per)eptrona a za prvi u'azni vektor 1p koriste!iini)ija'ne vrenosti te.ina i (ias+

    ( ) ( )( ) [ ] ( ) 17&ar'i$72

    277&ar'i$77&ar'i$ 1 ==

    +

    =+= bp0a

    Iz'az a ne o"ovara .e'jenoj vrenosti 1t - zato koristi$o per)eptron pravi'o a na

    osnovu "re*ke orei$o nove te.ine i (ias+

    1171 === ate( ) ( ) [ ] ( )[ ] [ ]222217771 1 =+=+= ,ep00

    ( ) ( ) ( ) 11771 =+=+= ebb

    Saa na u'az $re.e ovoi$o ru"i u'azni vektor 2p koriste!i nove vrenosti te.ina i(ias+

    ( ) ( )( ) [ ] ( ) 11&ar'i$12

    122&ar'i$11&ar'i$

    2

    ==

    =+= bp0a

    ?

  • 7/25/2019 Vest Int Skripta Pot Miklos

    66/129

    Ve*ta%ka Inte'i"en)ija Skripta

    Ovo" puta iz'az ajenak je .e'jeno$ iz'azu 2t +Na osnovu per)eptron pravi'a o(uke- nevr*i$o nikakva poe*avanje te.ina+

    ( ) ( )12 00 =( ) ( )12 bb =

    Saa o'azi$o o tre!e" u'azno" vektora+

    ( ) ( )( ) [ ] ( ) 71&ar'i$12

    222&ar'i$22&ar'i$ 3 ==

    =+= bp0a

    Oziv $re.e na u'azni vektor 3p jenak je .e'jeno$ iz'azu 3t - tako a ne!e (itinikakvi& pro$ena+

    ( ) ( )23 00 =

    ( ) ( )23 bb =

    Saa !e$o na u'az $re.e ovesti pos'enji u'azni vektor /p +

    ( ) ( )( ) [ ] ( ) 71&ar'i$11

    122&ar'i$33&ar'i$ / ==

    =+= bp0a

    Ovo" puta iz'az a ne o"ovara .e'jeno$ iz'azu /t + ,er)eptron pravi'o !e rezu'tovatinovi$ skupo$ vrenosti za i (+

    171/ === ate( ) ( ) [ ] [ ] [ ]13111223/ / =+=+= ,ep00

    ( ) ( ) 7113/ =+=+= ebb

    Nakon *to s$o pro*'i sve u'azne vektore- ponovo !e$o po%eti o u'azno" vektora 1p +Ovo" puta iz'az ajenak je .e'jeno$ iz'azu 1t +

    ( ) ( )( ) [ ] ( ) 7I&ar'i$72

    213&ar'i$//&ar'i$ 1 ==

    +

    =+= bp0a

    ,o*to se o(ijeni iz'az pok'apa sa .e'jeni$ iz'azo$- ne!e (iti pro$ena+

    ( ) ( )/? 00 =( ) ( )/? bb =

    ru"o ovo5enje u'azno" vektora 2p rezu'tova!e "re*ko$- a nove vrenosti te.ina i(ias9a je0

    ( ) ( )( ) [ ] ( ) 71&ar'i$7

    2

    113&ar'i$??&ar'i$ 2 ==

    +

    =+= bp0a

  • 7/25/2019 Vest Int Skripta Pot Miklos

    67/129

    Ve*ta%ka Inte'i"en)ija Skripta

    Nove vrenosti su0

    1712 === ate( ) ( ) [ ] [ ] [ ]3221113?C 2 =+=+= ,ep00

    ( ) ( ) 117?C =+=+= ebb

    U s'ee!a %etiri pro'aska ;svi uzor)i< ne!e (iti "re*ke+

    ( ) ( )( ) [ ] 33 712

    232&ar'i$CC&ar'i$ tbp0a ==

    +

    =+=

    ( ) ( )( ) [ ] // 111

    132&ar'i$CC&ar'i$ tbp0a ==

    +

    =+=

    ( ) ( )( ) [ ] 11 712

    232&ar'i$CC&ar'i$ tbp0a ==

    +

    =+=

    ( ) ( )( ) [ ] 22 112

    132&ar'i$CC&ar'i$ tbp0a ==

    +

    =+=

    ,o*to za sve u'azne vrenosti o(ija$o .e'jene iz'aze- zak'ju%uje$o a a'"orita$konver"ira+ Krajnje re*enje je0

    [ ]32 =0 1=b

    Saa $o.e$o na)rtati "rani)u o'u%ivanja re*enja+ 4rani)a o'u%ivanja ore5ena jejena%ino$0

    7132 2122-111-1 =+=++=+= ppbp(p(b0pn

    ,resek 2p i "rani)e o'u%ivanja na'azi$o postav'janje$ 71=p 0

    3

    1

    3

    1

    2-1

    2 ===

    (

    bp ako je 71=p

    ,resek 1p i "rani)e o'u%ivanja na'azi$o postav'janje$ 72=p 0

    21

    21

    1-1

    1 ===

    (bp ako je 72=p

    Dezu'tuju!a "rani)a o'u%ivanja prikazana je na S'i)i +12+

    S'ika +12+ 4rani)a o'u%ivanja

    G

  • 7/25/2019 Vest Int Skripta Pot Miklos

    68/129

    Ve*ta%ka Inte'i"en)ija Skripta

    4. Pro$kto"ati #(ral#( mr!( ko$a : (zork raz"r&tati ( 6tiri o%"o$# kla&.Pro$kto"a#$ iz"riti kori:#$m pr)ptro# pra"ila o'(k.

    Skup za o(u%avanje0

    =

    =

    =

    =

    =

    =

    1

    7-

    1

    2

    7

    7-

    2

    1

    7

    7-

    1

    1332211

    tptptp

    =

    =

    =

    =

    =

    =

    7

    1-

    1

    2

    7

    1-

    2

    1

    1

    7-

    7

    2CC??// tptptp

    1

    1-

    2

    2

    1

    1-

    1

    1IIGG

    =

    =

    =

    = tptp

    A'"orita$ !e$o po%eti s'ee!i$ ini)ija'ni$ te.ina$a i (ias9o$0

    ( ) ( )

    =

    =

    1

    17-

    17

    717 b0

    ,rva itera)ija je

    ( ) ( )( )

    =

    +

    =+=

    1

    1

    1

    1

    1

    1

    17

    71&ar'i$77&ar'i$ 1 bp0a

    =

    ==

    1

    1

    1

    1

    7

    71 ate

    ( ) ( ) [ ]

    =

    +

    =+= 71

    17

    111

    1

    17

    71

    71 1,

    ep00

    ( ) ( )

    =

    +

    =+=

    7

    7

    1

    1

    1

    171 ebb

    ru"a itera)ija je

    ( ) ( )( )

    =

    +

    =+=

    7

    7

    7

    7

    2

    1

    71

    17&ar'i$11&ar'i$ 2 bp0a

    =

    ==

    7

    7

    7

    7

    7

    72 ate

    ( ) ( ) [ ]

    =

    +

    =+=

    71

    1721

    7

    7

    71

    1712 2

    ,ep00

    ( ) ( )

    =

    +

    =+=

    7

    7

    7

    7

    7

    712 ebb

    Tre!a itera)ija je0

    ( ) ( )( )

    =

    +

    =+=

    7

    1

    7

    7

    1

    2

    71

    17&ar'i$22&ar'i$ 3 bp0a

    =

    ==

    11

    71

    17

    3 ate

  • 7/25/2019 Vest Int Skripta Pot Miklos

    69/129

    Ve*ta%ka Inte'i"en)ija Skripta

    ( ) ( ) [ ]

    =

    +

    =+=

    11

    7212

    1

    1

    71

    1723 3

    ,ep00

    ( ) ( )

    =

    +

    =+=

    1

    1

    1

    1

    7

    723 ebb

    O %etvrte o os$e itera)ije te.ine nije potre(no $enjati+

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

    ( ) ( ) ( ) ( ) ( ) ( )3/?CGI

    3/?CGI

    bbbbbb

    000000

    ==========

    eveta itera)ija aje s'ee!i rezu'tat0

    ( ) ( )( )

    =

    +

    =+=

    1

    7

    1

    1

    1

    1

    11

    72&ar'i$II&ar'i$ 1 bp0a

    =

    == 1

    7

    1

    7

    7

    71 ate

    ( ) ( ) [ ]

    =

    +

    =+=

    27

    7211

    1

    7

    11

    72IK 1

    ,ep00

    ( ) ( )

    =

    +

    =+=

    7

    1

    1

    7

    1

    1IK ebb

    U ovoj ta%ki a'"orita$ je konver"irao- jer !e svi u'azni uzor)i (iti ispravno k'asi#ikovani+Kona%ne "rani)e o'u%ivanja prikazane su na S'i)i +13+

    S'ika +13+ 4rani)e o'u%ivanja

  • 7/25/2019 Vest Int Skripta Pot Miklos

    70/129

    Ve*ta%ka Inte'i"en)ija Skripta

    8. Primr za (6#$ pr)ptro#a

    :a jeno $a*insko u%enje tipi%no ;tipi%no $a*insko u%enje- potre(no je< je potre(no vi*estotina i'i %ak vi*e &i'jaa pri$era- kako (i per)eptron nau%io .e'jena znanja+ Na pri$er- ako.e'i$o a $a*ina nau%i a postav'ja ija"nozu ko neke konkretne (o'esti- "e je zaato a

    pa)ijent i$a sto$a%ne te"o(e- potre(ni su na$ poa)i vi*e &i'jaa (o'esnika+Ipak- za prikaz postupka ovo'jan je jean jenostavan pri$er sa sa$o neko'iko uzoraka+Upozna!e$o se sa jeni$ *ko'ski$ pri$ero$+ ,retpostavi$o a poznaje$o poatke zaneko'iko $aturanata- i na osnovu ti& poataka poku*a!e$o a orei$o koji o $'a5i& 5aka$o"u a ra%unaju na o'i%an uspe&+ ,retpostavi$o a poznaje$o s'ee!e poatke0 a 'i jeu%enik i$ao o'i%an uspe& u pret&onoj "oini- a 'i je u%enik vreno raio- a 'i je $u*ko"

    po'a i na kraju- a 'i je u%enik puno iz'azio i pio+ :a svako" o ovi& u%enika zna$o a 'i jeove "oine i$ao o'i%an uspe&+ One u%enike koji su i$a'i o'i%an uspe& s$atra!e$o a su

    pozitivni primeri- ok !e u%eni)i koji nisu i$a'i o'i%an uspe& s$atra!e$o a su negativniprimeri+ ,oa)i za *est u%enika prikazani su u Ta(e'i G+1+

    >6#ik

    /a li $ 'ioo%li6a#prol

    go%i#

    /a li $m(kara)

    /a li"r%#ora%i

    /a liprkomr#o

    pi$

    /a li : 'itio%li6a# o"

    go%i#

    Di)&ar a a ne a neA'an a a a ne aA'ison ne ne a ne ne>e## ne a ne a ne4ai' a ne a a aSi$on ne a a a ne

    Ta(e'a G+1+ ,oa)i u%enika

    Ve! na prvi po"'e $o.e$o prepoznati neko'iko stvari0 va u%enika koji su posti"'i o'i%anuspe& ;A'an i 4ai'< i pro*'e "oine su (i'i o'i%ni- i o(a u%enika su vreno rai'a+ 6o.e$o

    pri$etiti a nijean o u%enika koji nisu posti"'i o'i%an uspe& ne$aju po$enute oso(ine+Lo"i%no je a ako je neko pro*'e "oine i$ao o'i%an uspe&- i ove "oine je vreno raio a iove "oine i$a o'i%an uspe&+ 6e5uti$- na osnovu ta(e'e $o"'i (i zak'ju%iti i neka ru"a

    pravi'a+ Na pri$er ako je neko $u*ko" po'a i ne pije- i'i ako je neko .ensko" po'a ipreko$erno pije- i$a!e o'i%an uspe& u *ko'i+ Ova pravi'a va.e u s'u%aju zaati& u%enika- a'isu veo$a %une- i $no"o su s'o.enije+

    U ovo$ pri$eru o(u%avanje !e$o izvr*iti sa jeni$ neurono$ ;per)eptrono$< koji jeprikazan na S'i)i G+1+

    S'ika G+1+ ,er)eptron za ore5ivanje uspe&a u%enika

    Ap'ika)ija koja koristi s'o.enu neura'nu $re.u $o.e za&tevati $re.u koja se sastoji o vi*estotina i'i %ak &i'jau neurona+ A'i i sa pojeina%ni$ neurono$ $o.e$o posti!i neko

    G7

  • 7/25/2019 Vest Int Skripta Pot Miklos

    71/129

    Ve*ta%ka Inte'i"en)ija Skripta

    o(u%avanje+ O(u%avanje neura'ne $re.e na osnovu zaati& poataka nije ni*ta ru"o- ne"opoe*avanje te.ina+ Svaki pri$er ore5uje jenu iz'azno9u'aznu vrenost+ Ove pri$ereispita$o jean za ru"i$ i ako aktue'na $re.a ne aje zaovo'javaju!i iz'az- ona u $a'oj$eri pro$eni$o te.ine tako- a pove!a$o te.ine koje pripaaju aktivni$ veza$a ako jestvarni iz'az iz $re.e 7- a )i'jna vrenost ;na osnovu pri$erae##9a i 4ai'9a- a'i ispitivanje$ Si$on9a te.ine $enja$o na 7+2- 7+1?- 7+2 i+7+1+Ovi$ se o(u%avanje jo* nije zavr*i'o+ Sve uzorke tre(a ponovo i ponovo ispitati- ok $re.ane (ue a'a ono'iko ta%ni& rezu'tata ko'iko je $o"u!e ;$ini$iza)ija "re*ke

  • 7/25/2019 Vest Int Skripta Pot Miklos

    72/129

    Ve*ta%ka Inte'i"en)ija Skripta

    U ovo$ pri$eru $o.e$o oe'iti ore5en zna%aj te.ina$a0 te.ina koja o"ovara uspe&u izpret&one "oine i te.ina koja o"ovara vreno$ rau- na kraju o(u%avanja i$aju ve!evrenosti *to zna%i a su ti para$etri zna%ajniji u onosu na po' u%enika i na to a 'i u%enikvo'i a pije a'ko&o'+

    Osnovni a'"orita$ za izvr*avanje postupka o(u%avanja je s'ee!i0 S'u%ajno postaviti po%etne vrenosti te.ina+ :a svaki u'azni uzorak ponoviti s'ee!e0

    1+ ako je aktue'ni iz'az 1- a .e'jeni iz'az (i tre(a'o a (ue 7- ona tre(a s$anjitivrenosti te.ina aktivni& veza za d+

    2+ ako je aktue'ni iz'az 7- a .e'jeni iz'az (i tre(a'o a (ue 1- ona tre(a pove!ativrenosti te.ina aktivni& veza za d+

    ok $re.a ne (ue ava'a ta%ne iz'aze ;i'i ok ne istekne neko vre$enskoo"rani%enje

  • 7/25/2019 Vest Int Skripta Pot Miklos

    73/129

  • 7/25/2019 Vest Int Skripta Pot Miklos

    74/129

    Ve*ta%ka Inte'i"en)ija Skripta

    ;a< ;(> net=newp(P,T)

    ,ri %e$u su u'azni ar"u$enti0

    , je $atri)a i$enzija D 8 ; u'azni& vektora- svaki i$a D e'e$enata

  • 7/25/2019 Vest Int Skripta Pot Miklos

    108/129

    Ve*ta%ka Inte'i"en)ija Skripta

    4ra#i%ki inter#ejs je izajniran a (ue jenostavan i korisni%ki orijentisan+ Sa "ra#i%ki$inter#ejso$ !e$o se upoznati preko jeno" pri$era u ko$ !e$o kreirati per)eptron neura'nu$re.u za izvr*avanje 'o"i%keA45opera)ije+ U'azni vektor je p=[0 0 1 1; 0 1 0 1],ok su .e'jeni iz'azi t=[0 0 0 1]+ 6re.i !e$o ati i$e !"!et+ Nakon kreiranja- $re.a

    !e (iti o(u%ena a izvr*ava .e'jenu #unk)iju+ :a pozivanje "ra#i%ko" inter#ejsa u ko$anniprozor tre(a uku)ati nnt##l+ Taa !e se pojaviti prozor koji je prikazan na S'i)i 12++a+

    a< (=temp(1))

    p#ssiblem#3es(4,9)=temp(9); 4=4+1; end end endend

    '%n$ti#n##dr#ws = 'ind##dr#ws(p#ssiblem#3es,l#sedist) 3a '%n6$i4a nala5i #ne 3rste matri$e 6#4e nis% na l#sedist-% temp=p#ssiblem#3es; pri3remen# #3de smestam# d#bre 3rste

    s1=si5e(p#ssiblem#3es);

    s1=s1(1); s2=si5e(l#sedist); s2=s2(1);

    indees=[]; '#ri=19s1 temp1=p#ssiblem#3es(i,9); '#r4=19s2 temp2=l#sedist(4,9); i'iseA%al(temp1,temp2)==1 indees=[indees i]; end end

    end $lear i4 '#r i=19lenth(indees) p#ssiblem#3es(indees(i),9)=[]; end p#ssiblem#3es([indees],9)=[]; ##dr#ws=p#ssiblem#3es;end

    '%n$ti#n'inals#l%ti#n = etpath(l#sedist) 3a '%n6$i4a nala5i p%tan4% #d 6ra4n4e $3#ra d# 6#rena stabla7 B t#6% ra53i4an4a stabla ra53i$e se i $3#r#3i 6#4i nis% na p%tan4i

    6#na$n# resen4a7

    11G

  • 7/25/2019 Vest Int Skripta Pot Miklos

    118/129

    Ve*ta%ka Inte'i"en)ija Skripta

    s=si5e(l#sedist); s=s(1); indees=[]; '#ri=19s-1 i' l#sedist(i,)==l#sedist(i+1,) indees=[indees i];

    end end l#sedist([indees],9)=[]; 'inals#l%ti#n=l#sedist;end

    Ta(e'a +2+1+ prikazuje ini)ija'iza)iju i prva tri koraka na'a.enje re*enja korak po korak naosnovu napisano" a'"orit$a+

    Inicijalizacija

    startstate 3 3 7 7 7F

    "oa'state 7 7 3 3 1Fi+ OpenList \e$ptY C'oseList \e$ptYii+ OpenList 3 3 7 7 7Fiii+ OpenList \e$ptY

    =

    11122

    17231

    17132

    kmovespossible

    =

    11122

    17231

    17132

  • 7/25/2019 Vest Int Skripta Pot Miklos

    119/129

    Ve*ta%ka Inte'i"en)ija Skripta

    ,ro('e$ pre'aska vuka- ze)a i kupusa preko reke+ Na jenoj strani reke na'aze se vuk- ze) ikupus+ a$.ija i$a zaatak a i& preveze na ru"u stranu o(a'e+ Us'ovi su a u %a$a) osi$%a$.ije $o.e a stane jo* sa$o nekone*to ;vuk- ze) i'i kupus< + Uko'iko na jenoj o(a'i

    (ez nazora %a$.ije ostanu vuk i ze)- vuk !e pojesti ze)a+ Ako na jenoj o(a'i reke (eznazora %a$.ije ostanu ze) i kupus- ze) !e pojesti kupus+

    :aatak re*iti pretra"o$ u *irinu i pretra"o$ u u(inu+Kao eo re*enja ato je sta('o za pretra"u u(insko$ pretra"o$+

    S'ika +2+3+ Sta('o za pretra"u za pre'azak vuka- ze)a i kupusa preko reke $etoo$ u(inskepretra"e

    11

  • 7/25/2019 Vest Int Skripta Pot Miklos

    120/129

    Ve*ta%ka Inte'i"en)ija Skripta

    /o%atak 2. Lokal#a prtraga

    Zadatak.

    ,ro('e$ kra'ji)a+ Na *a&ovsku ta('u potre(no je postaviti kra'ji)a tako a se $e5uso(none napaaju+

    Reenje.

    De*enje ovo" zaatka nije jenozna%no+ 6i !e$o zar.ati prvo re*enje koje prona5e$o+ Tokre*avanja zaatka je s'ee!i0 U svaku ko'onu na s'u%ajno $esto stavi$o po jenu kra'ji)u i usvako$ koraku po$eri$o jenu kra'ji)u- tako a nakon to" poteza (ue naj$anje$e5uso(ni& napaa+ Ci'jno stanje je ka (roj $e5uso(ni& napaa pane na nu'u+

    Na S'i)i +3+1+ prikazano je jeno o $o"u!i& po'azni& stanja- koje je s'u%ajno oa(rano+ :ato stanje (roj $e5uso(ni& napaa iz$e5u kra'ji)a je 1G+ Na s'i)i su tako5e prikazani svi$o"u!i potezi i (roj napaa nakon to" poteza+ Naj$anji (roj na *a&ovskoj ta('i sa S'ike 81 je

    12- a to je $ini$a'an (roj napaa nakon prvo" poteza+ Broj 12 se na'azi na vi*e po'ja- a tozna%i a na vi*e na%ina $o.e$o a pre5e$o u s'ee!e naj(o'je stanje+ U ovakvi$s'u%ajevi$a s'ee!e stanje (ira$o s'u%ajno o naj(o'ji& $o"u!i& stanja+

    S'ika +3+1+ >eno o $o"u!i& po'azni& stanja i kva'itet s'ee!e" poteza

    S'ei ko$p'etan pro"ra$ski ko napisan u 6ATLAB9u za re*avanje ovo" pro('e$a+

    3a4 pr#ram resa3a pr#blem C 6ral4i$a met#d#m l#6alne pretrae7 Pr#ram %3e6 nala5i slede$e stan4e ta6# da tra5i stan4e sa na4man4im br#4em napada7 B slede$em 6#ra6% br#4 napada ne m#ra da b%de man4i #d br#4a napada % preth#dn#m 6#ra6%7$lear$l$=5er#s(C);r=randperm(C);

    '#ri=19C (r(i),i)=1;endsh#wthes#l%ti#n()

    $lear i[% 3]='ind();

    127

  • 7/25/2019 Vest Int Skripta Pot Miklos

    121/129

    Ve*ta%ka Inte'i"en)ija Skripta

    n%matt=100*;A='indatta$6s();$lear %3r$%rrentn%matt=A;whileA

  • 7/25/2019 Vest Int Skripta Pot Miklos

    122/129

    Ve*ta%ka Inte'i"en)ija Skripta

    '#ri=07919C7 3=[i i]; line(%,3,G$#l#rG,G6G) end 3=[0 I]; '#ri=07919C7

    %=[i i]; line(%,3,G$#l#rG,G6G) endend

    122

  • 7/25/2019 Vest Int Skripta Pot Miklos

    123/129

    Ve*ta%ka Inte'i"en)ija Skripta

    /o%atak 1. Igr za %" o&o'

    Zadatak.

    Napisati pro"ra$ u pro"ra$sko$ paketu 6ATLAB za 'o"i%ku i"ru Ni$+

    Reenje.

    ,re pisanja pro"ra$sko" koa nave*!e$o pravi'a Ni$ i"re o(jasniti o(itnu strate"iju+i(i)e su "rupisane u tri ovojene "o$i'e+ va i"ra%a koji u%estvuju u i"ri naiz$eni%nouzi$aju proizvo'jan (roj *i(i)a sa jene o "o$i'a+ ,o(enik je onaj i"ra% koji pos'enjiuz$e *i(i)u ;*i(i)eeno o stanja i"re prikazano je na S'i)i +/+1+

    S'ika +/+1+ >eno o $o"u!i& stanja i"re

    I"ra i$a va stanja01. Dobitno:Ako i"ra% $o.e a i"ra tako a $o.e a po(ei (ez o(zira na potez

    protivnika+2. Gubitno:Ako i"ra% ne$a o(itni potez+

    o(itna strate"ija0

    7 7 1 1 37 1 7 1 ?1 7 7 7 1 1 1 7 OD

    Tvrnja0 "u(itna stanja su ona u koji$a #unk)ija OD i$a vrenost nu'a+:a ato stanje i"ra% koji je na potezu i$a o(itnu strate"iju ;po*to je vrenost OD #unk)ije

    po ko'ona$a raz'i%it o nu'e- $o"u!e je uzeti *i(i)e tako a pos'e poteza OD #unk)ija i$avrenost nu'a

  • 7/25/2019 Vest Int Skripta Pot Miklos

    124/129

    Ve*ta%ka Inte'i"en)ija Skripta

    S'ei pro"ra$ski ko napisan u 6ATLAB9u za Ni$ i"ru+

    This pr#ram is a !8H ame7$lear$l$=inp%t(G#mp%ter #r h%man determines the n%mber #' beans ($Jh)K G,GsG);

    i' ==G$G r=randperm(D); p1=r(1); p2=r(2); p.=r(.);elsei' ==GhG p1=inp%t(G:irst pEle9 G); p2=inp%t(G&e$#nd pEle9 G); p.=inp%t(GThird pEle9 G);endp=[p1 p2 p.];disp(G G)disp(G#mp%ter is PlaEer 1, h%man is PlaEer 27G)disp(G G) p1=2; p2=.; p.=1;

    p1=1; p2=0; p.=0; p=[p1 p2 p.];

    ws = winnin strateE

    ws=bit#r(bit#r(p1,p2),p.);

    i' ws==0 disp(GPlaEer 2 has winnin strateE7G) disp(G G)elsei' ws

  • 7/25/2019 Vest Int Skripta Pot Miklos

    125/129

    Ve*ta%ka Inte'i"en)ija Skripta

    'print'(GPEle . i beans7 LnG,p(.)) disp(G G) i' s%m(p)==0 disp(GPlaEer 2 is the winner7G) brea6 end

    end

    '%n$ti#n [p,i] =$#mp%terplaE (p) i' bit#r(bit#r(p(1),p(2)),p(.))==0 i='ind(p); i=i(1); p(i)=p(i)-1; else '#r i=19. i' p(i)==0

    $#ntin%eend

    '#r 4=19p(i) i' bit#r(bit#r(p(1),p(2)),p(.))==0 ret%rn else p(i)=p(i)-1; end end i' bit#r(bit#r(p(1),p(2)),p(.))==0

    ret%rnelse

    p(i)=p(i)+4; end

    end

    endend

    12?

  • 7/25/2019 Vest Int Skripta Pot Miklos

    126/129

    Ve*ta%ka Inte'i"en)ija Skripta

    /o%atak 4. G#t&ki algoritmi

    Zadatak.

    Napisati pro"ra$ za re*avanje pro('e$a kra'ji)a $etoo$ "enetsko" a'"orit$a+

    Reenje.

    ,o*to je pro('e$ kra'ji)a ve! o(ja*njen u ranije$ e'u skripte- ove navoi$o sa$opro"ra$ski ko napisan u 6ATLAB9u+

    This pr#ram $reates the p#p%lati#n '#r the C-A%eens pr#blem t# be s#l3ed with eneti$ al#rithms7 The 3ariable n%mp#p $#ntains the n%mber #' indi3id%als7$lear$l$n%mp#p=10; br#4 4edin6i % p#p%la$i4i=5er#s(C,C,n%mp#p); 3eli$ina matri$e CC'#ri=19C ini$i4aln# ra5mestan4e 6ral4i$a

    '#r4=19n%mp#p % s3a6% 6#l#n% p# 4edna a=randperm(C); a=a(1); (a,i,4)=1; endendt1=$l#$6;'#rn%men=19000 n%mber #' enerati#ns '#r the al#rithm

    n%matta$6=5er#s(1,n%mp#p); in the beinnin the n%mber #' atta$6s '#r ea$h indi3id%al '#ri=19n%mp#p is 0

    temp=(9,9,i); [p A]='ind(temp); ='indatta$6s(p,A); n%matta$6(i)=; end [% 3]=min(n%matta$6); % minimal element, 3 inde #' theelement i'min(n%matta$6)==0 res%lt=(9,9,3) imsh#w(1-res%lt,G8nitialHani'i$ati#nG,G'itG) sh#wthes#l%ti#n(res%lt) ret%rn; end

    M=sele$ti#n(,n%matta$6,n%mp#p);

    =re$#mbinati#n(M,n%mp#p);

    "=m%tati#n();

    ="; min(n%matta$6); t2=etime($l#$6,t1);end

    '%n$ti#nn%mber#''atta$6s = 'indatta$6s(a,b) This '%n$ti#n 'inds the n%mber #' atta$6s between C A%eens

    3e$t#rs a and b $#ntain the p#siti#ns #' the A%eens

    12

  • 7/25/2019 Vest Int Skripta Pot Miklos

    127/129

    Ve*ta%ka Inte'i"en)ija Skripta

    n%mber#''atta$6s = 0;'#ri=19D p1=a(i); A1=b(i); '#r4=i+19C p2=a(4);

    A2=b(4); i'((p1==p2) FF (A1==A2) FF (p1-p2==A1-A2) FF (p1-p2==A2-A1)) n%mber#''atta$6s=n%mber#''atta$6s+1; end end n%mber#''atta$6s=n%mber#''atta$6s-1;endend

    '%n$ti#nM = sele$ti#n(,n%matta$6, n%mp#p) #%lette wheel sele$ti#n '#r the /

    a33al%e=s%m(n%matta$6)Jn%mp#p; 'itnesstemp=n%matta$6Ja33al%e; 'itness=17J'itnesstemp; r#%lette=$%ms%m('itness);

    '#ri=19n%mp#p rndn%m=ma(r#%lette)*rand; '#r4=19n%mp#p i'r#%lette(4)>rndn%m M(9,9,i)=(9,9,4); brea6; end end

    endend

    '%n$ti#n = re$#mbinati#n(M,n%mp#p) re$#mbinati#n #' sele$ted indi3id%als in this $ase we %se #ne p#int $r#ss#3er #' tw# indi3id%als

    '#ri=1929n%mp#p-1 temp1=M(9,9,i); temp2=M(9,9,i+1); temprnd=r#%nd(N*rand+1); temp.=[temp1(9,19temprnd) temp2(9,temprnd+19C)]; temp=[temp2(9,19temprnd) temp1(9,temprnd+19C)]; (9,9,i)=temp.; (9,9,i+1)=temp; endend

    '%n$ti#n" = m%tati#n() This '%n$ti#n per'#rms the m%tati#n #perati#n a'ter re$#mbinati#n Oe $hane the p#siti#n #' #ne A%een in the wh#le p#p%lati#n temprnd1=r#%nd(I*rand+1); temprnd2=r#%nd(D*rand+1);

    temprnd.=r#%nd(D*rand+1); (9,temprnd2,temprnd1)=0; (temprnd.,temprnd2,temprnd1)=1;

    12G

  • 7/25/2019 Vest Int Skripta Pot Miklos

    128/129

    Ve*ta%ka Inte'i"en)ija Skripta

    "=;end

    '%n$ti#nsh#wthes#l%ti#n(res%lt) imsh#w(1-res%lt,G8nitialHani'i$ati#nG,G'itG)

    h#ld #n %=[0 I]; '#ri=07919C7 3=[i i]; line(%,3,G$#l#rG,G6G) end 3=[0 I]; '#ri=07919C7 %=[i i]; line(%,3,G$#l#rG,G6G) endend

    12

  • 7/25/2019 Vest Int Skripta Pot Miklos

    129/129

    Ve*ta%ka Inte'i"en)ija Skripta

    Litrat(ra

    1+ Stuart Dusse''- ,eter Norvi"0 HestersIges intelligencia- ,ane$Klnvkiam- 277?+

    2+ Si$on Harris- >a$es Doss0 FezdJkKn+v az algoritmusokrLl- S:AKKiam- 277+

    3+ A'ison Cabse0 HestersIges >ntelligencia ? Alapismeretek- ,ane$klnvkiam- 2772+

    /+ '$os Atti'a- 4r Snor- Horvt& 4(or- Vrkoninq Km)zAnna$ria0 Menetikus algoritmusok- Tpote8 Kiam- Buapest- 2772+

    ?+ ra"an Kuko'j0 Sistemi zasnovani na raunarskoj inteligenciji- @TNIzava*tvo-Novi Sa- 277G+

    + A'tri)&ter 6rta- Horvt& 4(or- ,ataki Bq'a- Strausz 4lr"- Tak)s4(or- Va'on >mzse#04eurNlis hNlLzatok- ,ane$ Klnvkiam- Buapest-277+