overconstrained well constrained underconstrained a b c d e f g h i j k

Similar documents
Constructive Geometric Constraint Solving

Planar Upward Drawings

, each of which is a tree, and whose roots r 1. , respectively, are children of r. Data Structures & File Management

Why the Junction Tree Algorithm? The Junction Tree Algorithm. Clique Potential Representation. Overview. Chris Williams 1.

Paths. Connectivity. Euler and Hamilton Paths. Planar graphs.

An undirected graph G = (V, E) V a set of vertices E a set of unordered edges (v,w) where v, w in V

Outline. 1 Introduction. 2 Min-Cost Spanning Trees. 4 Example

(2) If we multiplied a row of B by λ, then the value is also multiplied by λ(here lambda could be 0). namely

CSC Design and Analysis of Algorithms. Example: Change-Making Problem

COMPLEXITY OF COUNTING PLANAR TILINGS BY TWO BARS

CSE 373: More on graphs; DFS and BFS. Michael Lee Wednesday, Feb 14, 2018

Exam 1 Solution. CS 542 Advanced Data Structures and Algorithms 2/14/2013

Outline. Computer Science 331. Computation of Min-Cost Spanning Trees. Costs of Spanning Trees in Weighted Graphs

The University of Sydney MATH2969/2069. Graph Theory Tutorial 5 (Week 12) Solutions 2008

Module graph.py. 1 Introduction. 2 Graph basics. 3 Module graph.py. 3.1 Objects. CS 231 Naomi Nishimura

Graph Isomorphism. Graphs - II. Cayley s Formula. Planar Graphs. Outline. Is K 5 planar? The number of labeled trees on n nodes is n n-2

CSE 373. Graphs 1: Concepts, Depth/Breadth-First Search reading: Weiss Ch. 9. slides created by Marty Stepp

b. How many ternary words of length 23 with eight 0 s, nine 1 s and six 2 s?

V={A,B,C,D,E} E={ (A,D),(A,E),(B,D), (B,E),(C,D),(C,E)}

0.1. Exercise 1: the distances between four points in a graph

1 Introduction to Modulo 7 Arithmetic

COMP108 Algorithmic Foundations

Garnir Polynomial and their Properties

V={A,B,C,D,E} E={ (A,D),(A,E),(B,D), (B,E),(C,D),(C,E)}

CS 241 Analysis of Algorithms

12/3/12. Outline. Part 10. Graphs. Circuits. Euler paths/circuits. Euler s bridge problem (Bridges of Konigsberg Problem)

Algorithmic and NP-Completeness Aspects of a Total Lict Domination Number of a Graph

5/9/13. Part 10. Graphs. Outline. Circuits. Introduction Terminology Implementing Graphs

Cycles and Simple Cycles. Paths and Simple Paths. Trees. Problem: There is No Completely Standard Terminology!

CS 461, Lecture 17. Today s Outline. Example Run

Present state Next state Q + M N

CSE 373: AVL trees. Warmup: Warmup. Interlude: Exploring the balance invariant. AVL Trees: Invariants. AVL tree invariants review

Math 61 : Discrete Structures Final Exam Instructor: Ciprian Manolescu. You have 180 minutes.

CS200: Graphs. Graphs. Directed Graphs. Graphs/Networks Around Us. What can this represent? Sometimes we want to represent directionality:

Register Allocation. Register Allocation. Principle Phases. Principle Phases. Example: Build. Spills 11/14/2012

Solutions for HW11. Exercise 34. (a) Use the recurrence relation t(g) = t(g e) + t(g/e) to count the number of spanning trees of v 1

# 1 ' 10 ' 100. Decimal point = 4 hundred. = 6 tens (or sixty) = 5 ones (or five) = 2 tenths. = 7 hundredths.

Register Allocation. How to assign variables to finitely many registers? What to do when it can t be done? How to do so efficiently?

Seven-Segment Display Driver

Graphs. Graphs. Graphs: Basic Terminology. Directed Graphs. Dr Papalaskari 1

A Simple Code Generator. Code generation Algorithm. Register and Address Descriptors. Example 3/31/2008. Code Generation

ECE COMBINATIONAL BUILDING BLOCKS - INVEST 13 DECODERS AND ENCODERS

CS September 2018

Trees as operads. Lecture A formalism of trees

CS61B Lecture #33. Administrivia: Autograder will run this evening. Today s Readings: Graph Structures: DSIJ, Chapter 12

Problem solving by search

Similarity Search. The Binary Branch Distance. Nikolaus Augsten.

Outline. Circuits. Euler paths/circuits 4/25/12. Part 10. Graphs. Euler s bridge problem (Bridges of Konigsberg Problem)

EE1000 Project 4 Digital Volt Meter

Graph Contraction and Connectivity

Graphs. CSC 1300 Discrete Structures Villanova University. Villanova CSC Dr Papalaskari

Greedy Algorithms, Activity Selection, Minimum Spanning Trees Scribes: Logan Short (2015), Virginia Date: May 18, 2016

Outline. Binary Tree

ECE 407 Computer Aided Design for Electronic Systems. Circuit Modeling and Basic Graph Concepts/Algorithms. Instructor: Maria K. Michael.

12. Traffic engineering

5/7/13. Part 10. Graphs. Theorem Theorem Graphs Describing Precedence. Outline. Theorem 10-1: The Handshaking Theorem

A 4-state solution to the Firing Squad Synchronization Problem based on hybrid rule 60 and 102 cellular automata

Numbering Boundary Nodes

Designing A Concrete Arch Bridge

MAT3707. Tutorial letter 201/1/2017 DISCRETE MATHEMATICS: COMBINATORICS. Semester 1. Department of Mathematical Sciences MAT3707/201/1/2017

Announcements. Not graphs. These are Graphs. Applications of Graphs. Graph Definitions. Graphs & Graph Algorithms. A6 released today: Risk

DUET WITH DIAMONDS COLOR SHIFTING BRACELET By Leslie Rogalski

Using the Printable Sticker Function. Using the Edit Screen. Computer. Tablet. ScanNCutCanvas

QUESTIONS BEGIN HERE!

learning objectives learn what graphs are in mathematical terms learn how to represent graphs in computers learn about typical graph algorithms

Computational Biology, Phylogenetic Trees. Consensus methods

Section 10.4 Connectivity (up to paths and isomorphism, not including)

Weighted graphs -- reminder. Data Structures LECTURE 15. Shortest paths algorithms. Example: weighted graph. Two basic properties of shortest paths

Chapter 9. Graphs. 9.1 Graphs

1. Determine whether or not the following binary relations are equivalence relations. Be sure to justify your answers.

NP-Completeness. CS3230 (Algorithm) Traveling Salesperson Problem. What s the Big Deal? Given a Problem. What s the Big Deal? What s the Big Deal?

Nefertiti. Echoes of. Regal components evoke visions of the past MULTIPLE STITCHES. designed by Helena Tang-Lim

Multipoint Alternate Marking method for passive and hybrid performance monitoring

Page 1. Question 19.1b Electric Charge II Question 19.2a Conductors I. ConcepTest Clicker Questions Chapter 19. Physics, 4 th Edition James S.

Analysis for Balloon Modeling Structure based on Graph Theory

arxiv: v1 [cs.ds] 20 Feb 2008

Chapter 18. Minimum Spanning Trees Minimum Spanning Trees. a d. a d. a d. f c

S i m p l i f y i n g A l g e b r a SIMPLIFYING ALGEBRA.

CS553 Lecture Register Allocation 1

GREEDY TECHNIQUE. Greedy method vs. Dynamic programming method:

More Foundations. Undirected Graphs. Degree. A Theorem. Graphs, Products, & Relations

Organization. Dominators. Control-flow graphs 8/30/2010. Dominators, control-dependence. Dominator relation of CFGs

QUESTIONS BEGIN HERE!

RAM Model. I/O Model. Real Machine Example: Nehalem : Algorithms in the Real World 4/9/13

arxiv: v1 [math.mg] 5 Oct 2015

arxiv: v1 [cs.ar] 11 Feb 2014

Integration Continued. Integration by Parts Solving Definite Integrals: Area Under a Curve Improper Integrals

(a) v 1. v a. v i. v s. (b)

SOLVED EXAMPLES. be the foci of an ellipse with eccentricity e. For any point P on the ellipse, prove that. tan

Aquauno Video 6 Plus Page 1

Lecture 20: Minimum Spanning Trees (CLRS 23)

Layout Decomposition for Triple Patterning Lithography

MULTIPLE-LEVEL LOGIC OPTIMIZATION II

Partitioning Algorithms. UCLA Department of Computer Science, Los Angeles, CA y Cadence Design Systems, Inc., San Jose, CA 95134

New challenges on Independent Gate FinFET Transistor Network Generation

CSE303 - Introduction to the Theory of Computing Sample Solutions for Exercises on Finite Automata

A PROPOSAL OF FE MODELING OF UNIDIRECTIONAL COMPOSITE CONSIDERING UNCERTAIN MICRO STRUCTURE

Decimals DECIMALS.

A Low Noise and Reliable CMOS I/O Buffer for Mixed Low Voltage Applications

Discovering Frequent Graph Patterns Using Disjoint Paths

Transcription:

Using Grph Domposition or Solving Continuous CSPs Christin Blik 1, Brtrn Nvu 2, n Gills Tromttoni 1 1 Artiil Intllign Lortory, EPFL CH-1015 Lusnn, Switzrln {lik,trom}@li.i.pl.h 2 CERMICS, quip Contrints 2004 rout s luiols, 06902 Sophi-Antipolis Cx, B.P. 93, Frn Brtrn.Nvu@sophi.inri.r Astrt. In prti, onstrint stistion prolms r otn strutur. By xploiting this strutur, solving lgorithms n mk importnt gins in prormn. In this ppr, w ous on strutur ontinuous CSPs n y systms o qutions. W us grph omposition thniqus to ompos th onstrint grph into irt yli grph o smll loks. W prsnt nw lgorithms to solv ompos prolms whih solv th loks in prtil orr n prorm intllignt ktrking whn lok hs no solution. For unr-onstrin prolms, th solution sp n xplor y hoosing som vrils s input prmtrs. Howvr, in this s, th omposition is no longr uniqu n som hois l to ompositions with smllr loks thn othrs. W prsnt n lgorithm or slting th input prmtrs tht l to goo ompositions. First xprimntl rsults init tht, vn on smll prolms, signiint spups n otin using ths lgorithms. 1 Introution In th r o ontinuous CSPs, rsrh hs tritionlly ous on thniqus to nor som orm o lol onsistny. Ths thniqus r us in omintion with ihotomi srh to n solutions. W us Numri, stt o th rt systm or solving th spi typ o CSPs onsir in this ppr [Hntnryk t l., 1997]. In prti, onstrint stistion prolms r otn strutur. Howvr, littl hs n on to xploit th strutur o ontinuous CSPs to mk gins in prormn. In this ppr, w ous on int solution strtgis or solving strutur CSPs. W will rstrit our ttntion to CSPs whih r n y nonlinr qutions n stuy th gnrl s in whih th systm is not nssrily squr. This ppr rings togthr thniqus to ompos onstrint grphs with ktrking lgorithms to solv th ompos systms. Although our pproh is gnrl, w hv hosn to prsnt 2D mhnil ongurtion xmpls. By oing so, w o not wnt to onvy tht our pproh pplis only to this typ o prolms. W minly us ths xmpls or itil rsons; thy r sy to unrstn n to illustrt.

2 Th Dulmg n Mnlsohn Domposition In this ppr, onstrint grph G is iprtit grph (V; C; E) whr V r th vrils, C r th onstrints n thr is n r twn onstrint in C n h o its vrils in V. A mximum mthing o iprtit onstrint grph inlus mximum numr o rs whih shr no vrtx. A mthing impliitly givs irtion to th orrsponing onstrint grph; pir (v; ) orrspons to irt r rom to v n irt rs rom v to othr mth onstrints onnt to v. Th D&M omposition is s on th ollowing thorm. Thorm 1 (Dulmg n Mnlsohn, 1958) Any mximum-mthing o onstrint grph G givs nonil prtition o th vrtis in G into thr isjoint susts: th unr-onstrin prt, th ovr-onstrin prt n th wll-onstrin prt. Osrv tht on or two o th thr prts my mpty in th gnrl s. Strting rom ny mximum mthing o th grph, th ovr-onstrin prt is orm with ll nos rhl rom ny non mth onstrint in C y rvrs pth. Th unr-onstrin prt is orm with ll nos rhl rom ny non mth vril in V y irt pth. Th wll-onstrin prt is orm with th othr nos n yils prt mthing o th orrsponing sugrph. Figur 1 shows n xmpl. Vrils r rprsnt y irls, onstrints y rtngls; pir in th mthing is pit y n llips. Th wll-onstrin prt n urthr ompos. Th prt mthing o ovronstrin wll onstrin unronstrin g h i j k 1 2 3 4 5 6 7 8 9 10 11 12 1 2 3 4 5 6 7 8 9 10 11 12 g h i j k Fig. 1. Th D&M omposition o onstrint grph (lt) n th quivlnt mtrix rprsnttion (right). this prt impliitly ns irt grph. W thn omput its strongly onnt omponnts, ll loks, to otin irt yli grph (DAG) o loks. It turns out tht this omposition, ll th n omposition, is inpnnt o th mthing prorm. Thorm 2 (K nig, 1916) Evry prt mthing o (squr) iprtit grph ls to uniqu omposition into strongly onnt omponnts. Not tht K nig's thorm os not pply in s o non prt mthing.

3 Ovrviw In this prt, w giv gnrl ovrviw o th lgorithms sri in this ppr n o how thy work togthr. As input, w hv st o numri qutions whih my non-squr. W mk th gnrl ssumption tht squr n n systms giv isrt st o solutions. This is in t si ssumption o Numri [Hntnryk t l., 1997], th tool w us to solv systms o qutions. In numr o pthologil ss, this ssumption is not vri, thn w n or xmpl us proilisti mthos to ignos th prolm (s Stion 7). W rst prorm D&M omposition [Pothn n Chin-Fn, 1990] n hnl th thr prts, i prsnt, in th orr ovr-onstrin, wll-onstrin n nlly unr-onstrin prt. Ovr-onstrin Prt In this prt, th numr o qutions m is grtr thn th numr n o vrils. I th orrsponing qutions r inpnnt, th systm hs no solution. W n l with this sitution in numr o wys. First, through ktrk-r sltion pross, w oul lt th usr rmov m n qutions to mk th prt wll-onstrin 1. Altrntivly, th m n xtr onstrints might kpt s sot onstrints. Thy r simply vri tr th solution pross. I th m n qutions r runnt, w gt solutions, othrwis thr is no solution. Wll-onstrin Prt As xplin in Stion 2, or this prt, w n prorm n omposition. Th rsult is DAG o loks. Eh lok is solv y Numri n, in th susqunt loks, th impli vrils r rpl y th vlus oun. To nsur ompltnss, ktrking is prorm s soon s lok hs no solution. Stion 5 sris svrl intllignt ktrking lgorithms tht tk vntg o th prtil orr o th DAG to voi uslss work. Osrv tht this pross looks lik th rsolution o nit CSP: th loks r th vrils n th solutions to lok orm th omin o th vril. Unr-onstrin Prt On w hv solv th wll-onstrin prt n rpl th vrils y th vlus oun, w r lt with th unr-onstrin prt. This prt ontins n vrils n m qutions with n > m. At this point r = n m riving input vrils (ivs) must givn vlu to otin m m prolm. Thr r numr o issus rlt to th sltion o th r ivs in th unr-onstrin prt. First, som sts o r input vrils my l to ly-onstrin systms, tht is, systms or whih thr xists no prt mthing. This mns tht w nnot ritrrily hoos r o th n vrils s ivs. Stion 6.1 prsnts nw lgorithm whih llows th sltion o th r ivs on y on n oris rtin utur hois tr h sltion. This pproh might us or xmpl in physil simultion [Srrno, 1987], whr th usr xpliitly hngs irnt prmtrs in orr to unrstn th hvior o systm. 1 This pross is th ul o th on or rmoving vrils in th unr-onstrin prt s sri in Stion 6.1.

Son, K nig's thorm os not hol or th unr-onstrin prt. Tht is, th DAG o loks otin is not uniqu n pns on th mthing. In prtiulr, rtin hois o ivs l to ompositions with smllr loks thn othrs n r usully sir to solv. Stion 6 prsnts nw lgorithms to n ompositions with smll loks. Intrtiv skthing pplitions (s [Blik t l., 1998]) shoul vor this typ o ompositions. 4 Exmpls In this stion, w prsnt 2 xmpls tht will us throughout this ppr. Diti Exmpl (Figur 2) Vrious points (whit irls) r onnt with x,y x,y x,y 1 x,y 2 x j,y j x,y 3 g h i y 4 x g,y g x h,y h x i,y i j 5 Fig. 2. Diti prolm n orrsponing DAG o loks. rigi ros (lins). Ros only impos istn onstrint twn two points. Point h (lk irl) irs rom th othrs in tht it is tth to th ro hg; ii. Finlly, point is onstrin to sli on th spi lin. Th prolm is to n sil ongurtion o th points so tht ll onstrints r stis. Mini-root (Figur 3) Th tringl rprsnts th s n is x. Sin th root is symmtril, lt us sri th lt hl. Point is th lt shoulr. Th ro h; i hs vril lngth r s, n is us to rott th ro h; i. On this ro w hv n rm mhnism whos lngth is vril n pns on th prmtr r. Th gry point is onstrin to sli on th ro h; i. Th lk point is tth to oth th ro h; gi n h; hi, n hry ors ths ros to t lik sissor. Th position o th n point i o th rm n now position y ontrolling r n r s. Th omposition shown in th right si o Figur 3 orrspons to th ov sription o th root. Tht is, r, r, 0 r s n rs 0 r th riving inputs tht ontrol th npoints. Suppos howvr tht w wnt th root to pik up n ojt. In this s th n points i n i 0 shoul go to spi lotion. Th qustion now is: wht vlus shoul r ; r 0 ; r s; rs 0 tk to gt th two npoints t th sir spot? Th omposition o this invrs prolm is shown in th mil o Figur 3.

Bs x,y y x,y y x x r s r s r r h h g g LtArm RightArm i i r s,r x -h, y -h x,y x i,y i x i,y i r s,r x -h, y -h x,y r s r s x,y x,y r r x,y x,y x -h, y -h x i,y i x -h, y -h x i,y i Fig. 3. Miniroot (lt), DAG o invrs prolm (mil) n riving prolm (right). Finlly, onsir th sitution in whih signr is skthing th points n ros or this root using omputr, n wnts to vlit his rwing. In this s, th input vrils my hosn so tht th vlition prolm is s simpl s possil. In Stion 6, w prsnt n lgorithm tht is sign to o xtly tht. In this xmpl, th st solution is to tk y, y, x i, x 0 i, y, 0 x 0, y 0 s input prmtrs, whih ls to omposition with on lok o siz 5 n othr loks o siz 1, 2 or 3. 5 Solving Wll-Constrin Systms 5.1 Introution In s th D&M omposition onsists only o wll onstrin prt, w n prorm n omposition. By oing so w voi to sn th systm s whol to th solvr. In, w will only n to solv smllr systms whih orrspon to th loks in th DAG. To s this, onsir th omposition shown in Figur 2 on th right. Rspting th orr o th DAG, w rst otin solution or lok 1. W n now sustitut th vlus or th orrsponing vrils ppring in th qutions o lok 2 n otin solution rom th solvr. Thn w pross lok 3 in similr shion, ollow y lok 4 n 5. Whn lok hs no solution, on hs to ktrk. A hronologil ktrkr gos k to th prvious lok. It tris irnt solution or tht lok n rstrts to solv th susqunt loks. Howvr, this pproh is inint. In, in th xmpl ov, suppos lok 5 h no solution. Chronologil ktrking woul go k to lok 4, n irnt solution or it, n solv lok 5 gin. Clrly, th sm ilur will nountr gin in lok 5. A ttr strtgy is to ronsir only thos loks whih might hv us th prolm. W oul ollow th pproh us y Conit Bs Bkjumping (CBJ) [Prossr, 1993]. Whn no solution is oun or lok 5, on woul go k irtly to lok 3. Howvr, whn jumping k, CBJ rss ll intrmit srh inormtion. Hr, th solution o lok 4 woul rs whn jumping

k to lok 3. This is unortunt; th solution o lok 4 is still vli n th solvr my hv spnt onsirl mount o tim ning it. This prolm n voi y holing on to th intrmit srh inormtion. This pproh is tkn in ynmi ktrking (DB) [Ginsrg, 1993]. As CBJ, DB jumps k to th us o th prolm. Howvr, whn oing so, it os not rs intrmit nogoos. Inst, it movs th prolm vril to th st o uninstntit vrils n rmovs only nogoos s on its ssignmnt. By oing so, DB tivly rorrs vrils. Unortuntly, this rorring is inomptil with th prtil orr impos y th DAG. W thror n to rsort to lgorithms tht kp intrmit srh inormtion ut r lso xil nough to rspt th prtil orr impos y th omposition. Gnrl Prtil Orr Bktrking (GPB) [Blik, 1998] stiss ths rquirmnts. Blow w prsnt spi instn o GPB tht n us to solv ompos prolms. 5.2 Solving Prtilly Orr Prolms with GPB W rst riy sri th GPB lgorithm or solving isrt CSPs. At ll tims GPB mintins omplt st o ssignmnts X whih r inrmntlly moi until ll onstrints r stis. Th srh pross is rivn y th ition o nw nogoos. A nogoo is sust o ssignmnts o vlus to vrils whih r inomptil. X is moi inrmntlly so s to rmin omptil with th urrnt st o nogoos. Whn nw nogoo is, th vlu o on o its vrils, sy y, will hng. By hoosing y, oms n orr nogoo, not y ~. W ll y th onlusion vril, not y (~), n th rmining vrils ntnt vrils (~). An orr nogoo ~ ns n orring rltion x < (~) or h ntnt x 2 (~). Nogoos r gnrt whn th urrnt ssignmnts violt onstrint. In this s th nogoo is th onstrint violtion. Nogoos r lso gnrt whn or omin o givn vril y, ll vlus r rul out y nogoos. In this s nw nogoo (y) is inrr tht ontins th ssignmnts o ll th ntnt vrils (~ i ) ppring in vry nogoo ~ i with y = (~ i ). In ition to th onlusion vrils o nogoo, on my lso moiy th ssignmnt o othr vrils in X, s long s th nw vlus r ptl. A vlu v is ptl or th vril x i x = v is omptil with th ntnts o ny o th urrnt nogoos n i v is in th liv omin o x. Th liv omin o vril is th st o vlus o its omin tht is not rul out y onlusion o nogoo. Whn nw nogoo with onlusion y is, ll nogoos ~ i or whih y 2 (~ i ) r isr. By oing so, n ssignmnt is rul out y t most on nogoo. Th sp omplxity o GPB is thror polynomil. Th prolm hs no solution whn th mpty nogoo is inrr. W now prsnt n instn o GPB, ll GPB I. W will s tht this lgorithm n sily pt to solv ompos ontinuous CSPs. Inst o moiying omplt st o ssignmnts, GPB I inrmntlly xtns onsistnt prtil st o ssignmnts. W thror hv st o instntit vrils I n st o uninstntit vrils U. To nsur trmintion, it is rquir

tht th sltion o th onlusion o nogoo rspts prtil orr. In GPB I w us n orring shm < I n s ollows. Th vrils in I rspt th totl orr n y th instntition squn n ny vril in I prs ny vril in U. Ausing nottion, w n th ntnts o vril y s (y) = x j x < yg. Th snnts o y r n y D(y) = x j y < t xg, whr < t is th trnsitiv losur o <. With ths nitions, w moiy GPB to otin GPB I. lgorithm GPB I Until U is mpty or th mpty nogoo is inrr o Slt vril x 2 U or whih (x) I n ssign n ptl vlu v to x. i x = v violts som onstrint with vrils in I thn Gnrt nogoo orrsponing to th onstrint violtion n Bktrk(), ls mov x rom U to I. n n n. prour Bktrk () Slt y s onlusion o so tht y ollows (~) in th orring shm n stor ~. Disr ll nogoos ~ i or whih y 2 ( ~ i) n mov y n th vrils D(y) in I to U. i th liv omin o y is mpty thn Bktrk((y)). n n. Algorithm 1: GPB I GPB I is n instn o GPB n thror trmints. It is lso systmti sin it stiss n itionl rstrition on th ssignmnts tht my hng. W rr th rr to [Blik t l., 1998] or til isussion. As sri ov, GPB I hlts s soon s it ns solution. To n ll solutions to givn CSP, th lgorithm n moi s ollows. Whn solution is oun, it is rport n nw nogoo is gnrt tht ruls out xtly this st o ssignmnts. W thn ktrk rom this nogoo n rstrt th srh loop to n th nxt solution. GPB I solvs isrt CSPs. W now pt it to solv ontinuous prolms tht r ompos into DAG o loks. Hr th loks tk ovr th rol o th vrils. Th isrt omin 2 o possil vlus or lok x is th st 2 As stt rlir, w ssum tht w hv isrt st o solutions or h lok.

o solutions, not y (x), o th orrsponing suprolm. Rll tht, or givn lok x, th solutions o th prnt loks, not y p(x), r rst sustitut into th qutions o lok x. Th rsulting systm is thn solv ovr th ontinuous omins o th vrils o th lok. By solving th systm, ll vlus in th ontinuous omins r limint, xpt or (x). On n viw this s th ition o nogoo, not y P (x), tht hs th givn lok x s onlusion n p(x) s ntnt vrils. W n now moiy GPB I to solv ompos prolms. Th min irn is tht th omin (x) o lok x is not known priori n hs to omput s on th vlus o p(x). W thror hv to mk sur tht (x) is romput vry tim ny o th vlus o p(x) hngs. Th rsulting lgorithm is ll GPB. Th ktrk prour rmins th sm. Howvr, lgorithm GPB Until U is mpty or th mpty nogoo is inrr o slt lok x 2 U or whih (x) [ p(x) I i (x) is outt with rspt to p(x) thn romput (x) using th nw vlus or p(x) n ktrk(p(x)), ls ssign n ptl vlu v to x n mov x rom U to I. n n n. Algorithm 2: GPB in prtil implmnttion, r hs to tkn to rprsnt n hnl th nogoos o th typ P (x). In Figur 4, w illustrt GPB on th xmpl o Figur 2. Suppos w solv lok 1 n slt rst th solution whr is ov n. Thn w pro to solv lok 2 n slt th solution whr is ov n. W mk similr hoi or whos solutions r omput in lok 3. Now, in lok 4, w slt on o th two possil lotions or. Finlly, w rh lok 5 to n out tht thr is no solution (sh). This sitution is shown on th lt in Figur 4. At this point, w nogoo P (5) whih is s on th solutions o loks 2 n 3 n ruls out ll possil vlus or lok 5. W n tht th omin o 5 is mpty n inr nogoo (5) whih stts tht th solutions o lok 2 n 3 r inomptil. Sin lok 3 ws instntit tr lok 2 w slt lok 3 s onlusion o this nogoo. W now slt th othr solution or this lok whr point is low n. On gin w n tht lok 5 hs no solution (son pitur in Figur 4) n ktrk to lok 3. Howvr, this tim, oth possil solutions o lok 3 r rul out y nogoos, so w ontinu ktrking. Sin th two nogoos hv lok 2 s ntnt n P (3) hs lok 1 s ntnt, w gnrt nw nogoo stting tht th solutions o

g h i g h i g h i g h i j j Fig. 4. Exmpl prolm. j j lok 1 n 2 r inomptil. As shown in th thir pitur in Figur 4, w now us th othr solution or lok 2. This srh pross ontinus until w rh th ongurtion, pit on th right in Figur 4, tht stiss ll onstrints. Osrv tht GPB, i not rs th solutions o lok 4 whn it ktrk to lok 3. Howvr, thy woul hv n rs y CBJ, whih woul ltr n to romput thm. 5.3 Exmpls W oun tht, s ompr to solving th systm s whol, th us o GPB on ompos systms is vry tiv. Lt us illustrt this point with som xmpls. As it is usully on whn solving CSPs n y systms o qutions, w rport th running tims to n ll solutions. All th tsts wr prorm on Sun SprSttion 5 with Ilog Numri 1.0. On th smll iti xmpl o Figur 2, GPB ns only 2.9 sons, whil without omposition Numri ns 4.8 sons. Th spups r mor importnt whn th xmpls r somwht mor omplit. Consir th mini-root positioning prolm shown in Figur 3. Without omposing th prolm, it tks Numri 2153 sons to solv th prolm. Using th omposition shown in th mil in Figur 3, with GPB this running tim is ru to 33.3 sons. In som ss vry smll loks n oun. In this s, th ktrk srh ovr th isrt sts o solutions is ominnt. Figur 5 shows n xmpl o suh sitution. As or, rs rprsnt istn onstrints n w hv x th two oorints, x n y, o point s wll s on oorint, x, o point. In ition to wht is shown in th gur, thr r two vrils tht msur th hight o h o th lgs n s r = (y i + y h )=2 n r 0 = (y i 0 + y h 0)=2. W limit th possil rng on ths two vrils to sty within th intrvl shown in Figur 5. By oing so, thr is only on solution whih is th on shown in th gur. Without omposition, it tks Numri 2091 sons to solv this prolm. With th omposition shown on th right in Figur 5, GPB solvs th prolm in 29 sons. 6 Hnling Struturlly Unr-onstrin Prolms As isuss in Stion 3, in this s, w n to n r ivs suh tht th rmining onstrint grph hs prt mthing. Two irnt pprohs or

x,y x x y x,y y x,y g g x,y x,y x g,y g x,y x,y x g,y g i h h i ρ x h,y h x i,y i x h,y h x i,y i r r Fig. 5. A ongurtion o tringls orrsponing to pyrmi towr. oing so r prsnt low. On th ivs r slt, th prolm oms wll-onstrin n n solv y GPB. 6.1 Bktrk-Fr Driving Inputs' Sltion Th lgorithm shown low is s on th D&M proprtis. It llows to hoos th ivs on y on in ktrk-r mnnr. Th tim omplxity o th lgolgorithm Fr-ivs-sltion ( onstrint grph; its D&M omposition) whil r ivs hv not n hosn o hoos s iv ny vril v in th unr-onstrin prt i v is mth in th urrnt mthing thn invrt in th urrnt mthing n ltrnting pth rom v to n unmth vril pply D&M omposition on th nw mthing (whih trnsrs som nos rom th unr-onstrin to th wll-onstrin prt) n n n. Algorithm 3: Th ktrk-r iv sltion rithm is O(r(n+m)) or onstrint grph with n vrils n m onstrints. In, on pth invrsion n on D&M prt rtrivl is nssry or h o th r iv sltions. Figur 6 illustrts this lgorithm. Th orrtnss o th ktrk-r iv sltion ollows irtly rom th D&M proprtis. Th proo n oun in th xtn vrsion o this ppr [Blik t l., 1998]. 6.2 Fining Smll Bloks: OpnPln s W prsnt low n lgorithm ll OpnPln s3 whih ns ompositions with wll-onstrin squr loks whos lrgst lok is o minimum siz. 3 s stns or smll loks.

(1) (2) (3) (4) Fig. 6. Bktrk-r iv sltion. (1) Initil mximum mthing. 3 ivs r to slt. (2) Sltion o vril s iv: vril is orin or urthr sltion. (3) Th sltion o oris. (4) Th sltion o mks th prolm wll-onstrin. lgorithm OpnPln s (G: onstrint grph): DAG o loks lt D n mpty DAG o loks whil onstrints rmin in th onstrint grph o slt-r-lok s : slt r squr lok o smllst siz or whih thr xists prt mthing in D (long with th orrsponing irt rs) rmov rom G n rturn D n. Algorithm 4: OpnPln s OpnPln s is spiliz vrsion o n lgorithm ll OpnPln: th prour slt-r-lok o OpnPln n slt ny r lok whrs slt-rlok s imposs rstritions. OpnPln is s on th PDOF lgorithm us or mintining onstrints in intrtiv pplitions [Vnr Znn, 1996]. It uils DAG o loks in rvrs orr rom th lvs to th roots. A r lok hs vrils whih r link only to onstrints within th lok. Itrtivly slting n rmoving loks whih r r nsurs tht DAG o loks is uilt, tht is, tht no irt yl n ppr twn loks [Tromttoni, 1997]. W now til how OpnPln s ns th st omposition o th onstrint grph o th iti prolm. Th pross is illustrt on th right si o Figur 7. First, th lok [ 7,y ], 1 1 r lok, is slt n rmov: x oms iv. Now thr is no mor 1 1 r lok vill so tht 2 2 r lok, or xmpl [ 1, 3,x,y ], is slt n rmov. Thn, th r lok [ 4, 5,x,y ] is slt n rmov. This rs th lok [ 6, 9,x,y ] whih is slt n rmov. Th lok [ 2,x ] is now r; y oms iv. In th

Y C1 X C4 X Y C1 X C4 X X C3 C2 Y C6 C5 Y X C3 C2 Y C6 C5 Y X Y X Y X Y X Y X C7 C8 C12 C9 X C7 C8 C12 C9 Y Xg Yg C11 Xi Yi Xh Yh C10 Xj Yj Y Xg Yg C11 Xi Yi Xh Yh C10 Xj Yj C13 C13 Fig. 7. A omposition o th iti prolm with on 13 13 lok (lt) n omposition with our 2 2 loks (,,, (x g, x i)) n svrl 1 1 loks (right). sm wy, OpnPln s nlly slts th loks [ 8,y ], [ 11, 12,x g,x i ], [ 13,y i ] n [ 10,x h ]. Proposition 1 OpnPln s ns omposition whos lrgst lok hs minimum siz. Th proo n oun in th xtn ppr [Blik t l., 1998]. Not tht, s oppos to OpnPln s, th mximum-mthing lgorithm ns ompositions with loks o ritrry siz: oth ompositions o Figur 7 oul inirntly otin y mximum-mthing whrs OpnPln s ns th on in th right. Slting 1 1 r lok is th only oprtion involv in th lssil PDOF. This mounts to srhing vrils link to only on onstrint. Howvr, i thr is no 1 1 r lok, ning wll-onstrin r lok o minimum siz is suspt to NP-hr, so tht OpnPln s is xponntil. In, niv lgorithm whih srhs or k k vli lok is O(n k ), whr n is th numr o vrils. Nvrthlss, this lgorithm n somtims us or prolms whih my numrilly hr to solv. In this s, th ovrh or otining th st omposition n nglt ovr th gin in solving smll loks. Our rst xprimntl rsults prsnt in Stion 6.4 sm to onrm this. 6.3 Fining Smll Bloks: OpnPln hm Whn th onstrint grphs r lrg, w hv to rsort to huristi mthos to n goo ompositions. To o so, nothr instn o OpnPln, ll OpnPln hm, is propos or whih th prour slt-r-lok hm is hillliming huristi. I no 1 1 lok hs n oun, mximum mthing o th onstrint grph is prorm. W onsir rst th smllst l st o this mthing to slt y slt-r-lok hm. Howvr, st is not th smllst possil r lok, sin othr mthings oul yil smllr lvs. Thror, slt-r-lok hm hngs th mthing so tht smllr l oul ppr. Inst o prorming ull srh ovr ll mthings, hill-liming huristi

is us. On tris to rk st y invrting pth in th urrnt mthing rom iv to vril in st. I suh pth is oun whih yils smllr l, th pross is ritr until rhing x point. Not tht th DAG o loks my signintly hng tr pth invrsion so tht ompltly nw loks my ppr. untion slt-r-lok hm (G: onstrint grph): r lok i thr xists 1 1 r lok thn rturn prorm mximum mthing o G tht yils DAG o loks D st lt st th smllst l lok o D st whil D st is hnging o lt ivs th st o ivs in D st suh tht n ltrnting pth xists rom iv in ivs to vril in st D D st ; st or vry iv in ivs n vry vril v in st o invrt n ltrnting pth rom to v tht yils DAG o loks D 0 i D 0 hs smllr l lok 0 thn thn D D 0 ; 0 n D st D; st n rturn st n. Algorithm 5: Huristi mtho to slt smll wll-onstrin r lok In Figur 7, w show how OpnPln hm otins th st omposition (right) strting rom th mthing orrsponing to th worst on (lt). slt-rlok hm rst invrts th pth rom y to x, whih yils th rst r (1 1) lok [ 7,y ]. Thn it slts th lok [ 1, 3,x,y ] y invrting th pth rom y to x. Now it n pro until th st omposition is otin. 6.4 First Exprimntl Rsults On th iti prolm, th ivs on th lt in Figur 7 l to on uniqu lok solv y Numri in 10 s. With th ivs in Figur 7 (right), th prolm is solv y GPB in 3.3 s. W lso prorm tsts on smll istn prolm in 3 D m o two ttrhr n som itionl ros shown in Figur 8. Th worst omposition o this prolm hs two loks o siz 7. Th st omposition, otin y oth OpnPln s n OpnPln hm, inlus loks o siz 2 or 3 only. Whn th riving inputs orrspon to th omposition, Numri tks 1284.8 s to solv th whol systm. Solving th sm prolm with GPB tks 125.4 s. Now whn th riving inputs orrspon to th goo omposition, Numri on th whol systm tks 200 s whrs only 22.7 s r nssry to solv th sm prolm using GPB.

7 3 2 h 5 6 4 1 14 g 12 8 i 11 9 13 10 7 Rlt Work Fig. 8. A 3 D linkg with two ttrhr. To our knowlg, no xisting systm whih prorms grph omposition omins omplt numril solvrs with ktrking. Th systm prsnt in [Srrno, 1987] uss mximum-mthing lgorithm to ompos gnrl sign prolms. Howvr, ompltnss is not hiv; loks r solv using tritionl Nwton-Rphson mtho n no ktrking is prorm. Furthrmor, this work is not s on th D&M omposition. In prtiulr, th riving inputs nnot slt in ktrk-r shion. In [Ait-Aoui t l., 1993], th D&M thniqu is us to stuy gomtri onstrints. Howvr, no ttntion is pi to th solution spts. Th D&M omposition os not tk into ount th vlus o th oints o th qutions. Howvr, som prolms, whos D&M omposition is struturlly wll onstrin, r in t m o pnnt qutions. On wy to tt runny in nonlinr systms o qutions is to lult th Join t vrious rnomly slt points [Lmur n Mihlui, 1997]. This inormtion oul thn us to proprly ompos this typ o systms. In th s o mhnil ongurtion, thr xist numr o thniqus to isovr susystms tht r rigi [Fuos n Homnn, 1997]. By rpling ths rigi susystms y smllr ons, gins in prormn n m. This thniqu is omplmntry to ours n oul us to urthr improv th prormn o our lgorithms on mhnil ongurtion prolms. 8 Conlusion In this ppr, w hv prsnt thniqus to solv strutur ontinuous CSPs. Our pproh is s on omposition thniqus y Dulmg & Mnlsohn n K nig, tht ompos strutur prolms into irt yli grph o loks. Th ontriution o this ppr is twool. First, w propos nw lgorithms or solving struturlly wll-onstrin prolms. Thy omin th us o xisting solvrs, or solving th loks, with intllignt ktrking thniqus tht us th prtil orr o th DAG to voi uslss work. Son, w prsnt nw lgorithms to hnl unr-onstrin prolms. Ths lgorithms llow th sltion o riving input vrils, whos vlus r ssum to st xtrnlly. Input vrils n ithr slt through n intrtiv ktrk-r sltion or n slt utomtilly using nw lgorithm to otin -

ompositions with smll loks. W hv prsnt numr o xmpls to illustrt tht signint spups n otin using ths lgorithms. Rrns [Ait-Aoui t l., 1993] Smy Ait-Aoui, Roln Jgou, n Dominiqu Mihlui. Rution o onstrint systms. In Compugrphi, 1993. [Blik t l., 1998] Christin Blik, Brtrn Nvu, n Gills Tromttoni. Using grph omposition or solving ontinuous sps. Thnil Rport 98-287, E.P.F.L., Lusnn, Switzrln, 1998. [Blik, 1998] Christin Blik. Gnrlizing ynmi n prtil orr ktrking. In AAAI 98: Fitnth Ntionl Conrn on Artiil Intllign, pgs 319325, Mison, Wisonsin, July 1998. [Fuos n Homnn, 1997] Ionnis Fuos n Christoph Homnn. A grphonstrutiv pproh to solving systms o gomtri onstrints. ACM Trnstions on Grphis, 16(2):179216, 1997. [Ginsrg, 1993] M.L. Ginsrg. Dynmi ktrking. Journl o Artiil Intllign Rsrh, 1:2546, August 1993. [Hntnryk t l., 1997] Psl Vn Hntnryk, Lurnt Mihl, n Yvs Dvill. Numri : A Moling Lngug or Glol Optimiztion. MIT Prss, 1997. [Lmur n Mihlui, 1997] Hrv Lmur n Dominiqu Mihlui. Qulittiv stuy o gomtri onstrints. In Bt Br rlin n Ditr Rollr, itors, Workshop on Gomtri Constrint Solving n Applitions, pgs 134145, Thnil Univrsity o Ilmnu, Grmny, 1997. [Pothn n Chin-Fn, 1990] Alx Pothn n Jun Chin-Fn. Computing th lok tringulr orm o sprs mtrix. ACM Trnstions on Mthmtil Sotwr, 16(4):303324, 1990. [Prossr, 1993] P. Prossr. Hyri lgorithms or th onstrint stistion prolm. Computtionl Intllign, 9(3):268299, August 1993. [Srrno, 1987] D. Srrno. Constrint Mngmnt in Conptul Dsign. PhD thsis, Msshustts Institut o Thnology, Cmrig, Msshustts, Otor 1987. [Tromttoni, 1997] Gills Tromttoni. Solution Mintnn o Constrint Systms Bs on Lol Propgtion. PhD thsis, Univrsity o Ni-Sophi Antipolis, 1997. In rnh. [Vnr Znn, 1996] Brly Vnr Znn. An inrmntl lgorithm or stisying hirrhis o multi-wy, tow onstrints. ACM Trnstions on Progrmming Lngugs n Systms, 18(1):3072, Jnury 1996.