csp: examples

34
Constraint Systems Laboratory February 18, 2009 CSP Modeling Examples CSP: Examples Industrial applications: scheduling, resource allocation, product configuration, etc. AI: Logic inference, temporal reasoning, NLP, etc. 1 Puzzles: Sudoku & Minesweeper

Upload: bonifacy-ania

Post on 31-Dec-2015

48 views

Category:

Documents


0 download

DESCRIPTION

CSP: Examples. Industrial applications: scheduling, resource allocation, product configuration, etc. AI: Logic inference, temporal reasoning, NLP, etc. Puzzles: Sudoku & Minesweeper. 2,4,6,9. 3,5,7.

TRANSCRIPT

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

CSP: Examples• Industrial applications: scheduling, resource

allocation, product configuration, etc.

• AI: Logic inference, temporal reasoning, NLP, etc.

1

• Puzzles: Sudoku & Minesweeper

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Constraint propagation• Removes from the problem values (or

combinations of values) that are inconsistent with the constraints

• Does not eliminate any solution

2

<

<

== <

<

1,2,10

1,6,11

2,4,6,93,5,7

3,5,75,6,7,8

8,9,11

<

<

<

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Sudoku as a CSP• Each cell is a variable (decision) with the domain [1..9] (choices)• Two models: Binary, 810 AllDiff binary constraints

Non-binary, 27 AllDiff constraints of arity 9

3

Joint work with C. Reeson

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

GAC on AllDiff

[Régin, 94]• Arcs that do not appear in any

matching that saturates the variables correspond to variable-value pairs that cannot appear in any solution

• GAC on AllDiff is poly time

Propagation algorithms: demo• Arc Consistency (AC)

4

• Generalized AC (GAC)

c9

c1

c2

c3

c4

c5

c6

c7

c8

1

2

3

4

5

6

7

8

9

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Minesweeper as a CSP demo

5

Exactly two mines:000001100001010000110, etc.

Exactly three mines:000011100011010001110, etc.

• Variables are the cells• Domains are {0,1} (i.e., safe or mined)• One constraint for each cell with a number (arity 1...8)

Joint work with R. Woodward, K. Bayer & J. Snyder

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Geospatial reasoning

Joint work with K. Bayer, M. Michalowski & C.A. Knoblock (USC)

6

Google Maps

Yahoo Maps

Actual location

Microsoft Live Local(as of November 2006)

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples 7

• Layout: streets and buildings

• Phone book– Complete/incomplete – Assumption: all addresses in

phone book correspond to a building in the layout

Building Identification (BID) problem

B6B8

B2B4

B5

B3

B9

B10B7

B1

S1 S2

S3

Si

= Building

= Corner building

= Street

S1#1, S1#4, S1#8, S2#7, S2#8, S3#1,S3#2, S3#3, S3#15, …

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples 8

Basic (address numbering) rules• No two buildings can have the same address• Ordering

– Numbers increase/decrease along a street

• Parity– Numbers on a given side of a street are odd/even

Ordering

B1 < <B2 B3Odd

Even

Parity

B1

B2

B3

B4

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples 9

Additional information

Landmarks

B1 B2

1600 Pennsylvania Avenue

Gridlines

B1 B2

S1

S1 #138 S1 #208

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples 10

Query1. Given an address, what buildings could it be?

B6B8

B2

B4

B5

B3

B9

B10B7

B1

S1 S2

S3

Si

= Building

= Corner building

= Street

S1#1,S1#4,S1#8,S2#7,S2#8,S3#1,S3#2,S3#3,

S3#15S1#1,S3#1,S3#15

2. Given a building, what addresses could it have?

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples 11

CSP model

S1

S2

B2

OddOnNorth

B1B1c

B3 B4 B5

B1 B2

IncreasingEast

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples 12

Example constraint network

B6-corner

O

P Phone-book Constraint

Ordering Constraint

Variable

P

P

PO

O

O

OO

O O

OOOB1-corner

B1B2

B3

B8

B9

B2-corner

IncreasingNorth

OddOnEastSide

B4-corner

B8-corner

B7

B4 B6B5

OddOnNorthSide

IncreasingEast

B6B8

B2

B4

B5

B3

B9

B10B7

B1

S1 S2

S3

Si

= Building

= Corner building

= Street

S1#1,S1#4,S1#8,S2#7,S2#8,S3#1,S3#2,S3#3,

S3#15

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

GTAAP: Task

• Hiring & managing GTAs as instructors + graders– Given

• A set of courses• A set of graduate teaching assistants• A set of constraints that specify allowable assignments

– Find a consistent & satisfactory assignment• Consistent: assignment breaks no (hard) constraints• Satisfactory: assignment maximizes

1. number of courses covered 2. happiness of the GTAs

• Often, number of hired GTAs is insufficient

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Motivation• Context

– “Most difficult duty of a department chair” [Reichenbach, 2000]

– Assignments done manually, countless reviews, persistent inconsistencies

– Unhappy instructors, unhappy GTAs, unhappy students

• Observation– Computers are good at maintaining consistency– Humans are good at balancing tradeoffs

• Our solution– An online, constraint-based system

– With interactive & automated search mechanisms

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Outline

• Task & Motivation

• System Architecture & Interfaces

• Scientific aspects– Problem Modeling – Problem Solving– Comparing & Characterizing Solvers

• Motivation revisited & Conclusions

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

System Architecture

1. Web-interface for applicants

Password ProtectedAccess for GTAs

http://cse.unl.edu/~gta

Cooperative, hybrid Search Strategies

Other structured,semi-structured,

orunstructured DBs

In progress

Visualization widgets

Password ProtectedAccess for Managerhttp://cse.unl.edu/~gta

2. Web-interface for manager View / edit GTA records Setup classes Specify constraints Enforce pre-assignments

Local DB

3. A local relational database Graphical selective queries

Interactive Search

Automated SearchHeuristic BT

Stochastic LSMulti-agent Search

Randomized BT4. Drivers for

Interactive assignments Automated search algorithms

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

GTA interface: Preference Specification

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Manager interface: TA Hiring & Load

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Outline

• Task & Motivation

• System Architecture & Interfaces

• Scientific aspects– Problem Modeling– Problem Solving– Comparing & Characterizing Solvers

• Motivation revisited & Conclusions

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Constraint-based Model• Variables

– Grading, conducting lectures, labs & recitations

• Values– Hired GTAs (+ preference for each value in domain)

• Constraints– Unary: ITA certification, enrollment, time conflict, non-

zero preferences, etc.– Binary (Mutex): overlapping courses– Non-binary: same-TA, capacity, confinement

• Objective– longest partial and consistent solution (primary criterion)– while maximizing GTAs’ preferences (secondary criterion)

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Outline

• Task & Motivation

• System Architecture & Interfaces

• Scientific aspects– Problem Modeling– Problem Solving– Comparing & Characterizing Solvers

• Motivation revisited & Conclusions

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Problem Solving• Interactive decision making

– Seamlessly switching between perspectives– Propagates decisions (MAC)

• Automated search algorithms– Heuristic backtrack search (BT)– Stochastic local search (LS)– Multi-agent search (ERA)– Randomized backtrack search (RDGR)– Future: Auction-based, GA, MIP, LD-search, etc.

• On-going: Cooperative/hybrid strategies

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Manager interface: Interactive Selection

Constraint Systems Laboratory

Dual perspectiveTask-centered view Resource-centered view

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Heuristic BT Search• Since we don’t know, a priori, whether instance is

solvable, tight, or over-constrained– Modified basic backtrack mechanism to deal with this situation

• We designed & tested various ordering heuristics: – Dynamic LD was consistently best

• Branching factor relatively huge (30)– Causes thrashing, backtrack never reaches early variables

24 hr: 51 (26%)

1 min: 55 (20%)

Max depth: 57

Shallowest level reached by BT after …

Nu

mb

er

of

varia

ble

s: 6

9

Depth of the tree: 69

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Stochastic Local Search• Hill-climbing with min-conflict heuristic• Constraint propagation:

– To handle non-binary constraints (e.g., high-arity capacity constraints)

• Greedy: – Consistent assignments are not undone

• Random walk to avoid local maxima• Random restarts to recover from local

maxima

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Multi-Agent Search (ERA) [Liu et al. 02]

• “Extremely” decentralized local search– Agents (variables) seek to occupy best positions (values)– Environment records constraint violation in each position of an

agent given positions of other agents– Agents move, egoistically, between positions according to

reactive Rules

• Decisions are local – An agent can always kick other agents from a favorite position

even when value of ‘global objective function’ is not improved ERA appears immune to local optima

• Lack of centralized control– Agents continue to kick each other Deadlock appears in over-constrained problems

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Randomized BT Search• Random variable/value selection allows

BT to visit a wider area of the search space [Gomes et al. 98]

• Restarts to overcome thrashing

• Walsh proposed RGR [Walsh 99]

• Our strategy, RDGR, improves RGR with dynamic choice of cutoff values for the restart strategy [Guddeti & Choueiry 04]

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Optimizing solutions

• Primary criterion: solution length– BT, LS, ERA, RGR, RDGR

• Secondary criterion: preference values– BT, LS, RGR, RDGR– Criterion:

• Average preference• Geometric mean• Maximum minimal preference

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

More Solvers…

• Interactive decision making

• Automated search algorithms– BT, LS, ERA, RGR, RDGR.– Future: Auction-based, GA, MIP, LD-

search, etc.

• On-going: Cooperative / hybrid strategies

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Outline

• Task & Motivation

• System Architecture & Interfaces

• Scientific aspects– Problem Modeling– Problem Solving– Comparing & Characterizing Solvers

• Motivation revisited & Conclusions

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Conclusions• Integrated interactive & automated problem-

solving strategies– Reduced the burden of the manager– Lead to quick development of ‘stable’ solutions

• Our efforts – Helped the department– Trained students in CP techniques– Paved new avenues for research

• Cooperative, hybrid search• Visualization of solution space

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

Other sample projects1. Graduate TA Assignment Project (GTAAP)

• Modeling, search, GUI

2. Temporal Reasoning• Constraint propagation, search, graph theory

3. Symmetry detection• Search, databases (computational)

4. Structural decompositions• Databases (theory), tractability results

33

Constraint Systems Laboratory

February 18, 2009 CSP Modeling Examples

The Research

• Modeling & Reformulation

• Propagation algorithms

• Search algorithms

• Decomposition algorithms

• Symmetry identification & breaking

34