• Nie Znaleziono Wyników

Og ´o ln y sc h e m a t p rz e sz u k iw a n ia w p rz e st rz e n i st a n ´o w

N/A
N/A
Protected

Academic year: 2021

Share "Og ´o ln y sc h e m a t p rz e sz u k iw a n ia w p rz e st rz e n i st a n ´o w"

Copied!
22
0
0

Pełen tekst

(1)

M o ty w a cj a

Jeste´smyekspertem/doradc֒awjednejzagencjirz֒adowych,iwniedziel֒ewieczorem prezesagencjidzwonidonasnakom´ork֒e,˙zebypoinformowa´c,˙zewponiedzia lekrano ogodzinie10-tejodb ֒edziesi ֒ewa˙znanaradawMinisterstwieInfrastruktury,ikonieczna jestnaszaniezawodnaobecno´s´c. Corobi´c? Mamywielemo˙zliwo´sci,mo˙zemywr´oci´cdokolacjizrodzin ֒a,mo˙zemyp´oj´s´cnaspacer ˙zebysi֒eodstresowa´c. Wiemyjednak,˙zemusimyzaplanowa´cpodr´o˙zdoWarszawy.Samolotniejestdobr֒a opcj ֒a.Wtanichliniachlotniczychwszystkiemiejscas ֒adawnowykupione,awLOTs ֒a pewniejeszczemiejsca,alejakranob ֒edziemg laisamolotnieodleci,tozostawimy szefanalodzie,ipotempewniemo˙zemysi֒eju˙zwog´oleniepokazywa´cwagencji (odpraw֒eprzy´sl֒anamnakonto). Cogorsza,PKPwdzisiejszychczasachr´ownie˙zmazwyczajodwo lywa´cpoci ֒agizdnia nadzie´n,iniemapewno´sci,czymo˙zemyliczy´cnanocnypoci ֒ag1:32(jest wWarszawieo7:32).Mo˙zemysprawdzi´ct֒eopcj֒e,alemo˙zesi֒eokaza´c,˙zeczekanas jazdasamochodem. Og´olnie,jestszeregmo˙zliwo´sci,ka˙zdaznichwymagastarannegorozwa˙zenia.Prowadzi todoprzeszukiwania. Metodyprzeszukiwaniamotywacja1 Przeszukiwaniejestelementemsk ladowymwszystkichmetodsztucznejinteligencji, izdolno´s´cskutecznegoprzeszukiwaniawog´olezdajesi֒eby´cinherentnymelementem inteligencji. Metodyprzeszukiwaniamotywacja2

Re p re ze n ta cj a p ro b le m u w p rz e st rz e n i st a n ´o w

1.przestrze´nstan´ow •mo˙zemie´cposta´ciloczynukartezja´nskiegodziedzinparametr´owopisu •przestrze´nmo˙zeby´csko´nczonalubniesko´nczona,cho´cniemusitoby´czwi֒azane ztrudno´sci֒aproblemu(np.szachy) •czasemcz֒e´s´cca lejformalniezdefiniowanejprzestrzenistanowi֒astany niedozwolone(inaczej:nieosi ֒agalne) 2.stanpocz ֒atkowy,zawszejawniepodany 3.standocelowy,jawnylubniejawny(warunekosi ֒agni ֒eciacelu) 4.dost ֒epneoperatoryprzej´sciaodstanudostanu,inaczej:funkcjanast ֒epnika, successorfunction •np.wpostaciwarunk´owstosowalno´sciiefekt´owdzia lania •operatormo˙zeby´csparametryzowany(np.wlabirynciemo˙zemymie´cjeden operatorruchu,czteryoperatory,alboliczb ֒emiejscrazycztery) ⇒Zadaniemjestwyznaczeniesekwencjioperator´owprowadz ֒acychzestanu pocz ֒atkowegodocelowego. Metodyprzeszukiwaniareprezentacjawprzestrzenistan´ow3

Og ´o ln y sc h e m a t p rz e sz u k iw a n ia w p rz e st rz e n i st a n ´o w

PROCEDUREGT(St);St-opisstanupoczatkowego BEGIN UNTILTerm(St)DO;stanStspelniawarunekcelu BEGIN Op:=first(ApplOps(St));wybierzoperatorstosowalnywstanieSt St:=Apply(Op,St);rezultatzastosowaniaOpdostanuSt END END Coprawdapowy˙zszyzapisalgorytmuGT(Generate-and-Test)sugeruje,˙zewybieraon pierwszymo˙zliwydozastosowaniawstanieStoperator,jednakalgorytmmawp lywna tenwyb´oroperatoraprzezodpowiednieposortowanielistyoperator´ow.Metod֒ewyboru operatoraprzezalgorytmprzeszukiwanianazywamystrategi ֒a. Zastosowaniedobrejstrategiijestwalgorytmachprzeszukiwaniazagadnieniem kluczowym. Metodyprzeszukiwaniareprezentacjawprzestrzenistan´ow4

(2)

S tr a te g ie ´sl e p e i p o in fo rm o w a n e

Strategiamo˙zeby´cca lkowicieog´olna,bazuj ֒acatylkonasyntaktycznychw lasno´sciach reprezentacjizagadnienia,idaj ֒acasi ֒ewykorzysta´cwewszystkichmo˙zliwych przypadkach.Takiestrategienazywasi ֒e´slepymi. Przyk lad:ca lkiemu˙zyteczn֒a´slep֒a(itodos lownie)strategi֒awprzeszukiwaniu labirynt´owjeststrategiaprawejr ֒eki.Strategiatapozwalaznale´z´cwyj´sciezlabiryntu, je´slitylkotakoweistnieje. Strategiemog֒ar´ownie˙zwykorzystywa´cinformacjeostanie,specyficznedladanej dziedzinyproblemowej.Takiestrategienazywamypoinformowanymi. Strategiepoinformowanekorzystaj ֒azinformacji,kt´orewog´olnymprzypadkunies ֒a dost֒epne,imog֒aby´cniezrozumia ledlaosobypostronnej,orazdlaca lkowicieog´olnego algorytmuprzeszukiwania. Przyk lad:wyobra´zmysobie,˙zeposzukuj ֒acwyj´sciazlabiryntuwiemy,˙zenazewn ֒atrz jestha las(np.szummorza),awlabiryncieca lkowitacisza.Wtedyzwyczajne nads luchiwaniewewszystkichkierunkachmog lobyby´c´zr´od lemstrategii poinformowanej,pomagaj֒acwwyborzew la´sciwychkrok´ow(cho´cstrategiatamo˙ze by´cskutecznatylkowpewnejniewielkiejodleg lo´sciodwyj´scia). Metodyprzeszukiwaniapodstawowestrategie5

K r´o tk ie p o d su m o w a n ie — p yt a n ia sp ra w d za j

֒

a ce

1.Zczegosk ladasi ֒ereprezentacjaproblemuwprzestrzenistan´ow? 2.Cotos ֒a´slepeipoinformowanestrategieprzeszukiwania?Czymsi ֒er´o˙zni ֒a? Metodyprzeszukiwaniapodstawowestrategie6

Pr ze sz u k iw a n ie z n aw ra ca n ie m (B T )

FUNCTIONBT(st) BEGIN IFTerm(st)THENRETURN(NIL);trywialnerozwiazanie IFDeadEnd(st)THENRETURN(FAIL);brakrozwiazania ops:=ApplOps(st);listaoper.stosowalnych L:IFnull(ops)THENRETURN(FAIL);brakrozwiazania o1:=first(ops) ops:=rest(ops) st2:=Apply(o1,st) path:=BT(st2) IFpath==FAILTHENGOTOL RETURN(push(o1,path)) END AlgorytmBTskutecznieprzeszukujeprzestrze´nrozwi֒aza´nbezjawnegobudowania drzewaprzeszukiwaniaprzestrzeni.Strukturyjakichu˙zywadozapami֒etaniastanu przeszukiwa´ns ֒aniejawne(nastosie).Mo˙znaskonstruowa´citeracyjn ֒awersj ֒etego algorytmu,kt´orabudujetestrukturyjawnie. Metodyprzeszukiwaniaprzeszukiwanieznawracaniem7

Pr ze sz u k iw a n ie z n aw ra ca n ie m — w la sn o´ sc i

BTmaminimalnewymaganiapami֒eciowe.Wtrakciepracypami֒etatylkopojedyncz֒a ´scie˙zk֒edorozwi֒azania(orazpewienkontekstdlaka˙zdegoelementutej´scie˙zki).Zatem jegoz lo˙zono´s´cpami ֒eciowaprzypadku´sredniegowynosiO(d),gdzied- odleg lo´s´cstanupocz ֒atkowegoodrozwi ֒azania(wsensieliczbyoperator´ow). Efektywno´s´cczasowajestgorsza.WnajgorszymprzypadkualgorytmBTmo˙ze odwiedzi´cwszystkiestanyprzestrzeniprzedznalezieniemrozwi֒azania.Pozwala jednaknau˙zyciestrategii—poinformowanejlub´slepej—wmomencietworzenialisty operator´ow,przezjejodpowiednieposortowanie. Powa˙znymproblememalgorytmuBTjestfakt,˙zemo˙zeonnieznale´z´c rozwi ֒azania,nawetje´sliistniejeonowniewielkiejodleg lo´sciodstanustartowego. Je´slinp.przestrze´nstan´owjestniesko´nczona,algorytmmo˙zewpewnymmomencie przeszukiwaniawybra´coperatorprowadz֒acydostanu,zkt´oregoprowadz֒adrogido niesko´nczonejliczbystan´ow,ale˙zadenznichniejeststanemdocelowym.Wtakim przypadkualgorytmBTnigdyniezako´nczyprzeszukiwaniatejcz ֒e´sciprzestrzeni stan´ow,inigdynieb ֒edziem´og lwycofa´csi ֒ezniew la´sciwegowyboruoperatora. Metodyprzeszukiwaniaprzeszukiwanieznawracaniem8

(3)

W yk ry w a n ie p o w ta rz a j

֒

a cy ch si

֒

e st a n ´o w

Jednymzproblem´owalgorytmuBT—jakr´ownie˙zwszystkichinnychalgorytm´ow przeszukiwania—jestmo˙zliwo´s´cpowstawaniap ֒etli.Je´slialgorytmkiedykolwiek wygenerujeopisstanu,dokt´oregodoszed l,alekt´oryju˙zistniejenajegodrodzeod stanupocz֒atkowego,tonieuchronniezaczniepowtarza´cbadaniestan´owwcze´sniej zbadanych. Zjawiskutemumo˙znaoczywi´sciezapobiec.Najprostszymsposobemby loby sprawdzenie,powygenerowaniuka˙zdegonowegostanu,czytenstannieznajdujesi ֒e ju˙znabie˙z ֒acej´scie˙zceodstanupocz ֒atkowego. Mo˙znar´ownie˙zsprawdzi´cdok ladniej—czynowowygenerowanystanniezosta lju˙z wog´olekiedykolwiekwcze´sniejznaleziony,izbadany.Wymagatopami֒etaniazbioru stan´owzbadanych,tzw.listyClosed.Listatawalgorytmierekurencyjnymmusiby´c globalnaika˙zdynowowygenerowanyopisstanumusiby´cpor´ownywanyzewszystkimi stanamiju˙zobecnyminali´scie. Jednoidrugiesprawdzaniejestdo´s´ckosztowneobliczeniowo.Dlazaoszcz֒edzeniaczasu mo˙znajepomin֒a´c,ryzykuj֒acjednakzap֒etlenieprocedury. Metodyprzeszukiwaniaprzeszukiwanieznawracaniem9

Og ra n ic ze n ie g l

֒

e b o k o´ sc i z it e ra cy jn ym p o g l

֒

e b ia n ie m

Powa˙znymproblememdlaalgorytmuBTs֒aniesko´nczoneprzestrzenie,zkt´orymi algorytmog´olniesobienieradzi.Podobniezreszt֒ajakinnealgorytmyocharakterze (hura-)optymistycznym,kt´orepreferuj ֒amarszdoprzodu,oiletylkojestmo˙zliwy. Prostymrozwi ֒azaniemjestograniczenieg l ֒eboko´sciprzeszukiwaniadojakiej´s ”rozs֒adnej”warto´sci.Zauwa˙zmy,˙zepozazabezpieczeniemprzedniesko´nczonymi przestrzeniami,zabezpieczaonojednocze´snieprzedwpadni֒eciemwp֒etle,copozwala pomin֒a´cwykrywaniepowtarzaj֒acychsi֒estan´ow.Wog´olnymprzypadkumo˙zenieby´c jednak latweokre´slenietakiejwarto´sci,ajejniedoszacowaniegrozioczywi´sciepora˙zk֒a algorytmuinieznalezieniemrozwi ֒azania,kt´oreistnieje. Dlaszeregualgorytm´owpodobniejakBToptymistycznych(preferuj֒acychruchywg l֒ab) stosujesi֒ezatemograniczenieg l ֒eboko´sciziteracyjnympog l ֒ebianiem.Ten wariantgwarantujeznalezienierozwi֒azania,oileistnieje. JednakwprzypadkualgorytmuBTtametodamo˙zeby´cbardzonieefektywna. Metodyprzeszukiwaniaprzeszukiwanieznawracaniem10

He u ry st yk i i fu n k cj e o ce n y st a n u

Algorytmydotychczasprzedstawiones ֒aog´olneiniewymagaj ֒adoswojejpracystrategii poinformowanej.Jednakwka˙zdympraktycznymzagadnieniuposiadanietakiejstrategii jestbardzopo˙z ֒adane. Heurystyk ֒ab֒edziemynazywa´cwiedz֒eodziedzinieproblemowej: •kt´orejniemo˙znauzyska´czsyntaktycznejanalizyopisuproblemu, •kt´oramo˙zeniemie´cformalniepoprawnegouzasadnienia,atak˙ze—cowi ֒ecej— kt´oramo˙zeniewka˙zdymprzypadkusprawdza´csi֒e,iczasamidawa´cmylne wskaz´owki, •alekt´oraog´olniepomagawdokonywaniudobrychwybor´owwprzeszukiwaniu. Posiadanieheurystykipozwalabudowa´cstrategiepoinformowane.Og´olnymicz ֒esto stosowanymschematemkonstrukcjistrategiiwykorzystuj ֒acyminformacj ֒eheurystyczn ֒a, jeststatycznafunkcjaocenystanu.Dlaka˙zdegostanuokre´slaonajego ”dobro´c”, czyliszanse,˙zeprzeztenstanprowadzidrogadorozwi֒azania.Warto´s´ctejfunkcji mo˙znar´ownie˙zinterpretowa´cjakomiar֒eodleg lo´scistanuodrozwi֒azania. Metodyprzeszukiwaniaheurystycznefunkcjeocenystany11

M e to d y g ra d ie n to w e

Funkcj֒eocenystanumo˙znawprzeszukiwaniuzastosowa´cbezpo´srednio.Prowadzito dometodylubmetodgradientowych(hill-climbing).Metodyteokre´slasi֒e winformatycejakometodyzach lanne. Ichbezpo´sredniezastosowanieograniczonejestdodziedzinzbardzoregularn֒afunkcj֒a oceny(np.´sci´slemonotoniczn֒a).Wpraktycemamytypowodoczynienia znast֒epuj֒acymiproblemami: 1.lokalnemaksimafunkcjioceny 2.obszary ”plateau”funkcjioceny 3.uko´snegraniefunkcjioceny current state

objective function state space

global maximum local maximum "flat" local maximum

shoulder Metodyprzeszukiwaniametodygradientowe12

(4)

W y ˙za rz a n ie

Skuteczn ֒aicz ֒estostosowan ֒agrup ֒emetodgradientowychstanowitechnikazwana wy˙zarzaniem(simulatedannealing).Jejnazwaodwo lujesi ֒edoanalogiizprocesem wytapianiametalu,kiedystopnioweipowolnezmniejszanietemperaturypozwala osi֒agn֒a´cstanglobalnegooptimumenergetycznego,zpe lnymuporz֒adkowaniem cz֒asteczekwca lejobj֒eto´scimetalu. Metodapoleganagenerowaniuruch´ow losowych,inast ֒epniewykonywaniuich, lubnie,zgodniezprzedstawionymna wykresierozk lademprawdopodobie´nstwa. Jakwida´c,je´sliwygenerowanyruch poprawiawarto´s´cfunkcjiocenytojest zawszewykonywany,natomiastje´slij֒a pogarszatojestwykonywany zprawdopodobie´nstwemp<1zale˙znym odstopniapogorszeniaoceny, wpor´ownaniuzestanemaktualnym. Metodyprzeszukiwaniametodygradientowe13 Jednocze´snie,wtrakciepracyalgorytmustopniowoobni˙zanajesttemperatura,co powodujezmniejszanieprawdopodobie´nstwawyboruruch´ow ”z lych”. Metod֒ewy˙zarzaniastosujesi֒ezpowodzeniemdoprojektowaniauk lad´owVLSI,sieci r´o˙znegorodzaju,przydzia luzada´nwprocesachprodukcyjnych,iinnychzada´n optymalizacjiproces´owz lo˙zonych.Problememwjejzastosowaniujestdob´or parametr´ow,np.algorytmuobni˙zaniatemperatury. Metodyprzeszukiwaniametodygradientowe14

K r´o tk ie p o d su m o w a n ie — p yt a n ia sp ra w d za j

֒

a ce

1.JakiewymaganiaalgorytmuBTs֒abardziejkrytyczne(istotne,ograniczaj֒ace): pami֒ecioweczyczasowe?Uzasadnijodpowied´z. 2.WjakichsytuacjachalgorytmBTmo˙zenieznale´z´crozwi֒azania,gdyonoistnieje? 3.Naczympolegazjawiskopowtarzaj֒acychsi֒estan´owwalgorytmachprzeszukiwania? Jakies ֒ajegomo˙zliwekonsekwencje? 4.Jakiproblemrozwi ֒azujemetodaiteracyjnegopog l ֒ebiania? Wjakichprzypadkachkoniecznejestjejstosowanie? 5.Jakies ֒ag l´owneproblemyjako´sciowe(nieuwzgl ֒edniaj ֒acz lo˙zono´sci)wzastosowaniu gradientowychmetodprzeszukiwania? Metodyprzeszukiwaniametodygradientowe15 Metodyprzeszukiwaniametodygradientowe16

(5)

Pr ze sz u k iw a n ie g ra f´o w

Przypomnijmysobiewersj ֒ealgorytmuBTziteracyjnympog l ֒ebianiem,ikonieczno´s´c wielokrotnegoprzeszukiwaniapocz ֒atkowejcz ֒e´sciprzestrzeni.Abyunikn ֒a´c wielokrotnegoodwiedzaniatychsamychstan´owmo˙znau˙zy´cstrukturygrafowejdo pami֒etaniazbadanychju˙zcz֒e´sciprzestrzenistan´ow.Algorytmy,kt´oreu˙zywaj֒atakiej strukturys֒aalgorytmamiprzeszukiwaniagraf´ow. Og´olnestrategie przeszukiwaniagraf´ow (´slepe): •strategiawszerzBFS (breadth-firstsearch) •strategiawg l ֒abDFS (depth-firstsearch), •innestrategie. Metodyprzeszukiwaniaprzeszukiwaniegraf´ow17

Pr zy k la d : 8 -k a (8 -p u zz le )

1234 5678 9101112 131415Uk ladanka15-tka(15-puzzle)—popularnawszkole podstawowej. 8-ka(8-puzzle)—zmniejszonawersja,odpowiedniadoilustracjidzia laniar´o˙znych strategiiialgorytm´owsztucznejinteligencji.

7 3 2 6 1 8 5 4 7 6 5 8 4 1 2 3

Metodyprzeszukiwaniaprzeszukiwaniegraf´ow18

Pr ze sz u k iw a n ie w sz e rz (B F S )

•Badajwszystkiestanywodleg lo´scidodstanupocz ֒atkowegos0przedzbadaniem jakiegokolwiekstanuwodleg lo´sci(d+1)ods0. •Zawszegwarantujeznalezienierozwi ֒azaniaje´slitylkoistnieje. •Cowi֒ecej,zawszeznajdujerozwi֒azanieoptymalne(tzn.znajdujenajkr´otsz֒adrog֒e zestanupocz֒atkowegodoka˙zdegostanu). •Niejestinherentnieodpornynawpadaniewp֒etlestan´owimo˙zewymaga´c zastosowanialistyClosed. •Z lo˙zono´s´cpami֒eciowaiczasowafatalna,obieO(bd),gdzie: b-´srednialiczbaga l֒eziwyrastaj֒acychzw֒ez la(tzw.branchingfactor), d-odleg lo´s´cstanupocz֒atkowegoodrozwi֒azania(liczbaoperator´ow). •Praktyczniejednakowaz lo˙zono´s´cprzypadkunajgorszegoi´sredniego(jakr´ownie˙z najlepszego). •Uwagaimplementacyjna:dodawajnowoodkrytestanynakonieclistyOpen. (Pomimoi˙zm´owisi֒eolistachw֒ez l´ow,zewzgl֒edunacz֒esteodwo laniawpraktyce stosujesi֒eszybszestrukturydanych,np.tablicehaszowe.) Metodyprzeszukiwaniaprzeszukiwaniegraf´ow19

Pr ze sz u k iw a n ie w sz e rz — p rz yk la d

Diagramprzedstawiafragmentgrafuprzeszukiwaniawszerz.Numerynadplanszami (1–26)pokazuj ֒atukolejno´s´cwyboruw ֒ez l´owdoekspansjigrafu. Metodyprzeszukiwaniaprzeszukiwaniegraf´ow20

(6)

Pr ze sz u k iw a n ie w g l

֒

a b (DF S )

•Badajwszystkienowoodkrytestanypochodne(potomki)danegostanunprzed powrotemdobadanias֒asiad´owstanun. •Niedaje˙zadnychzgwarancjiBFS(pewno´sciznalezieniarozwi֒azaniaoptymalnego, albowog´oleznalezieniajakiego´srozwi֒azania). •Z lo˙zono´s´cobliczeniowaprzypadkunajgorszego:przetwarzanieipami֒etanie wszystkichstan´ow. •Z lo˙zono´s´cprzypadku´sredniego:O(bd )pami֒eciowaiczasowa. •Dlaprzestrzeniniesko´nczonychjedynympraktycznieu˙zytecznymwariantemjest ograniczenieg l֒eboko´sciziteracyjnympog l֒ebianiem(aleprzeszukiwaniegrafuDFS niejesta˙ztakbezsensowniestratnejakalgorytmBT). •Efektywno´s´calgorytmugwa ltowniepolepszasi ֒edlaprzypadk´owistotnielepszych ni˙z´sredni(czyliwyj ֒atkowoszcz ֒e´sliwych),zatemsensjegostosowaniajesttylko wpo l ֒aczeniuzdobrymiheurystykami. •Uwagaimplementacyjna:dodawajnowoodkrytestanynapocz ֒ateklistyOpen. Metodyprzeszukiwaniaprzeszukiwaniegraf´ow21

Pr ze sz u k iw a n ie w g l

֒

a b — p rz yk la d

Fragment ”przeci֒etnego”grafuprzeszukiwaniawg l֒abzograniczeniemg l֒eboko´scido5. Numeryw֒ez l´owpokazuj֒akolejno´s´cwyboruw֒ez l´owdoekspansjigrafu. Metodyprzeszukiwaniaprzeszukiwaniegraf´ow22

Pr ze sz u k iw a n ie r´o w n o k o sz to w e U C S

Wprzypadku,gdykosztypojedynczychruch´ownies ֒ar´owne,przeszukiwaniewszerz opartenaliczbieruch´owwoczywistyspos´obniegwarantujeznalezieniaoptymalnej ´scie˙zki.Mo˙znaokre´sli´cprost ֒amodyfikacj ֒ealgorytmuwszerz,kt´oraznajdzieoptymaln ֒a ´scie˙zk֒edladowolnych(dodatnich)koszt´owpojedynczychruch´ow.Tamodyfikacja, zwanaalgorytmemr´ownegokosztu(uniform-costsearchUCS),wymaga ka˙zdorazowowybraniaw֒ez laonajni˙zszymkoszcie´scie˙zki. SG55 333SG

55 333 SG

55 333 SG

55 333 SG

55 333 Wprzypadkur´ownychkoszt´owruch´owsprowadzasi֒etodometodywszerz. Optymalno´s´calgorytmumo˙zna(trywialnie)wykaza´cpodwarunkiem,˙zekoszt pojedynczegoruchujestjak֒a´swarto´sci֒adodatni֒a(≥ǫ).Poniewa˙zalgorytmkierujesi֒e d lugo´sci֒a´scie˙zki,jegoz lo˙zono´sciniemo˙znascharakteryzowa´cjakofunkcjibid. Zamiasttego,oznaczaj֒acprzezC kosztoptymalnegorozwi֒azania,mo˙znaotrzyma´c z lo˙zono´s´cnajgorszegoprzypadku,zar´ownoczasow ֒ajakipami ֒eciow ֒a,jako O(b1+C/ǫ⌋). Wprzypadkur´ownychkoszt´owformu lataredukujesi֒edoO(bd ). Metodyprzeszukiwaniaprzeszukiwaniegraf´ow23

Z a k o ´n cz e n ie p rz e sz u k iw a n ia

Celemprzeszukiwaniamo˙zeby´csamoznalezienie´scie˙zkidorozwi֒azania,b֒ad´z znalezienie´scie˙zkioptymalnej.Wpierwszymprzypadku,algorytmmo˙zezako´nczy´c prac ֒eju˙zwmomencie,kiedynowystan,wygenerowanywwynikukolejnegoruchu, oka˙zesi ֒estanemdocelowym,awi ֒eczostanieumieszczonynali´scieOpen.Aleczytak samomo˙zemypost ֒api´cwprzypadkuposzukiwaniarozwi ֒azaniaoptymalnego? SG55 333 SG55 333 SG55 333 SG

55 333 SG

55 333 Przeszukiwanienale˙zyzako´nczy´cwmomencie,gdyalgorytmprzeszukiwania optymalnegowybierzedoekspansjiw ֒eze l,kt´oryjestw ֒ez lemdocelowym(czyliju˙z wcze´sniejznalaz ljedenlubkilkaw֒ez l´owdocelowych).Jegoekspansjimo˙znawtedy zaniecha´c,anajlepszaznalezionadoniego´scie˙zkajestrozwi֒azaniemoptymalnym. Poniewa˙zalgorytmsystematycznieznajdujewszystkienajta´nsze´scie˙zki,wi֒ecmoment wybraniaw֒ez ladoekspansjioznacza,˙zeniemo˙zesi֒eju˙zwgrafieznale´z´c˙zadnata´nsza ´scie˙zkadoniego. Jednakzanimtonast֒api,algorytmbada´scie˙zkioni˙zszychkosztach,iniema pewno´sci,˙zekt´ora´sznichnieoka˙zesi֒enow֒a,lepsz֒a´scie˙zk֒adow֒ez lacelowego. Metodyprzeszukiwaniaprzeszukiwaniegraf´ow24

(7)

Pr ze sz u k iw a n ie n a jp ie rw -n a jl e p sz y

Zastosowanieheurystycznejfunkcjiocenydoprzeszukiwanianagrafachwnajprostszym przypadkudajetzw.przeszukiwanienajpierw-najlepszy(best-firstsearch).Wka˙zdej chwiliwykonujeonoruch,kt´oryminimalizujefunkcj ֒eoceny.Je´slifunkcjaocenyjest dobra,w la´sciwiewybierastanydoanalizy,iodpowiedniomalejewzd lu˙zdrogido rozwi֒azania,towtedytametoda ”idzie”bezpo´sredniodocelu,nietrac֒acczasuna rozwijaniejakichkolwiekniepotrzebnychw֒ez l´owgrafu. R´ownie˙zwprzypadkudrobnychdefekt´owfunkcjioceny,kiedyniekt´orejejwarto´scis ֒a nietrafnei´zleoceniaj ֒astany,aleporozwini ֒eciukilkuniepotrzebnychw ֒ez l´owfunkcja oceniadalszew֒ez lywprzybli˙zeniupoprawnie,tenschematprzeszukiwaniadobrzesi֒e sprawdza. K lopotyzaczynaj֒asi֒ejednakkiedyfunkcjamajaki´sb l֒adsystematyczny,np.jako najlepsz ֒akonsekwentniewskazujedrog ֒e,kt´orawog´olenieprowadzidocelu.Wtedy metodanajpierw-najlepszymatakiesamewadyjakmetodawg l ֒ab,pomimo,i˙zfunkcja by´cmo˙zepoprawnieoszacowujewielew֒ez l´ow. Metodyprzeszukiwaniaprzeszukiwaniegraf´ow25

A lg o ry tm y p rz e sz u k iw a n ia g ra fu

Rozwa˙zanetualgorytmyprzeszukiwaniagraf´owdzia laj֒awed lugschematu: PROCEDUREGS(s0);s0-opisstanupoczatkowego BEGIN n:=s0 G:={s0};grafprzeszukiwania:wezlyiluki Open:=[s0];Closed:=[];listy:nowychisprawdzonych UNTILTerm(n)DO;stannspelniawarunekcelu BEGIN Open:=Remove(n,Open) new:=Successors(n);wygenerujnastepnikiwezlan G:=AddSuccessors(G,New);dodajstrukturedografuG Open+=(new-Closed);dodajnowoodkrytenastepniki Closed+={n} n:=SelectNext(Open);wybierzwezeldoeksploracji END solution:=BuildPath(s0,n,G);zrekonstruujsciezkedocelu END Wpowy˙zszymalgorytmiedlauproszczeniapomini֒etooperacjezapami֒etaniaikorekty koszt´ow´scie˙zekodw ֒ez lastartowegodowszystkichw ֒ez l´ow. Metodyprzeszukiwaniaprzeszukiwaniegraf´ow26

´ Snadodajanoewez lykotyniec(BFS)lubleiwszipealgokotmyBFSryDnoFarujigS ֒֒֒ wdktymprzypalezwyk lakojka.jestuap´orzatek(DFSoc)enlis,ktpOty ֒֒֒ jnwybierajakoleekyweze ldospansjizypslekoAajorytmyr´ownolgsznato-niejprwiyw֒֒ w´sc˙zkipoczatkocoejluboszawaniao´sciieugszedd lgkryteriumko lutudn(owio:ieowdp֒ ansimplementacjenlistyOpjakolistyseamzwdyodleg lo´sodrociiazania).Wte֒ toejwprteryioda,owjacejnatychmiastyijklejekosoowanej,albortjaszczelepiej,ko ֒ waniaiiausuwan(lzlistyOog(N)).dodaerjegoacyb´ornajlepszewwtaeniopi laez ֒ ia959)znajrywanzynajkr´otschdr´ogna(1dost˙zeWartotudoijk´c,daisrytntmDgoaljeie l´owgrafu.JednakopDijkstrazak lada ljeezezwografiezjednegwhac ladowszystkicer֒֒ zbowanym,iza lawdoanymdopaieci.udm,onymgrafinasko´nczeymwca lo´sciznan,֒ anszukiw27iegraf´owprzekiprMiaetodyzeszuwan

ra a n ia sp ce w d za j a p yt o — o ie K r´o ie p tk d su m w a n

֒ prkosztoweodwzeszukiwaniawsznoprr´oi1.Czymr´o˙znsiiez?ezeszukiwaner ֒ 2.iezeszukanianajprwod-najlepszy?Cpriwabzezymr´oisiepr˙znsziwaniewg luk ֒֒ iwprzeszuk´owaniagraf.tmuszry´ow3.Opig lnycyklpracyalgo alrygo˙znhycactmanhprzeszukiwiawr´o4.dnaseOszoperacjepilischOpeniloCta ´ow.afgr ´owafgrieanwkiuszzepretiaanwkiuszzeprydoM28

(8)

M o d yfi k a cj a fu n k cj i w yb o ru — k o sz t p rz e b yt e j d ro g i

Rozwa˙zmynast֒epuj֒acedeterministycznefunkcjeoceny(w֒ez la): h*(n)–kosztkosztowo-optymalnejdrogizndocelu g*(n)–kosztkosztowo-optymalnejdrogizs0don Wtedy: f*(n):=g*(n)+h*(n) f*(n)–kosztkosztowo-optymalnejdrogizs0docelubiegn֒acejprzezn Znajomo´s´cfunkcjif*(n)pozwoli labyzawszewybiera´ctylkow֒ez lyle˙z֒acena optymalnejdrodzeodpocz֒atkudocelu.Podobniezreszt֒awystarczy labydotego znajomo´s´csamejfunkcjih*(n). Niestety,zwyklefunkcjeh*(n)anig*(n)nies֒adost֒epne.Jeste´smyzmuszeni pos lugiwa´csi֒eichprzybli˙zeniami,kt´orepozwalaj֒ajedynieaproksymowa´cwybieranie w la´sciwychw֒ez l´ow.Jednakgdypos lugujemysi֒eprzybli˙zeniami,wtedyprzeszukiwanie bazuj֒acenafunkcjif*(n)niemusiju˙zdawa´ctakichsamychwynik´owjaktoopieraj֒ace si ֒enafunkcjih*(n). Metodyprzeszukiwaniaprzeszukiwaniegraf´owalgorytmA*29

M o d yfi k a cj a fu n k cj i w yb o ru — a lg o ry tm A *

Rozwa˙zmyzatemnast֒epuj֒aceheurystycznefunkcjeocenyw֒ez la: h(n)–funkcjaheurystycznaaproksymujacah*(n) g(n)–kosztnajlepszejznanejdrogizs0don;zauwa˙zmyg(n)≥g*(n) f(n):=g(n)+h(n) Jakdzia latakokre´slonastrategia?Je´slifunkcjah(n)oszacowujeh*(n)bardzo precyzyjnie,toalgorytmdzia laniemalidealnie,izmierzaprostodocelu. Jednakgdyfunkcjah(n)pope lniab l֒edy,inp.optymistycznieokre´slajakie´sstanyjako lepszeni˙zs֒aonewrzeczywisto´sci,toalgorytmnajpierwpod֒a˙zawichkierunku, zwabionynisk ֒awarto´sci ֒afunkcjih(n),gdyg(n)jestpomijalne. Pojakim´sczasie,takb l֒ednieoszacowane´scie˙zkiprzestaj֒aby´catrakcyjne,zewzgl֒edu nanarastaj֒acysk ladnikg(n),ialgorytmzkonieczno´sciprzerzucaswoje zainteresowanienainneatrakcyjnew֒ez ly.Przytymnaatrakcyjno´s´cniemawp lywu, czys ֒aonebardziejczymniejoddaloneodstartu.Decyduje l ֒acznaocena,czyprzez danystanprowadzinajlepszadrogadorozwi ֒azania. Algorytmprzeszukiwaniagraf´owstosuj ֒acypowy˙zsz ֒afunkcj ֒ef(n)jakoswoj ֒astrategi ֒e nazywasi ֒ealgorytmemA*. Metodyprzeszukiwaniaprzeszukiwaniegraf´owalgorytmA*30

F u n k cj a o ce n y w a lg o ry tm ie A *

Sk ladnikih(n)ig(n)reprezentuj ֒awfunkcjif(n)dwieprzeciwstawnetendencje: optymizm(h(n))ikonserwatyzm(g(n)).Mo˙zemyca lkiemswobodniesterowa´c strategi֒awjedn֒alubdrug֒astron֒estosuj֒acwz´or: f(n):=(1−k)∗g(n)+k∗h(n) Zwi֒ekszaj֒acwsp´o lczynnikwagikmo˙zemynadawa´cprzeszukiwaniucharakterbardziej agresywny(iryzykowny),gdynp.mamyzaufaniedofunkcjih(n)ichcemyposuwa´c si֒eszybkodoprzodu.zkoleizmniejszaj֒actenwsp´o lczynnik,zapewniamydok ladniejsze badanieprzestrzeni,posuwaj֒acsi֒ewolniejdoprzodu,alekompensuj֒acniekt´oreb l֒edy funkcjih(n). Zauwa˙zmy,˙zewskrajnychprzypadkach,k=1dajeprzeszukiwanienajpierw-najlepszy, natomiastk=0dajeprzeszukiwanier´ownokosztowe. Jednaknajwi ֒ekszywp lywnaprzebiegprzeszukiwaniamajako´s´cfunkcjih(n). Metodyprzeszukiwaniaprzeszukiwaniegraf´owalgorytmA*31

W la sn o´ sc i fu n k cj i h (n ) w a lg o ry tm ie A *

Heurytyczn֒afunkcj֒eocenyh(n)walgorytmieA*nazywamydopuszczaln ֒a (admissible)gdyograniczaonaoddo lurzeczywist֒afunkcj֒eh*(n),czyli ∀nh(n)≤h*(n).Dopuszczalno´s´coznaczachroniczneniedoszacowywanieprzysz lych koszt´ow,zatembywanazywaneoptymizmem.Mo˙znadowie´s´c,˙zeje´slitylkoistnieje ´scie˙zkazw ֒ez lapocz ֒atkowegodocelowego,toA*zdopuszczaln ֒aheurystyk ֒azawsze znajdujeoptymaln֒atak֒a´scie˙zk֒e. Czytrudnojestznale´z´ctak֒adopuszczaln֒aheurystyk֒e?Niekoniecznie,np.h(n)≡0 rzeczywi´scieograniczazdo luh*(n),dladowolnegozagadnienia.Czytakatrywialna heurystykamo˙zeby´cprzydatna?Odpowied´zbrzmi:raczejrzadko.Takialgorytm wybierazawszew ֒ez lyonajkr´otszejdrodzezs0,azatemjesttoalgorytmwszerz (og´olniej:r´ownegokosztu),kt´oryrzeczywi´sciezawszeznajdujeoptymaln֒adrog֒e,ale samowsobietojeszczeniejestwielkazaleta. Oczywi´scieimlepiejh(n)przybli˙zah*(n)tymefektywniejszeprzeszukiwanie.Je´sli mamydwiefunkcjeh1(n),h2(n),takie˙zedlawszystkichw ֒ez l´ow h1(n)<h2(n)≤h*(n)tomo˙znadowie´s´c,˙zeu˙zycieh1prowadzidorozwini ֒eciaco najmniejtylesamow֒ez l´owcoh2. Metodyprzeszukiwaniaprzeszukiwaniegraf´owalgorytmA*32

(9)

W la sn o´ sc i fu n k cj i h (n ) w a lg o ry tm ie A * (c d .)

Dopuszczalno´s´cfunkcjih(n)jestciekaw ֒aw lasno´sci ֒a,kt´or ֒acz ֒estomo˙znaudowodni´c dlafunkcjibardzozgrubnieoszacowuj ֒acejh*(n),aleju˙zniekonieczniedlamozolnie opracowanejfunkcji,np.zwykorzystaniemnumerycznegouczeniasi֒enaserii przyk lad´ow(cojaksi֒eoka˙zejestjedn֒azmetodkonstrukcjitakichfunkcji). Jeszczemocniejsz֒aw lasno´sci֒aheurystycznejfunkcjiocenyh(n)jestjejsp´ojno´s´c (consistency),zwanar´ownie˙zograniczeniemmonotonicznym(monotone restriction),lubpoprostunier´owno´sci ֒atr´ojk ֒ata: ∀ ni→njh(ni)−h(nj)≤c(ni,nj) Mo˙znadowie´s´c,˙zedlafunkcjih(n)spe lniaj ֒acychograniczeniemonotonicznealgorytm A*zawszemaju˙zznalezion֒aoptymaln֒adrog֒edoka˙zdegow֒ez la,kt´orydecydujesi֒e rozwija´c.Wpraktycepozwalatoniecoupro´sci´cimplementacj֒ealgorytmu przeszukiwania,je´sliwiemy,˙zefunkcjaocenyjestsp´ojna. Metodyprzeszukiwaniaprzeszukiwaniegraf´owalgorytmA*33

Z lo ˙zo n o´ s´c o b li cz e n io w a a lg o ry tm u A *

Dlawi֒ekszo´scipraktycznychproblem´owliczbaw֒ez l´owprzestrzenistan´owro´snie eksponencjalniezd lugo´sci֒aposzukiwanegorozwi֒azania.Oczywi´scie,efektywna heurystykamog labyzmniejszy´cz lo˙zono´s´cobliczeniow ֒aalgorytmu. Pytanie,kiedymogliby´smynatoliczy´c? Mo˙znadowie´s´c,˙zeabytoosi֒agn֒a´c,czyliabyalgorytmA*dzia la lwczasie wielomianowym,b l֒adwheurystycznejfunkcjiocenyniepowinienprzekroczy´c logarytmurzeczywistejd lugo´scirozwi֒azania: |h(n)−h (n)|≤O(logh (n)) Pytanie:czytakieheurystykis֒apraktyczne? Wpraktycznychprzypadkachniemo˙znaliczy´cnaznalezienietakdobrychheurystyk. ZatemalgorytmA*nale˙zyog´olnieuwa˙za´czaeksponencjalny.Tojednakzwykleniejest jegonajwi ֒eksz ֒awad ֒a.Podobniejakwszystkiealgorytmyprzeszukiwanianagrafach, przechowujeonwszystkiew֒ez lygrafuwpami֒eci izregu lywyczerpujepami֒e´ckomputeradu˙zowcze´sniejni˙zdost֒epnyczas!! Metodyprzeszukiwaniaprzeszukiwaniegraf´owalgorytmA*34

M o d yfi k a cj e a lg o ry tm u A * z o g ra n ic zo n ym i w ym a g a n ia m i p a m i

֒

e ci o w ym i

Istniej֒amodyfikacjealgorytmuA*pozwalaj֒acepokona´cproblemyzzapotrzebowaniem napami ֒e´c. AlgorytmIDA*(Iterative-DeepeningA*)dodajestandardoweograniczenieg l֒eboko´sci. Poosi֒agni֒eciulimitug l֒eboko´sciprzeszukiwaniajestonzwi֒ekszany,przyjednoczesnym usuni֒eciuprzebadanychw֒ez l´owgrafuzpami֒eci. AlgorytmRBFS(RecursiveBest-FirstSearch)jestpodobnydoalgorytmuBTwwersji rekurencyjnej.Przeszukujeonrekurencyjniepojedyncz֒a´scie˙zk֒egrafu,pami֒etaj֒ac jednocze´snienaka˙zdympoziomierekurencjinajlepsz֒aalternatyw֒epojedynczegokroku. Kiedyaktualnieanalizowana´scie˙zkaokazujesi֒egorszaodtejalternatywy,algorytm wraca,kasuj ֒acwynikiswojejpracy(leczwchodz ֒acwnowewywo laniarekurencyjne, ponowniezapami ֒etujenajlepsz ֒aalternatyw ֒e). AlgorytmSMA*(SimplifiedMemory-BoundedA*)dzia ladok ladniejakA*,aletylkodo momentuzape lnieniaca lejdost֒epnejpami֒eci.Wtymmomencie,algorytmkontynuuje prac֒e,kasuj֒acjednaknajgorszeznanew֒ez lygrafuabyzrobi´cmiejscenanowo odkrywanestany.Jednakoszacowanieskasowanychw ֒ez l´owjestprzechowywanewich rodzicach,abymo˙zliweby loponownepodj ֒ecieprzeszukiwaniawdanejcz ֒e´scigrafu. Metodyprzeszukiwaniaprzeszukiwaniegraf´owalgorytmA*35

A lg o ry tm A * w p ra k ty ce

Dobrympytaniemjest,czyalgorytmyheurystycznegoprzeszukiwaniagraf´ow,takiejak A*,maj֒azastosowaniapraktycznew´swiecierzeczywistym. Odpowied´znatopytaniebrzmi:tak,wpewnychograniczonychdziedzinach,jaknp. planowanieoptymalnejtrasyprzejazdurobota,alboznajdowanienajkr´otszejdrogi wgrachkomputerowych. AlgorytmA*jestheurystyczn֒awersj֒aalgorytmuDijkstry(1959)obliczaj֒acego najkr´otszedrogiodustalonegow֒ez ladowszystkichpozosta lychw֒ez l´owgrafu. AlgorytmDijkstryjestr´ownie˙zstosowanywwieluzagadnieniachtechnicznych,jaknp. siecioweprotoko lytrasowania(routing),takiejakOSPF,orazznajdowaniedrogina mapiewnawigacjachGPS.Wtychostatnichzastosowaniach,zewzgl֒edunawielko´s´c grafu,algorytmDijkstrymusiby´cwspomaganyprzezdodatkowetechniki.Mog֒atoby´c w la´snieheurystyki,albowprowadzenieabstrakcjiihierarchii´scie˙zek.Jednakzewzgl֒edu nakomercyjnyaspekttejbardzorozwijaj ֒acejsi ֒etechnologii,technikinies ֒azbytcz ֒esto szczeg´o lowoopisywane. Metodyprzeszukiwaniaprzeszukiwaniegraf´owalgorytmA*36

(10)

Pr ze sz u k iw a n ie w st e cz

Przeszukiwanieprzestrzenistan´owmo˙znaprowadzi´cr´owniedobrzewprz´odjak iwstecz.Przeszukiwaniewsteczzaczynasi ֒eodstanuko´ncowego(lubca legozbioru stan´owko´ncowych),iwpierwszymkrokuznajdujezbi´orstan´owpoprzedzaj ֒acych, zkt´orychmo˙znaosi֒agn֒a´cjaki´sstanko´ncowywjednymkrokuprzezkt´ory´s zdost֒epnychoperator´ow.Wkolejnychkrokachprocesjestkontynuowany. Przeszukiwaniewsteczmo˙zeby´cr´ownie latwewrealizacjiobliczeniowejjak przeszukiwaniewprz´od,albomo˙zeby´cutrudnionezewzgl ֒edunaw lasno´sciprzyj ֒etej reprezentacji.Wtymdrugimprzypadkukoniecznamo˙zeby´czmianareprezentacji. Kluczowajestjednak latwo´s´cpozyskaniaheurystyk.Wprzypadkuprzeszukiwania wprz´odheurystykapowinnapodpowiada´cnam,jakiekrokinale˙zywybiera´c,aby skutecznieprzybli˙za´csi֒edocelu.Wniekt´orychzagadnieniachbrakjestw la´sciwych intuicji.Wprzypadkuprzeszukiwaniawsteczherustykapowinnapodpowiada´c,kt´ore krokiprzybli˙zaj ֒anasodnieznanegostanudocelowego,dodobrzeznanego´srodowiska startowego.Czasem latwiejjestointuicjewspomagaj֒acepodejmowanietakichdecyzji. Metodyprzeszukiwaniaprzeszukiwaniegraf´owalgorytmA*37

Pr ze sz u k iw a n ie d w u k ie ru n k o w e

Ide֒eprzeszukiwaniawsteczmo˙zna latwouog´olni´cdoprzeszukiwania dwukierunkowego.Je´slireprezentacjanatopozwala,todlaczegonierobi´cna przemiankrok´owprzeszukiwaniawprz´odiwstecz.Jakwida´cnarysunkupolewej, mog lobytoprzynie´s´cistotneoszcz ֒edno´sci: GoalStart Jednakjakpokazujerysunekpoprawej,zamiastzaoszcz֒edzi´c,mo˙znanad lo˙zy´cpracy. Przeszukiwaniedwukierunkowe latwoprzynosioszcz֒edno´sciwprzypadkualgorytmu Dijkstry(r´ownokosztowego),jednakposiadaj ֒acwyrafinowan ֒a,ukierunkowan ֒a heurystyk ֒e,lepiejjejzaufa´cipod ֒a˙za´czani ֒awjednymkierunku. Metodyprzeszukiwaniaprzeszukiwaniegraf´owalgorytmA*38

K r´o tk ie p o d su m o w a n ie — p yt a n ia sp ra w d za j

֒

a ce

1.Czymr´o˙znisi֒ealgorytmA*odprzeszukiwanianajpierw-najlepszy? Jakiskutekwywieratar´o˙znicanaprocesprzeszukiwania? 2.Cotos֒adopuszczalneheurystykidlaalgorytmuA*? Jakiemaj֒aznaczeniepraktyczne? 3.Algorytmheurystycznegoprzeszukiwaniagraf´owA*zdopuszczaln ֒afunkcj ֒aocenyh gwarantujeznalezienieoptymalnegorozwi ֒azaniaproblemu,oiletylkotakieistnieje nagrafie.Rozwa˙zponi˙zszemodyfikacjefunkcjifiodpowiedz,czyzachowuj ֒aone powy˙zsz֒aw lasno´s´calgorytmuA*.Odpowied´zuzasadnij. (a)wprowadzenieg´ornegoograniczenia(kresu)nawarto´s´cfunkcjih(n) (b)wprowadzeniedolnegoograniczenia(kresu)nawarto´s´cfunkcjig(n) Metodyprzeszukiwaniaprzeszukiwaniegraf´owalgorytmA*39 Metodyprzeszukiwaniaprzeszukiwaniegraf´owalgorytmA*40

Cytaty

Powiązane dokumenty

a) zapewnienia sprawowania przez kierownika budowy oraz kierowników branżowych przez cały okres realizacji Przedmiotu umowy, aż do końcowego odbioru Przedmiotu umowy

warszawski zachodni, legionowski, pruszkowski, nowodworski, grodziski, miński, wołomiński, piaseczyński i otwocki) nie będą objęte możliwością skorzystania z regionalnej

Warto przy tym wskazać, że OECD rekomenduje, aby w nowych umowach o unikaniu podwójnego opodatkowania zawieranych po 2005 roku państwa strony uregulowały kwestię

W tym kontekście należy dążyć do zapewnienia ochrony interesów konsumenta, z jednoczesnym eliminowaniem powstających zagrożeń, czego wyrazem jest dyrektywa

Metoda ta może, moim zdaniem, znaleźć w pełni zastosowanie przy masowym nauczaniu języka rosyjskiego w szkole podstawowej, oczywiście po dokonaniu szeregu

2. obrazę przepisów postępowania, w szczególności przepisu art. kpk polegającą na „niepodaniu” czym kierował się sąd wydając zaskarżony wyrok oraz

Poszczególne siedliska Sieniawskiego Obszaru Chronionego Krajobrazu współtworzą ekosystem, a każdy element tego ekosystemu (rośliny, ssaki, ptaki, krajobraz, korytarze

[r]