Extending SymPA with Unsolvability Certificates Bachelor Thesis - - PowerPoint PPT Presentation

extending sympa with unsolvability certificates
SMART_READER_LITE
LIVE PREVIEW

Extending SymPA with Unsolvability Certificates Bachelor Thesis - - PowerPoint PPT Presentation

Extending SymPA with Unsolvability Certificates Bachelor Thesis Claudia Grundke University of Basel Departement of Mathematics and Computer Science 18 September, 2020 Classical Planning A B start I G 1 G 2 C D Extending SymPA with


slide-1
SLIDE 1

Extending SymPA with Unsolvability Certificates

Bachelor Thesis

Claudia Grundke University of Basel Departement of Mathematics and Computer Science 18 September, 2020

slide-2
SLIDE 2

Classical Planning

I start A B C D G2 G1

Extending SymPA with Unsolvability Certificates 1 / 12

slide-3
SLIDE 3

Classical Planning

I start A B C D G2 G1

Extending SymPA with Unsolvability Certificates 1 / 12

slide-4
SLIDE 4

Correctness

How can we be sure that the planner gave the correct result?

https://icon-icons.com/icon/Bug/115148 (09.09.2020) Extending SymPA with Unsolvability Certificates 2 / 12

slide-5
SLIDE 5

Certifying Algorithms

emit certificate alongside result certificate justifies result and can be verified independently

Extending SymPA with Unsolvability Certificates 3 / 12

slide-6
SLIDE 6

Certifying Algorithms

emit certificate alongside result certificate justifies result and can be verified independently partially and fully certifying algorithms plan can serve as certificate

Extending SymPA with Unsolvability Certificates 3 / 12

slide-7
SLIDE 7

SymPA (´ Alvaro Torralba)

Symbolic Perimeter Abstractions forward and backward breadth first searches returns ”solvable”

  • r ”unsolvable”

C D CD

Extending SymPA with Unsolvability Certificates 4 / 12

slide-8
SLIDE 8

Certifying SymPA

Symbolic Perimeter Abstractions forward and backward breadth first searches returns plan

  • r unsolvability certificate

Extending SymPA with Unsolvability Certificates 5 / 12

slide-9
SLIDE 9

Abstract Backward Search

I start A B C D G2 G1 G CD

  • pen list:

G closed list:

  • Extending SymPA with Unsolvability Certificates

6 / 12

slide-10
SLIDE 10

Abstract Backward Search

I start A B C D G2 G1 G CD

  • pen list:

CD closed list: G

Extending SymPA with Unsolvability Certificates 6 / 12

slide-11
SLIDE 11

Abstract Backward Search

I start A B C D G2 G1 G CD

  • pen list:

I closed list: G, CD

Extending SymPA with Unsolvability Certificates 6 / 12

slide-12
SLIDE 12

Abstract Backward Search

I start A B C D G2 G1 G CD

  • pen list:
  • closed list:

G, CD, I

Extending SymPA with Unsolvability Certificates 6 / 12

slide-13
SLIDE 13

Forward Search

I start A B C D G2 G1 dead ends

  • pen list:

I closed list:

  • Extending SymPA with Unsolvability Certificates

7 / 12

slide-14
SLIDE 14

Forward Search

I start A B C D G2 G1 dead ends

  • pen list:

C closed list: I

Extending SymPA with Unsolvability Certificates 7 / 12

slide-15
SLIDE 15

Forward Search

I start A B C D G2 G1 dead ends

  • pen list:
  • closed list:

I, C

Extending SymPA with Unsolvability Certificates 7 / 12

slide-16
SLIDE 16

Unsolvability Proof System (Salom´ e Eriksson)

proofs serve as unsolvability certificates core concept: dead states

Extending SymPA with Unsolvability Certificates 8 / 12

slide-17
SLIDE 17

Unsolvability Proof System (Salom´ e Eriksson)

proofs serve as unsolvability certificates core concept: dead states initial state or all goal states dead ⇒ task unsolvable

Extending SymPA with Unsolvability Certificates 8 / 12

slide-18
SLIDE 18

Forward Unsolvability Proof

D is dead CL is dead

all successors of CL either in CL itself or in D

initial state is in CL a a a

D = set of dead ends, CL = closed list

Extending SymPA with Unsolvability Certificates 9 / 12

slide-19
SLIDE 19

Forward Unsolvability Proof

D is dead

D contains no goal state D cannot be left

CL is dead

all successors of CL either in CL itself or in D

initial state is in CL a a a

I start A B C D G2 G1 dead ends

  • pen list:

closed list:aaa

  • I, C

D = set of dead ends, CL = closed list

Extending SymPA with Unsolvability Certificates 9 / 12

slide-20
SLIDE 20

Forward Unsolvability Proof

D is dead

D contains no goal state D cannot be left

CL is dead

CL contains no goal state all successors of CL either in CL itself or in D

initial state is in CL a a a

I start A B C D G2 G1 dead ends

  • pen list:

closed list:aaa

  • I, C

D = set of dead ends, CL = closed list

Extending SymPA with Unsolvability Certificates 9 / 12

slide-21
SLIDE 21

Forward Unsolvability Proof

D is dead

D contains no goal state D cannot be left

CL is dead

CL contains no goal state all successors of CL either in CL itself or in D

initial state is in CL a a a

I start A B C D G2 G1 dead ends

  • pen list:

closed list:aaa

  • I, C

D = set of dead ends, CL = closed list

Extending SymPA with Unsolvability Certificates 9 / 12

slide-22
SLIDE 22

Forward Unsolvability Proof

D is dead

D contains no goal state D cannot be left

CL is dead

CL contains no goal state all successors of CL either in CL itself or in D

initial state is in CL a ⇒ initial state dead

D = set of dead ends, CL = closed list

Extending SymPA with Unsolvability Certificates 9 / 12

slide-23
SLIDE 23

Forward Unsolvability Proof

D is dead

D contains no goal state D cannot be left

CL is dead

CL contains no goal state all successors of CL either in CL itself or in D

initial state is in CL a ⇒ initial state dead ⇒ task unsolvable

D = set of dead ends, CL = closed list

Extending SymPA with Unsolvability Certificates 9 / 12

slide-24
SLIDE 24

Evaluation

total number of tasks 352 returned ”unsolvable” 104 valid certificates 83 average time search 1.11s certificate generation 2.74s verification 33.80s

Extending SymPA with Unsolvability Certificates 10 / 12

slide-25
SLIDE 25

Remaining Errors

D is dead

D contains no goal state D cannot be left

CL is dead

CL contains no goal state all successors of CL either in CL itself or in D

initial state is in CL a ⇒ initial state dead ⇒ task unsolvable

D = set of dead ends, CL = closed list

Extending SymPA with Unsolvability Certificates 11 / 12

slide-26
SLIDE 26

Summary

fully certifying version of SymPA verifiable unsolvability proofs

Extending SymPA with Unsolvability Certificates 12 / 12

slide-27
SLIDE 27

Questions? Comments? Discussion!

slide-28
SLIDE 28

Goals intersect Dead Ends

I start A B C D G2 G1 CD abstract forward search

  • pen list:

I closed list:

  • Dbw:
  • abstract backward search
  • pen list:

G1, G2 closed list:

  • Dfw:
  • Extending SymPA with Unsolvability Certificates

13 / 12

slide-29
SLIDE 29

Goals intersect Dead Ends

I start A B C D G2 G1 CD abstract forward search

  • pen list:

A, CD closed list: I Dbw:

  • abstract backward search
  • pen list:

G1, G2 closed list:

  • Dfw:
  • Extending SymPA with Unsolvability Certificates

13 / 12

slide-30
SLIDE 30

Goals intersect Dead Ends

I start A B C D G2 G1 CD abstract forward search

  • pen list:

B, CD closed list: I, A Dbw:

  • abstract backward search
  • pen list:

G1, G2 closed list:

  • Dfw:
  • Extending SymPA with Unsolvability Certificates

13 / 12

slide-31
SLIDE 31

Goals intersect Dead Ends

I start A B C D G2 G1 CD abstract forward search

  • pen list:

CD closed list: I, A, B Dbw:

  • abstract backward search
  • pen list:

G1, G2 closed list:

  • Dfw:
  • Extending SymPA with Unsolvability Certificates

13 / 12

slide-32
SLIDE 32

Goals intersect Dead Ends

I start A B C D G2 G1 CD abstract forward search

  • pen list:

G2 closed list: I, A, B, CD Dbw:

  • abstract backward search
  • pen list:

G1, G2 closed list:

  • Dfw:
  • Extending SymPA with Unsolvability Certificates

13 / 12

slide-33
SLIDE 33

Goals intersect Dead Ends

I start A B C D G2 G1 CD abstract forward search

  • pen list:
  • closed list:

I, A, B, CD, G2 Dbw:

  • abstract backward search
  • pen list:

G1, G2 closed list:

  • Dfw:
  • Extending SymPA with Unsolvability Certificates

13 / 12

slide-34
SLIDE 34

Goals intersect Dead Ends

I start A B C D G2 G1 CD abstract forward search

  • pen list:
  • closed list:

I, A, B, CD, G2 Dbw: G1 abstract backward search

  • pen list:

G1, G2 closed list:

  • Dfw:
  • Extending SymPA with Unsolvability Certificates

13 / 12

slide-35
SLIDE 35

Goals intersect Dead Ends

I start A B C D G2 G1 CD abstract forward search

  • pen list:
  • closed list:

I, A, B, CD, G2 Dbw: G1 abstract backward search

  • pen list:

G2 closed list:

  • Dfw:
  • Extending SymPA with Unsolvability Certificates

13 / 12

slide-36
SLIDE 36

Goals intersect Dead Ends

I start A B C D G2 G1 CD abstract forward search

  • pen list:
  • closed list:

I, A, B, CD, G2 Dbw: G1 abstract backward search

  • pen list:

CD closed list: G2 Dfw:

  • Extending SymPA with Unsolvability Certificates

13 / 12

slide-37
SLIDE 37

Goals intersect Dead Ends

I start A B C D G2 G1 CD abstract forward search

  • pen list:
  • closed list:

I, A, B, CD, G2 Dbw: G1 abstract backward search

  • pen list:

I closed list: G2, CD Dfw:

  • Extending SymPA with Unsolvability Certificates

13 / 12

slide-38
SLIDE 38

Goals intersect Dead Ends

I start A B C D G2 G1 CD abstract forward search

  • pen list:
  • closed list:

I, A, B, CD, G2 Dbw: G1 abstract backward search

  • pen list:
  • closed list:

G2, CD, I Dfw:

  • Extending SymPA with Unsolvability Certificates

13 / 12

slide-39
SLIDE 39

Goals intersect Dead Ends

I start A B C D G2 G1 CD abstract forward search

  • pen list:
  • closed list:

I, A, B, CD, G2 Dbw: G1 abstract backward search

  • pen list:
  • closed list:

G2, CD, I Dfw: A, B, G1

Extending SymPA with Unsolvability Certificates 13 / 12

slide-40
SLIDE 40

Goals intersect Dead Ends

Dbw Dfw G1

Extending SymPA with Unsolvability Certificates 14 / 12

slide-41
SLIDE 41

main loop: search until current search infeasible or its open list empty current search infeasible? found solution? return ”unsolvable” no current search abstract? return ”solvable” no add unreachable states to dead ends of other direction goto main loop yes yes no generate new abstract search goto main loop yes

Extending SymPA with Unsolvability Certificates 15 / 12

slide-42
SLIDE 42

SymPA Algorithm

  • 1. search until current search infeasible or its open list empty
  • 2. if current search infeasible:

3. start new abstract search 4. goto 1.

  • 5. if found no solution:

6. return ”unsolvable”

  • 7. if search is not abstract:

8. return ”solvable”

  • 9. add unreachable states to dead ends of other direction
  • 10. goto 1.

Extending SymPA with Unsolvability Certificates 16 / 12

slide-43
SLIDE 43

Certifying SymPA

  • 1. search until current search infeasible or its open list empty
  • 2. if current search infeasible:

3. start new abstract search 4. goto 1.

  • 5. if found no solution:

6. return ”unsolvable” generate unsolvability certificate

  • 7. if search is not abstract:

8. return ”solvable” generate plan

  • 9. add unreachable states to dead ends of other direction
  • 10. goto 1.

Extending SymPA with Unsolvability Certificates 17 / 12

slide-44
SLIDE 44

Forward Dead Ends

D CLb I G

Extending SymPA with Unsolvability Certificates 18 / 12

slide-45
SLIDE 45

Implementation

  • nly unsolvability certificates

certificate consists of three files conversion multivalued variables to binary variables

Extending SymPA with Unsolvability Certificates 19 / 12