107 1010 Presented by Shant Karakashian Symmetries in CP Sprint 2010 1 Outline Successful Applications Need for Symmetry Expressions Manually Providing Symmetries Easier Symmetry Presentation ID: 531913
Download Presentation The PPT/PDF document "Handbook of Constraint Programming" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Handbook of Constraint Programming 10.7 – 10.10
Presented by: Shant KarakashianSymmetries in CP, Sprint 2010
1Slide2
Outline
Successful ApplicationsNeed for Symmetry Expressions
Manually Providing Symmetries
Easier Symmetry Presentation
Automatic Identification of Symmetry GroupSuccess in Automatic Symmetry IdentificationSymmetry and InferenceSymmetry and Implied ConstraintsSymmetry and Local SearchDominanceAlmost SymmetriesSymmetry in Other ProblemsConclusion
2Slide3
Successful Applications
Many of symmetry breaking methods have been successfully applied to a variety of problems:Balanced Incomplete Block Design
Steel Mill Slab Design
Maximum Density Still Life
Social Golfers Problem Peaceable Coexisting Armies of QueensFixed Length Error Correcting CodesPeg SolitareAlien Tiles
3Slide4
Balanced Incomplete Block Design
Design theory problemUses: Statistical experiment design & Cryptography
Special case of Block Design (e.g. Latin Square)
Easily modeled using matrices
Used as a test bed for STAB & GAP-SBDD4Slide5
Steel Mill Slab Design
Simplification of a real industry problemSchedule the production of steel in a factoryConditional symmetry breaking
[Gent e. al ‘05]
5Slide6
Maximum Density Still Life
Problem arises from John H. Conway’s Game of LifeFind the densest possible still-life pattern
Still-life
: stable pattern that is not changed by the rules that iterate the game
Densest: pattern with the largest number of live cells that fit in an n x n section of the boardModeling and symmetry breaking [Smith ‘02] [Bosch & Trick ‘02]Dynamic symmetry breaking [Petrie et al. ‘04]
6Slide7
Social Golfers Problem
32 golfers once a week play golf in groups of 4Find a schedule for as many weeks as possibleSuch that any two golfers play in the same group at most once
Most efficient algorithm includes symmetry breaking
[Harvey & Winterer ‘05]
7Slide8
Peaceable Coexisting Armies of Queens
Introduced by Robert Bosch in 1999Find the maximum number of black and white queens on 8x8 chessboard
Such that the queens do not attach each other
Various models with dynamic symmetry breaking considered
[Smith et al. ‘04]8Slide9
Fixed Length Error Correcting Codes
C: Set of strings of length n on alphabet
F
Minimum distance of C
is the minimum of the distances between distinct pairs of strings from C Studied in conjunction with symmetry breaking constraints [Frisch et al. ‘03]9Slide10
Peg Solitare
A board with a number of holesPegs arranged on the board with at least one holeGoal state: no more moves possible for checkers-like moves
Study on solving with various AI paradigms including symmetry breaking given in [Jefferson et al. ‘03]
10Slide11
Need for Symmetry Expressions
Most research on symmetry constraints assumes that the symmetries are provided by the programmer:SBDS: list of functions of symmetries
SBDD: a dominance checker function
lex
-leader & GAP-SBDS: symmetry groups11Slide12
Manually Providing Symmetries
Two ways to overcome the requirement to provide the symmetries manually: Make the writing of the symmetries easier for the programmers
Detect the symmetries automatically
12Slide13
Easier Symmetry Presentation
Create a system which produces the required group for the methodsSystem achieved by using computational group theory
The user does not need to understand how the group is generated
Provide a set of functions to map expressions of the symmetry to group generators
Is limited to the most commonly occurring kinds of symmetryDoes not allow users to express arbitrary groups13Slide14
Automatic Identification of Symmetry Group
Possible through determining the automorphism
group of the graph associated with the constraint problem
Can be done in connection with the microstructure graph
This method may not scaleEven small problems may have big graphs due to non-binary constraintsAutomorphism could not be calculated in reasonable time14Slide15
Success in Automatic Symmetry Identification
Puget introduced a method that considers a graph related to intensional
representation of each constraint
Found that symmetry can be detected efficiently on a variety of problems
Similarly an incomplete method had some successful results in practice [Ramani & Markov ‘04]Outstanding results reported in SAT community even on large problems
15Slide16
Symmetry and Inference
Symmetry can be used to:Reduce the size of the problemChange inference & propagation algorithms
If can deduce that a value can be removed, no need to do additional work to remove all symmetric equivalents of it
If can deduce that a value can not be removed, no need to try to propagate the symmetric equivalents
AC-6 makes use of this ideaGent et al. introduced symmetric variants of (i,j)-consistency and singleton consistency with algorithms for their enforcement
16Slide17
Symmetry and Implied Constraints
Constraints added before search can be used to derive ‘implied’ constraintsMay greatly reduce search in ways not possible only with the original problem constraints
In general dynamic symmetry breaking does not allow implied constraint to be added
No automatic technique for adding effective implied constraints
17Slide18
Symmetry and Local Search
Prestwich pointed out that it is dissadvantageous
to add symmetry breaking constraints when local search is used
Local search suffers when solutions are removed
It is hard to guide the stochastic search away from parts of the search space where solutions have been excludedExcluded solutions become local optimumPrestwich proposed an idea to use symmetry with local search with some success [Prestwich ‘92, 93]
18Slide19
Dominance
`Dominances` in constraint problems studied in [Beck & Prestwich ‘04]A dominance is a transition between assignments which is guaranteed to improve some notion of a cost function
Symmetries are special cases of dominances where the cost is kept the same
19Slide20
Almost Symmetries
Constraints can be removed or added to create certain symmetriesCase of relaxing constraints on a problem to get new symmetries:
If relaxed problem is highly symmetric, reduced search space helps search
If no solution, then the original problem has no solution
If has solution, need to check if applies to the original problem20Slide21
Symmetry in Other Problems
Symmetry is also used in other areas such as:Integer Programming
Planning
Automated Theorem Proving
Model CheckingGraph IsomorphismGroup Theory21Slide22
Conclusion
The study of symmetry is group theoryConsidered in this chapter:Reformulation
Adding symmetry breaking constraints before search
Dynamic symmetry breaking
22