10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02...

45
A g e n t T e c h n o l o g y G r o u p 10. Použití základních technik UI pro plánování Gerstnerova Laboratoř h t t p : / / a g e n t s . f e l k . c v u t . c z /

Transcript of 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02...

Page 1: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

10. Použití základních technik UI pro plánování

Gerstnerova Laboratoř

h t t p : / / a g e n t s . f e l k . c v u t . c z /

Page 2: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Some slides by Dana S. Nau, University of Maryland

Introduction

Page 3: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 3

3. A systematic arrangement of elements

or important parts; a configuration or

outline: a seating plan; the plan of a

story.

4. A drawing or diagram made to scale

showing the structure or arrangement

of something.

5. A program or policy stipulating a

service or benefit: a pension plan.

plan n.

1. A scheme, program, or method

worked out beforehand for the

accomplishment of an objective: a

plan of attack.

2. A proposed or tentative project or

course of action: had no plans for the

evening.

Some Dictionary Definitions of “Plan”

Page 4: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 4

plan n.

1. A scheme,

program, or

method worked

out beforehand

for the

accomplishment

of an objective:

a plan of attack.

Page 5: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 5

plan n.

2. A proposed or tentative project or course of action:

had no plans for the evening.

Page 6: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 6

plan n.

3. A systematic arrangement of

elements or important parts;

a configuration or outline:

a seating plan;

the plan of a story.

Page 7: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 7

plan n.

4. A drawing or diagram made to scale

showing the structure or arrangement of

something.

Page 8: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 8

plan n.

5. A program or policy stipulating a service or benefit:

a pension plan.

Page 9: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 9

3. A systematic arrangement of elements

or important parts; a configuration or

outline: a seating plan; the plan of a

story.

4. A drawing or diagram made to scale

showing the structure or arrangement

of something.

5. A program or policy stipulating a

service or benefit: a pension plan.

plan n.

1. A scheme, program, or method

worked out beforehand for the

accomplishment of an objective: a

plan of attack.

2. A proposed or tentative project or

course of action: had no plans for the

evening.

Some Dictionary Definitions of “Plan”

These two are closest to the

meaning used in AI

Page 10: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 10

Processes:

Opn A BC/WW Setup Runtime LN Description001 A VMC1 2.00 0.00 01 Orient board 02 Clamp board 03 Establish datum point at bullseye (0.25, 1.00)001 B VMC1 0.10 0.43 01 Install 0.30-diameter drill bit 02 Rough drill at (1.25, -0.50) to depth 1.00 03 Finish drill at (1.25, -0.50) to depth 1.00001 C VMC1 0.10 0.77 01 Install 0.20-diameter drill bit 02 Rough drill at (0.00, 4.88) to depth 1.00 03 Finish drill at (0.00, 4.88) to depth 1.00 [...]001 T VMC1 2.20 1.20 01 Total time on VMC1[...] 004 A VMC1 2.00 0.00 01 Orient board 02 Clamp board 03 Establish datum point at bullseye (0.25, 1.00)004 B VMC1 0.10 0.34 01 Install 0.15-diameter side-milling tool 02 Rough side-mill pocket at (-0.25, 1.25) length 0.40, width 0.30, depth 0.50 03 Finish side-mill pocket at (-0.25, 1.25) length 0.40, width 0.30, depth 0.50 04 Rough side-mill pocket at (-0.25, 3.00) length 0.40, width 0.30, depth 0.50 05 Finish side-mill pocket at (-0.25, 3.00) length 0.40, width 0.30, depth 0.50004 C VMC1 0.10 1.54 01 Install 0.08-diameter end-milling tool [...]004 T VMC1 2.50 4.87 01 Total time on VMC1 005 A EC1 0.00 32.29 01 Pre-clean board (scrub and wash) 02 Dry board in oven at 85 deg. F005 B EC1 30.00 0.48 01 Setup 02 Spread photoresist from 18000 RPM spinner005 C EC1 30.00 2.00 01 Setup 02 Photolithography of photoresist using phototool in "real.iges"005 D EC1 30.00 20.00 01 Setup 02 Etching of copper005 T EC1 90.00 54.77 01 Total time on EC1 006 A MC1 30.00 4.57 01 Setup 02 Prepare board for soldering006 B MC1 30.00 0.29 01 Setup 02 Screenprint solder stop on board006 C MC1 30.00 7.50 01 Setup 02 Deposit solder paste at (3.35,1.23) on board using nozzle [...] 31 Deposit solder paste at (3.52,4.00) on board using nozzle006 D MC1 0.00 5.71 01 Dry board in oven at 85 deg. F to solidify solder paste006 T MC1 90.00 18.07 01 Total time on MC1[...] 011 A TC1 0.00 35.00 01 Perform post-cap testing on board011 B TC1 0.00 29.67 01 Perform final inspection of board011 T TC1 0.00 64.67 01 Total time on TC1 999 T 319.70 403.37 01 Total time to manufacture

[a representation] of future

behavior … usually a set of

actions, with temporal and

other constraints on them,

for execution by some agent

or agents. - Austin Tate

[MIT Encyclopedia of the

Cognitive Sciences, 1999]

A portion of a manufacturing process plan

Page 11: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 11

Generating Plans of Action

Computer programs to aid human planners

Project management (consumer software)

Plan storage and retrieval

» e.g., variant process planning in manufacturing

Automatic schedule generation

» various OR and AI techniques

For some problems, we would like generate

plans (or pieces of plans) automatically

Much more difficult

Automated-planning research is starting to pay off

Here are some examples …

Processes:

Opn A BC/WW Setup Runtime LN Description001 A VMC1 2.00 0.00 01 Orient board 02 Clamp board 03 Establish datum point at bullseye (0.25, 1.00)001 B VMC1 0.10 0.43 01 Install 0.30-diameter drill bit 02 Rough drill at (1.25, -0.50) to depth 1.00 03 Finish drill at (1.25, -0.50) to depth 1.00001 C VMC1 0.10 0.77 01 Install 0.20-diameter drill bit 02 Rough drill at (0.00, 4.88) to depth 1.00 03 Finish drill at (0.00, 4.88) to depth 1.00 [...]001 T VMC1 2.20 1.20 01 Total time on VMC1[...] 004 A VMC1 2.00 0.00 01 Orient board 02 Clamp board 03 Establish datum point at bullseye (0.25, 1.00)004 B VMC1 0.10 0.34 01 Install 0.15-diameter side-milling tool 02 Rough side-mill pocket at (-0.25, 1.25) length 0.40, width 0.30, depth 0.50 03 Finish side-mill pocket at (-0.25, 1.25) length 0.40, width 0.30, depth 0.50 04 Rough side-mill pocket at (-0.25, 3.00) length 0.40, width 0.30, depth 0.50 05 Finish side-mill pocket at (-0.25, 3.00) length 0.40, width 0.30, depth 0.50004 C VMC1 0.10 1.54 01 Install 0.08-diameter end-milling tool [...]004 T VMC1 2.50 4.87 01 Total time on VMC1 005 A EC1 0.00 32.29 01 Pre-clean board (scrub and wash) 02 Dry board in oven at 85 deg. F005 B EC1 30.00 0.48 01 Setup 02 Spread photoresist from 18000 RPM spinner005 C EC1 30.00 2.00 01 Setup 02 Photolithography of photoresist using phototool in "real.iges"005 D EC1 30.00 20.00 01 Setup 02 Etching of copper005 T EC1 90.00 54.77 01 Total time on EC1 006 A MC1 30.00 4.57 01 Setup 02 Prepare board for soldering006 B MC1 30.00 0.29 01 Setup 02 Screenprint solder stop on board006 C MC1 30.00 7.50 01 Setup 02 Deposit solder paste at (3.35,1.23) on board using nozzle [...] 31 Deposit solder paste at (3.52,4.00) on board using nozzle006 D MC1 0.00 5.71 01 Dry board in oven at 85 deg. F to solidify solder paste006 T MC1 90.00 18.07 01 Total time on MC1[...] 011 A TC1 0.00 35.00 01 Perform post-cap testing on board011 B TC1 0.00 29.67 01 Perform final inspection of board011 T TC1 0.00 64.67 01 Total time on TC1 999 T 319.70 403.37 01 Total time to manufacture

Page 12: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 12

Autonomous planning, scheduling, control

NASA: JPL and Ames

Remote Agent

Experiment (RAX)

Deep Space 1

Mars Exploration

Rover (MER)

Space Exploration

Page 13: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 13

Sheet-metal bending machines - Amada Corporation

Software to plan the sequence of bends

[Gupta and Bourne, J. Manufacturing Sci. and Engr., 1999]

Manufacturing

Page 14: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 14

Bridge Baron - Great Game Products

1997 world champion of computer bridge

[Smith, Nau, and Throop, AI Magazine, 1998]

2004: 2nd place

(North— Q) … …

PlayCard(P3; S, R3) PlayCard(P2; S, R2) PlayCard(P4; S, R4)

FinesseFour(P4; S)

PlayCard(P1; S, R1)

StandardFinesseTwo(P2; S)

LeadLow(P1; S)

PlayCard(P4; S, R4’)

StandardFinesseThree(P3; S)

EasyFinesse(P2; S) BustedFinesse(P2; S)

FinesseTwo(P2; S)

StandardFinesse(P2; S)

Finesse(P1; S)

Us:East declarer, West dummy

Opponents:defenders, South & North

Contract:East – 3NT

On lead:West at trick 3 East:KJ74

West: A2

Out: QT98653

(North— 3)

East— J

West— 2

North— 3 South— 5 South— Q

Games

Page 15: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Plánování

Plánování je uvažování nad hypotetickou interakcí s prostředím s ohledem na daný úkol (task). Motivací plánovacího procesu je hledání možného sledu

událostí, které změní prostředí za účelem dosažení daného cíle.

Plánování × rozvrhování – rozvrhování přiřazuje zdroje v čase; plánování sestavuje sled komponenet plánu

Plánování: je definován počáteční stav, koncový stav, proveditelné akce. Cílem je najít přípustnou sekvenci akcí, které změní prostředí z počátečního stavu do stavu koncového.

Rozvrhování: pracuje nad množinou zdrojů, akcí a omezení. Cílem je sestavení rozvrhu, který splňuje zadaná kriteria.

Page 16: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Plánování v UI – přístupy

Lineární a nelineární plánování pomocí prohledávaní stavového prostoru – klasická technika UI

Neoklasické techniky:

Plánovací grafy

Dokazování tvrzení

Techniky omezujících podmínek (constrain satisfaction)

Heuristické plánování – optimalizace plánu

Temporální plánování – plánování s operátory s časovou závislostí

Spojení plánování s rozvrhováním

Distribuované plánování

Plánování s neurčitostí – Markovovy rozhodovací procesy

Plánování založené na ověřování modelů (model checking)

Page 17: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Základní pojmy v plánování

Základní termíny jsou akce, stavy, cíle

Akce reprezentují:

Fyzickou změnu prostředí

Události v obchodních nebo výrobních procesech

Události v řídících nebo organizačních procesech

Fáze plánování:

Syntéza (tvorba plánu)

Inspekce (validace-verifikace plánu)

Modifikace (oprava plánu, skládání plánů)

Exekuce (vykonání plánu)

Page 18: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Klasické plánování v UI

Plánování jako ověřování teorií – stavy a akce jsou vyjádřeny pomocí predikátové logiky prvního řádu. Cílem je dokázat, že existuje stav s, který je dosažitelný z počátečního stavu a ve kterém je dosaženo žádaného cíle. Plán je pak sestaven z tohoto důkazu = plánování v situačním kalkulu.

Plánování pomocí prohledávání stavového prostoru/prostoru plánů

Reprezentace pomocí množin – každý stav je vyjádřen pomocí množiny tvrzení a každá akce obsahuje množinu tvrzení, který musí obsahovat aktuální stav aby mohla být akce provedena a množinu tvrzení která vstupují v platnost po vykonání akce

Klasická reprezentace (STRIPS) – jako předchozí, ale s použitím logiky prvního řádu

Reprezentace stavových proměnných – každý stav je vyjádřen vektorem n stavových proměnných {x1, …. , xn} a akce je funkce, která transformuje tento vektor do jiného vektoru n stavových proměnných

Page 19: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Plánování pomocí STRIPS

Jazyk STRIPS (Stanford Research Institute Problem Solver) – jednoduchý plánovací jazyk

Reprezentace stavů:

at(home) have(milk) have(banana) have(drill)

Reprezentace operací (akcí):

= action: , prec: {prec()}, eff:{eff()}

příklad:

a-go(there) = action: a-go(there), prec: {at(here)}, eff:{at(here)at(there)}

operátor je aplikovatelný na stav sn právě když (prec ) je pravda v sn a

Výsledek aplikace operátoru má za následek sn sn+1 kde sn+1 = sn (eff )

Page 20: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Plánování jako prohledávání stavového prostoru

Uzly – reprezentují stavy

Přechody A – reprezentují akce

Start/finish – reprezentují cíl a počáteční stav

Cesta řešení – reprezentují plán

Page 21: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Plánovací grafy

Orientovaný vrstvený graf reprezentuje stavy a akce ve střídajících se úrovních (nikoli stavový prostor)

Uzly – reprezentují stavy a akce

Hrany – reprezentují předpoklady, přidání a odebrání efektu

Page 22: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Hierarchické plánování

Základní operátor – jako v předchozích případech; nelze dále dekomponovat

Abstraktní operátor – meta-reprezentace dalších operací; reprezentuje plánovací problém na nižší úrovni

Page 23: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Distribuované plánování

Používané např. v multi-agentních systémech

Plánování pomocí dekompozice – založeno na principech hierarchického plánování, kde agenti uspořádaní v (dočasné nebo stálé) hierarchii dekomponují plánovací problém na podproblémy, které řeší další agenti.

Autonomní plánování – všichni agenti znají celý plánovací problém a staví lokální plány odpovídající jejich roli. Agenti sdílejí výsledky pomocí společné znalostní struktury (tabule), dedikovaného agenta (koordinátor), nebo pomocí distribuovaných koordinačních technik (vyjednávaní, broadcast, hlasování, atd.).

Plánování pomocí zpětného řetězení – kompromis prvních dvou přístupů. Např. v plánování průmyslových procesů, kde není pevná řídící hierarchie ani centrální prvek. Agenti vyjednávají pomocí protokolů (contract-net, subskripce) a tím vzniká distribuovaný plán.

Page 24: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Vlastnosti plánů (algoritmů)

Plán je korektní, pokud řeší plánovací problém (je vykonatelný a vede od počátečního stavu ke koncovému). Korektní plán je úplný a konzistentní.

Plán je úplný, jestliže všechny předpoklady použitých akcí jsou splněny efekty jiných akcí (nebo počátečními podmínkami).

Plán je konzistentní, pokud řazení akcí v plánu nekonfliktní, operace vycházející ze stejného stavu nemají protichůdné efekty a proměnné (zdroje) vázané v operacích nezpůsobí rozpor.

Vlastnost řazení akcí – akce 1 předchází akci 2 právě tehdy, pokud existuje x takové, že je předpokladem akce 2 a zároveň efektem akce 1

(1<2).

Page 25: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Vlastnosti plánů (algoritmů)

Plán π = {1, 2, ….., n} je sekvence akcí :

Částečně instanciovaný – πpi není korektní (neúplný nebo nekonzistentní)

Plně instanciovaný – πfi je korektní

Lineární plán – úplně uspořádaná množina operací {1, 2, ….., n}, tak, že {1<2< ….., <n}

Nelineární plán – částečně uspořádaná množina operací (neuspořádaná množina úplně uspořádaných operací) – {{0},{1<2},{3},….,{n-2<n-1<n}}

Page 26: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Přístupy k plánování v UI

Plánování může být progresivní (dopředné) nebo regresivní (zpětné)

Plán může být lineární nebo nelineární

Potom plánování může být

Úplně uspořádané (total-order) plánování – TOPLAN – pracuje v prostoru operací

Částečně uspořádané (partial-order) plánování – POPLAN – pracuje v prostoru plánů

Page 27: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

TOPLAN

Vytváří lineární plán – progresivní implementace

S je množina všech otevřených stavů (open), S je množina všech expandovaných stavů a si je právě expandovaný stav, Π je množina všech otevřených plánů, Π je množina všech expandovaných plánů a πi je právě expandovaný plán.

Page 28: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

TOPLAN

Vytváří lineární plán – regresivní implementace

Page 29: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Příklad plánování

Page 30: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Příklad plánování

Page 31: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Příklad plánování

Page 32: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Příklad plánování

Page 33: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Příklad plánování

Page 34: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

TOPLAN

Varianty:

Prohledávání do šířky (breadth-first search) – paměťově náročné V předchozím příkladu se zamění remove za remove-first

Prohledávání do hloubky (depth-first search) – může se zacyklit, většinou časově náročnější

V předchozím příkladu se zamění remove za remove-first a append(Π, Π), append(S,S) za append(Π, Π), append(S,S)

Best-first search (optimalizace plánu) – implementováno jako informované prohledávání (integrována heuristika – A*)

V předchozím příkladu se zamění remove za remove-best

Page 35: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

TOPLAN

Progresivní/regresivní plánovače – jsou korektní (sound = vrací korektní plány) a úplné

Problémy progresivního plánování:

Množství aplikovatelných akcí v daném stavu bývá velmi velké

Faktor větvení je velký

Progresivní prohledávání není proveditelné pro problémy s větším množstvím kroků

Problémy regresivního plánování:

Příliš mnoho cílových stavů

Stavový prostor je stále příliš velký pro efektivní prohledávání

STRIPS

Variace regresivního TOPLANu

Podstatně redukuje velikost stavového prostoru

Prohledávání bohužel není úplné

Page 36: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

POPLAN

Vytváří nelineární plán

Dekomponuje cílový stav na skupinu samostatných stavů a snaží se jich dosáhnout paralelně.

Vzhledem k vlastnosti řazení akcí je zavedena kauzální linka – akce 1

dosahuje x pro akci 2 (platnost x umožní provést akci 2, přičemž 1 již bylo provedeno) tehdy, když x je efektem akce 1 a zároveň předpokladem akce 2 a zároveň 1<2.

Page 37: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Příklad plánování

Page 38: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Příklad plánování

Page 39: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Příklad plánování

Page 40: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Příklad plánování

Page 41: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

POPLAN

Prohledáváme prostor plánů, nikoli stavů. Plánovací problém je tedy definován rozdílně. Pro každý stav máme:

Akce – stejně jako v předchozích

Omezení uspořádání – popisuje správné částečné uspořádání, omezení si nesmí odporovat (např. A<B a B<A)

Kauzální linky a jejich možné konflikty a ohrožení

Otevřené cíle – předpoklady, které nejsou dosaženy žádnou akcí

Příklad:

Page 42: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Algoritmus POPLAN

Page 43: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Problémy TOPLAN/POPLAN

Oba algoritmy jsou založeny na prohledávání stavového prostoru bez heuristik -> problém se složitostí

Pro nejhorší případ je složitost exponenciální – pokud se nevyhneme smyčkám a použijeme prohledávání do hloubky není zaručeno, že algoritmus vůbec nějaký plán někdy najde

Kontrolou smyček se paměťová náročnost algoritmu přiblíží prohledávání do šířky a je tedy opět exponenciální pro nejhorší případ

Vylepšení algoritmu – aplikace heuristik

Strategie nejmenšího závazku – minimalizuje backtracking, může být implementována jako hledání nejvíce závislých poměných

Relaxované plánování – odstraněním předpokladů se může minimalizovat počet nedosažených cílů

Plánování nezávislých podcílů – optimistické/pesimistické

Page 44: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

A g e n t T e c h n o l o g y G r o u p

Srovnání TOPLAN/POPLAN

Stavový prostor TOPLANu je konečný, POPLANU nikoliv

Výsledek TOPLANu reflektuje i plánovací strategii, POPLAN dává jen logická omezení

Uzly v POPLANu jsou obsáhlejší, takže všechny operace algoritmu jsou časově náročnější

Plány tvořené POPLANem jsou více explicitní a flexibilnější pro vykonávání

POPLAN umožňuje rozšíření např. o plánování nad časem a zdroji

POPLAN může být snadno implementován jako distribuované plánování

Page 45: 10. Použití základních technik UI pro plánování Gerstnerova … · 2010. 11. 22. · 10 02 Screenprint solder stop on board Processes: Opn A BC/WW Setup Runtime LN Description

Dana Nau: Lecture slides for Automated Planning

Licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/ 45

Any

Questions?