Automatizované řešení úloh s omezeními



Podobné dokumenty
Hranová konzistence. Arc consistency AC. Nejprve se zabýváme binárními CSP. podmínka odpovídá hraně v grafu podmínek

Optimalizace & soft omezení: algoritmy

Automatizované řešení úloh s omezeními

Programování. s omezujícími podmínkami. Roman Barták. rová hranová konzistence

Algoritmizace prostorových úloh

Grafové algoritmy. Programovací techniky

Grafové algoritmy. Programovací techniky

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12.

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

Úvod do teorie grafů

3. Třídy P a NP. Model výpočtu: Turingův stroj Rozhodovací problémy: třídy P a NP Optimalizační problémy: třídy PO a NPO MI-PAA

i=1 Přímka a úsečka. Body, které leží na přímce procházející body a a b můžeme zapsat pomocí parametrické rovnice

Datové struktury 2: Rozptylovací tabulky

13. Lineární programování

5 Orientované grafy, Toky v sítích

NP-ÚPLNÉ PROBLÉMY. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

Programování. s omezujícími podmínkami. Roman Barták. roman.bartak@mff.cuni.cz

NPRG030 Programování I, 2018/19 1 / :03:07

Moderní systémy pro získávání znalostí z informací a dat

Úvod do informatiky. Miroslav Kolařík. Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008.

Aproximativní algoritmy UIN009 Efektivní algoritmy 1

Řešení: PŘENESVĚŽ (N, A, B, C) = přenes N disků z A na B pomocí C

Učební texty k státní bakalářské zkoušce Matematika Základy lineárního programování. študenti MFF 15. augusta 2008

12. Globální metody MI-PAA

Globální matice konstrukce

ČESKÁ ZEMĚDĚLSKÁ UNIVERZITA V PRAZE. Teze diplomové práce

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D.


Konstrukce relace. Postupně konstruujeme na množině všech stavů Q relace i,

1 Úvod do celočíselné lineární optimalizace

Prohledávání do šířky = algoritmus vlny

Obsah prezentace. Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest

Intervalová data a výpočet některých statistik

Algoritmizace Dynamické programování. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010

Informační systémy 2008/2009. Radim Farana. Obsah. Nástroje business modelování. Business modelling, základní nástroje a metody business modelování.

Třídy složitosti P a NP, NP-úplnost

Metody analýzy dat II

autorovu srdci... Petr Hliněný, FI MU Brno 1 FI: MA010: Průnikové grafy

MĚŘENÍ STATISTICKÝCH ZÁVISLOSTÍ

Grafy. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 13.

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

Dynamické programování

Algoritmus pro hledání nejkratší cesty orientovaným grafem

ALGORITMY A DATOVÉ STRUKTURY

Další NP-úplné problémy

Základní pojmy teorie množin Vektorové prostory

u odpovědí typu A, B, C, D, E: Obsah: jako 0) CLP Constraint Logic Programming

Booleovská algebra. Booleovské binární a unární funkce. Základní zákony.

Obor: Informatika Červen 2005 Okruh: Základy matematiky Otázka: 1. Jméno: Bodů:...

Úvod do databázových systémů 1. cvičení

Zjednodušení generativního systému redukcí rozlišení

Otázky k ústní zkoušce, přehled témat A. Číselné řady

Test prvočíselnosti. Úkol: otestovat dané číslo N, zda je prvočíslem

označme j = (0, 1) a nazvěme tuto dvojici imaginární jednotkou. Potom libovolnou (x, y) = (x, 0) + (0, y) = (x, 0) + (0, 1)(y, 0) = x + jy,

0.1 Úvod do lineární algebry

Operační výzkum. Vícekriteriální hodnocení variant. Grafická metoda. Metoda váženého součtu.

Operace s maticemi. 19. února 2018

Úvod do logiky (presentace 2) Naivní teorie množin, relace a funkce

4. Trojúhelníkový rozklad p. 1/20

Doporučené příklady k Teorii množin, LS 2018/2019

VLASTNOSTI GRAFŮ. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze. BI-GRA, LS 2010/2011, Lekce 5

Dynamické rozvrhování

PA163 Programování s omezujícími podmínkami

Binární vyhledávací stromy pokročilé partie

Křivky a plochy technické praxe

SÍŤOVÁ ANALÝZA. Kristýna Slabá, 1. července 2010

4EK201 Matematické modelování. 2. Lineární programování

Umělá inteligence I. Roman Barták, KTIML.

Časová a prostorová složitost algoritmů

Vzdálenost uzlů v neorientovaném grafu

CLP(F D) program. Základní struktura CLP programu solve( Variables ) :- 1. definice proměnných a jejich domén declare_variables( Variables),

Náplň. v Jednoduché příklady na práci s poli v C - Vlastnosti třídění - Způsoby (algoritmy) třídění

Dynamické programování

Jan Pavĺık. FSI VUT v Brně

Základy umělé inteligence

Využití ICT techniky především v uměleckém vzdělávání. Akademie - VOŠ, Gymn. a SOŠUP Světlá nad Sázavou

Automatická detekce anomálií při geofyzikálním průzkumu. Lenka Kosková Třísková NTI TUL Doktorandský seminář,

Numerická matematika 1

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti

Zimní semestr akademického roku 2014/ prosince 2014

Hisab al-džebr val-muqabala ( Věda o redukci a vzájemném rušení ) Muhammada ibn Músá al-chvárizmího (790? - 850?, Chiva, Bagdád),

10. Techniky formální verifikace a validace

Matematika 1 MA1. 2 Determinant. 3 Adjungovaná matice. 4 Cramerovo pravidlo. 11. přednáška ( ) Matematika 1 1 / 29

Jazyk matematiky Matematická logika Množinové operace Zobrazení Rozšířená číslená osa

1. Matice a maticové operace. 1. Matice a maticové operace p. 1/35

PC: Identifikace struktury zobecněného dynamického systému

Jak funguje asymetrické šifrování?

Numerické metody a programování. Lekce 8

Stromy, haldy, prioritní fronty

TEORIE ZPRACOVÁNÍ DAT

Extrémy funkce dvou proměnných

Rekurze. Pavel Töpfer, 2017 Programování 1-8 1

Marie Duží

Funkce komplexní proměnné a integrální transformace

Obyčejnými diferenciálními rovnicemi (ODR) budeme nazývat rovnice, ve kterých

Lineární algebra : Násobení matic a inverzní matice

Algoritmizace prostorových úloh

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

Formální Metody a Specifikace (LS 2011) Formální metody pro kyber-fyzikální systémy

Transkript:

Automatizované řešení úloh s omezeními Martin Kot Katedra informatiky, FEI, Vysoká škola báňská Technická universita Ostrava 17. listopadu 15, Ostrava-Poruba 708 33 Česká republika 25. října 2012 M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 1/ 17

Šíření omezení M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 2/ 17

Šíření omezení(constraint propagation) Můžeme dokázat nekonzistentnost sítě Můžeme vyloučit některé kombinace přiřazení hodnot proměnným a tím urychlit výpočet Můžemeinajítřešení-nováomezenízpůsobí,žekaždéřešenísenajde prostým prohledáváním do hloubky, kde nenastane nikdy dead-end Většinou ale řešení problému vyvozováním(inference) je výpočetně náročné, vyžaduje přidání exponenciálního množství nových omezení Obvykle se přidávaji jen nějaká omezení, prohledávání pak může narazit na dead-end, ale končí relativně rychle Algoritmy přidávající omezený počet omezení označujeme vynucení lokální konzistentnosti(local consistency-enforcing), omezené vyvozování konzistence(bounded consistency inference) nebo šíření omezení(constraint propagation) M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 3/ 17

Hranová konzistentnost V minimální síti platí, že přiřazení jakékoliv hodnoty z domény proměnné je rozšiřitelné na jakoukoliv další proměnnou Takovou vlastnost nazýváme hranová konzistentnost (arc-consistency) Může být splněna také v neminimálních sítích Může být vynucena na každé síti efektivním výpočtem, často nazývaným propagace(propagation) Definice:Prodanousíť R = {X,D,C}sR ij Cjeproměnnáx i hranověkonzistentní(arc-consistent)vzhledemkx j právětehdy, kdyžprokaždouhodnotua i D i existujehodnotaa j D j tž. (a i,a j ) R ij. Definice:Podsíť(nebohrana)definovaná {x i,x j }jehranově konzistentní,právěkdyžx i jehranověkonzistentnívzhledemkx j ax j jehranověkonzistentnívzhledemkx i Definice: Síť omezení je hranově konzistentní, právě když všechny její hrany(podsítě velikosti 2) jsou hranově konzistentní M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 4/ 17

Revidující procedura SlidyR.Dechter,chapter3,slide7 Převádí síť na hranově konzistentní redukcí domén proměnných v rozsahu omezení Aplikovánanax i,x j vracínejvětšídoménud i prokteroux i je hranověkonzistentnívzhledemkx j SložitostvnejhoršímpřípadějeO(k 2 ),kdekjemezvelikostidomén M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 5/ 17

Algoritmus ARC-CONSISTENCY-1(AC-1) SlidyR.Dechter,chapter3,slide9 Brute-force algoritmus zajišťující hranovou konzistentnost sítě Aplikuje revidující proceduru na všechny dvojice proměnných, které se vyskytují v omezeních dokud se nějaký doména mění Může zjistit nekonzistentnost sítě SložitostvnejhoršímpřípadějeO(enk 3 ),kdenjepočetproměnných, kjemezvelikostídomén,ejepočetomezení M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 6/ 17

Algoritmus ARC-CONSISTENCY-3(AC-3) Slidy R. Dechter, chapter 3, slide 10 Algoritmus AC-1 je možné vylepšit Když se změní jen pár domén, není potřeba procházet všechna omezení znovu Stačí udržovat frontu dvojic proměnných, které ještě zpracovány nebylynebovdoménějednéznichdošlokezměně Algoritmus označujeme ARC-CONSISTENCY-3(AC-3), AC-2 byl mezikrok SložitostjeO(ek 3 ) M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 7/ 17

Algoritmus ARC-CONSISTENCY-4(AC-4) Slidy R. Dechter, chapter 3, slide 12 Algoritmus AC-3 stále není optimální(z hlediska časové složitosti) Pouhéověřeníkonzistentnostisítěpotřebujeek 2 operací,zajištění konzistentnosti asi nemůže jít rychleji Algoritmus AC-4 dosahuje tuto mez Nevyužívá revidující proceduru, zkoumá strukturu relace omezení Každéhodnotěa i zdoményx i přiřadípočetkonzistentníchhodnotz x j Hodnotaa i jeodebránazdomény,pokudnemávněkteréze sousedních proměnných odpovídající protějšek SložitostjeO(ek 2 ) M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 8/ 17

Složitost Místok 2 vzniklézuniverzálnírelacemůžemeuvažovattpro maximální počet dvojic v relacích Revidující procedura potom má O(t) AC-1: O(nket) AC-3: O(ekt) AC-4: O(et) SložitostvnejlepšímpřípaděproAC-1aAC-3jeek,kdyžužproblém jehranověkonzistentní.proac-4jetoek 2,protožetoliktrváuž inicializace PřislabýchomezeníchvpraxičastoAC-1aAC-3jsourychlejšínež AC-4 M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 9/ 17

Konzistentnost cesty Definice:Prodanousíť R = {X,D,C}jemnožinadvouproměnných {x i,x j }konzistentnípocestě(path-consistent)vzhledemkx k právě tehdy,kdyžprokaždépřiřazení ( x i,a i, x j,a j )existujehodnota a k D k tž.přiřazení ( x i,a i, x k,a k )a( x k,a k, x j,a j )jsou konzistentní. Definice(alternativa):Prodanousíť R = {X,D,C}jebinární omezenír ij jekonzistentnícestouvzhledemkx k x j právětehdy,když prokaždýpár (a i,a j ) R ij,kdea i,a j jsouzpříslušnýchdomén, existujehodnotaa k D k tž. (a i,a k ) R ik a (a k,a j ) R kj. Definice:Podsíťnadtřemiproměnnými {x i,x j,x k }jekonzistentnípo cestáchjestližeprokaždoupermutaci (i,j,k)jer ij konzistentnípo cestěvzhledemkx k Definice: Síť omezení je konzistentní po cestách, právě když pro všechnyr ij akaždék i,jjer ij konzistentnípocestěvzhledemkx k M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 10/ 17

Revidující procedura REVISE-3 Slidy R. Dechter, chapter 3, slide 17 Beredvojiceproměnných (x,y)ajejichomezenír xy atřetí proměnnouzavracínejslabšíomezenír xysplňujícíkonzistentnostpo cestě TestujesekaždádvojicekonzistentníchhodnotR xy,jestlijemožnéji rozšířit na hodnotu z. Když ne, dvojici smaže. SložitostjeO(k 3 )neboo(tk) M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 11/ 17

Algoritmus PATH-CONSISTENCY-1(PC-1) Slidy R. Dechter, chapter 3, slide 18 Vynutí konzistentnost po cestách pro všechny podsítě velikosti 3, výsledkem je síť konzistentní po cestách Je analogií AC-1 SložitostjeO(n 5 k 5 )neboo(n 5 t 2 k) M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 12/ 17

Algoritmus PATH-CONSISTENCY-2(PC-2) Slidy R. Dechter, chapter 3, slide 19 Vylepšuje PC-1 udržováním fronty uspořádáných trojic ke zpracování KdyžjeomezeníR i jzměněnovymazánímněkterédvojicehodnot, všechnytrojicezahrnujícíx i ax j asniminějakoutřetíhodnotux k jsou znovu zpracovány Je analogií AC-3 SložitostjeO(n 3 k 5 )neboo(n 3 t 2 k) Také není optimální z hlediska časové složitosti, existuje optimální algoritmuspc-4sesložitostío(n 3 k 3 )neboo(n 3 tk) M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 13/ 17

i-konzistentnost Definice:Prosíť R = (X,D,C)jerelaceR S C,kde S =i 1, i-konzistentní(i-consistent) vzhledem k proměnné y / S právě tehdy,kdyžprokaždét R S existujehodnotaa D y tž. (t,a). Definice: Síť je i-konzistentní(i-consistent) když pro jakoukoliv instanciaci i 1 různých proměnných existuje instanciace každé ité proměnné tž. získaných i hodnot dohromady plňuje všechna omezení na těchto proměnných Revidující procedura REVISE-i slidy R. Dechter, chapter 3, slide 23 Algoritmus I-CONSISTENCY slidy R. Dechter, chapter 3, slide 23 Algoritmus je exponenciální vzhledem k i, tedy při zajišťování globální konzistentnosti(i je počet všech proměnných v síti) exponenciální vzhledem k velikosti sítě Zavádídosítěomezenínai 1proměnných,zbinárnísítětakmůže udělat nebinární M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 14/ 17

Zobecněná hranová konzistentnost Jedna ze dvou možností rozšíření hranové konzistentnosi na nebinární sítě Definice:Prosíť R = (X,D,C)srelacíR S C,jeproměnnáx hranověkonzistentnívzhledemkr S právětehdy,kdyžprokaždé a D x existujen-ticet R S tž.t[x] =a Definice:OmezeníR S jehranověkonzistentníprávětehdy,kdyžje hranově konzistentní vzhledem ke každé proměnné ve svém rozsahu Zajištění konzistentnosti redukuje doménu proměnné Druhý přístup je relační hranová konzistentnost, zaznamenává odvozené omezení ve formě změnou některé z relací reprezentujících omezení M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 15/ 17

Globální omezení Modelování reálných aplikací ve formě problému s omezeními vyžaduje specializované algoritmy šíření omezení pro často využívaná omezení alldifferent Požaduje se, aby všechny proměnné měly přiřazeny vzájemně různé hodnoty Je možné popsat binárními omezeními Aplikování hranové konzistentnosti většinou nic nepřinese, protože síť už je konzistentní(pokud nejsou jednoprvkové domény) Typicky dávají smysl nad libovolným rozsahem Další příklady: omezení součtem(jedna proměnná je součtem jiných), kumulativní omezení(kumulativní spotřeba zdrojů v čase nepřekračuje specifikovanou kapacitu) M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 16/ 17

Konzistentnost hranic Na velkých doménách je drahé zajistit hranovou konzistentnost Levnější je zajistit konzistentnost hranic(bounds-consistency) Idea je omezit domény intervalem a zajistit, že krajní body těchto intervalů splňují hranovou konzistentnost Slidy R. Dechter, chapter 3, slide 31 Zajištění konzistentnosti hranic při omezení typu alldifferent je možné včaseo(nlogn) M. Kot (VŠB-TUO) Automatizované řešení úloh s omezeními 25. října 2012 17/ 17