1 Algebraic Structure in Almost-Symmetries Igor Markov, Univ. of Michigan Presented by Ian Gent, St. Andrews.

Slides:



Advertisements
Similar presentations
Maximal Independent Sets of a Hypergraph IJCAI01.
Advertisements

A Study of 0/1 Encodings Prosser & Selensky A Study of 0/1 Encodings Prosser & Selensky.
Symmetry Definitions for Constraint Satisfaction Problems Dave Cohen, Peter Jeavons, Chris Jefferson, Karen Petrie and Barbara Smith.
Complexity Classes: P and NP
NP-Hard Nattee Niparnan.
Algorithms for computing Canonical labeling of Graphs and Sub-Graph Isomorphism.
Representing Boolean Functions for Symbolic Model Checking Supratik Chakraborty IIT Bombay.
Lecture 24 MAS 714 Hartmut Klauck
Courtesy RK Brayton (UCB) and A Kuehlmann (Cadence) 1 Logic Synthesis Sequential Synthesis.
Evaluating Heuristics for the Fixed-Predecessor Subproblem of Pm | prec, p j = 1 | C max.
Inpainting Assigment – Tips and Hints Outline how to design a good test plan selection of dimensions to test along selection of values for each dimension.
Anany Levitin ACM SIGCSE 1999SIG. Outline Introduction Four General Design Techniques A Test of Generality Further Refinements Conclusion.
CSCI 256 Data Structures and Algorithm Analysis Lecture 22 Some slides by Kevin Wayne copyright 2005, Pearson Addison Wesley all rights reserved, and some.
Saucy3: Fast Symmetry Discovery in Graphs Hadi Katebi Karem A. Sakallah Igor L. Markov The University of Michigan.
Dynamic Bayesian Networks (DBNs)
Lecture 10: Integer Programming & Branch-and-Bound
Object Detection by Matching Longin Jan Latecki. Contour-based object detection Database shapes: …..
Solving Difficult SAT Instances In The Presence of Symmetry Fadi A. Aloul, Arathi Ramani Igor L. Markov and Karem A. Sakallah University of Michigan.
A New Force-Directed Graph Drawing Method Based on Edge- Edge Repulsion Chun-Cheng Lin and Hsu-Chen Yen Department of Electrical Engineering, National.
3/25  Monday 3/31 st 11:30AM BYENG 210 Talk by Dana Nau Planning for Interactions among Autonomous Agents.
Techniques for Proving NP-Completeness
1 Optimisation Although Constraint Logic Programming is somehow focussed in constraint satisfaction (closer to a “logical” view), constraint optimisation.
CPSC 322, Lecture 12Slide 1 CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12 (Textbook Chpt ) January, 29, 2010.
DARPA Scalable Simplification of Reversible Circuits Vivek Shende, Aditya Prasad, Igor Markov, and John Hayes The Univ. of Michigan, EECS.
The Theory of NP-Completeness
DAC Solving Difficult SAT Instances In The Presence of Symmetry Fadi A. Aloul, Arathi Ramani Igor L. Markov and Karem A. Sakallah University of Michigan.
1 Fault Nodes in Implication Graph for Equivalence/Dominance Collapsing, and Identifying Untestable and Independent Faults R. Sethuram
Solving the Protein Threading Problem in Parallel Nocola Yanev, Rumen Andonov Indrajit Bhattacharya CMSC 838T Presentation.
Recovering Articulated Object Models from 3D Range Data Dragomir Anguelov Daphne Koller Hoi-Cheung Pang Praveen Srinivasan Sebastian Thrun Computer Science.
Exploiting Structure in Symmetry Detection for CNF Paul T. Darga, Mark H. Liffiton, Karem A. Sakallah, and Igor L. Markov The University of Michigan.
Shatter: Efficient Symmetry- Breaking for Boolean Satisfiability Fadi A. Aloul Igor L. Markov, Karem A. Sakallah The University of Michigan.
Computing with Finite Automata (part 2) 290N: The Unknown Component Problem Lecture 10.
(work appeared in SODA 10’) Yuk Hei Chan (Tom)
Domain decomposition in parallel computing Ashok Srinivasan Florida State University COT 5410 – Spring 2004.
Regular Model Checking Ahmed Bouajjani,Benget Jonsson, Marcus Nillson and Tayssir Touili Moran Ben Tulila
Tractable Symmetry Breaking Using Restricted Search Trees Colva M. Roney-Dougal, Ian P. Gent, Tom Kelsey, Steve Linton Presented by: Shant Karakashian.
Fixed Parameter Complexity Algorithms and Networks.
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
All that remains is to connect the edges in the variable-setters to the appropriate clause-checkers in the way that we require. This is done by the convey.
Boolean Satisfiability and SAT Solvers
Chapter 9 – Classification and Regression Trees
Theory of Computation, Feodor F. Dragan, Kent State University 1 NP-Completeness P: is the set of decision problems (or languages) that are solvable in.
CSE 024: Design & Analysis of Algorithms Chapter 9: NP Completeness Sedgewick Chp:40 David Luebke’s Course Notes / University of Virginia, Computer Science.
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
Techniques for Proving NP-Completeness Show that a special case of the problem you are interested in is NP- complete. For example: The problem of finding.
Fast and accurate energy minimization for static or time-varying Markov Random Fields (MRFs) Nikos Komodakis (Ecole Centrale Paris) Nikos Paragios (Ecole.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Decision Trees Binary output – easily extendible to multiple output classes. Takes a set of attributes for a given situation or object and outputs a yes/no.
The Dominating Set and its Parametric Dual  the Dominated Set  Lan Lin prepared for theory group meeting on June 11, 2003.
Branch-and-Cut Valid inequality: an inequality satisfied by all feasible solutions Cut: a valid inequality that is not part of the current formulation.
CSE 589 Part V One of the symptoms of an approaching nervous breakdown is the belief that one’s work is terribly important. Bertrand Russell.
Foundations of Constraint Processing, Fall 2004 October 3, 2004Interchangeability in CSPs1 Foundations of Constraint Processing CSCE421/821, Fall 2004:
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
Faster Symmetry Discovery using Sparsity of Symmetries Paul T. Darga Karem A. Sakallah Igor L. Markov The University of Michigan.
Evolutionary Computing Chapter 13. / 24 Chapter 13: Constraint Handling Motivation and the trouble What is a constrained problem? Evolutionary constraint.
Common Intersection of Half-Planes in R 2 2 PROBLEM (Common Intersection of half- planes in R 2 ) Given n half-planes H 1, H 2,..., H n in R 2 compute.
2009/6/30 CAV Quantifier Elimination via Functional Composition Jie-Hong Roland Jiang Dept. of Electrical Eng. / Grad. Inst. of Electronics Eng.
1 Chapter 5 Branch-and-bound Framework and Its Applications.
Discrete Optimization MA2827 Fondements de l’optimisation discrète Material from P. Van Hentenryck’s course.
Lecture 7: Constrained Conditional Models
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Inference and search for the propositional satisfiability problem
Exploiting Structure in Symmetry Detection for CNF
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Logic Synthesis CNF Satisfiability.
NP-Completeness Yin Tat Lee
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Graphs and Algorithms (2MMD30)
NP-Completeness Yin Tat Lee
Generic SBDD using Computational Group Theory
Presentation transcript:

1 Algebraic Structure in Almost-Symmetries Igor Markov, Univ. of Michigan Presented by Ian Gent, St. Andrews

2 Outline Motivation & desiderata Two types of almost-symmetries in graphs: vertex-based and edge-based Structural Analysis Capturing Almost-symmetries Detecting Almost-symmetries Conclusions

3 Motivation 1: Want More Symmetries We know what symmetries in CP are We know how to find them (or at least expect them to be given) We know how to use symmetries We know they help We want more of them Idea: relax the notion of symmetry –“Slightly defective” symmetries

4 Sym( )=? Sym( )=S 2 Motivation 2: Need More Than Symmetries Existing symmetry-based techniques do not handle freedom of choice –They map variables to variables, values to values –Assume conjunctive constraints (AND vs OR) Obstacle to extensions: loss of transitivity

5 Desiderata for Almost-symmetries Conceptually similar to symmetries As easy to capture As easy to find (or get someone write them down for you!) As easy to use in symmetry-breaking As helpful (computationally) More numerous than symmetries Are we asking for too much?

6 Obvious Step 1: Work With Graphs To reason about symmetries represent CP instances by graphs –Vertices: variables/literals and constraints –Edges: instances of variables in constraints CP symmetries  graph automorphisms –Vertex permutations can capture both variable and value symmetries (e.g., x  x’ ) –Vertex colors prohibit mapping variables to constraints (also restrict search for symmetries) Study almost-automorphisms of graphs

7 Almost-automorphisms of Graphs Automorphism: a vertex permutation that preserves edges and vertex colors Try to “almost preserve” edges & colors –Some edges can map to non-edges –Some vertices can map to wrong colors –How do we express/control “some” ? Use a “chameleon color” for vertices –Just like an * in regular expressions –Just like don’t-cares in Boolean functions & circuits Similarly for edges (disjunctive constraints?)

8 Chameleon Vertices and Edges Chameleon vertices must assume specific colors so as to enable symmetries Chameleon edges must decide whether they exist or not, so as to enable symms

9 Equivalent Formulations? Both types of almost-symmetries must carry the same algebraic structure Conversion overhead: O(V 3 +E 3 ) –Seems impractical Further analysis suggests developing two independent (but compatible) techniques

10 Obvious step 2: Look for Structure To deal with graph automorphisms one uses their group structure –Provably exponential compression: N automorphisms always captured by  log 2 N generators –Efficient set-like operations ( , ,etc) –Stabilizer-chain algorithms –Very fast graph-automorphism algorithms Almost-automorphisms do not form –Groups, semi-groups, monoids, grouppoids

11 Structure in Almost-automorphisms Clear all colors –The resulting Aut( ) contains all almost-autos Color chameleon vertices in all possible ways –For each coloring, can find Aut( ) –Almost-autos form a union of subgroups  G i Can often find more compact  G i expressions –Many G i are trivial or equal –Worst case is exponential (see Appendix A) Color chameleons in a new color –The resulting Aut( ) is contained in every G i Aut( )=S 2  S 2

12 Capturing Almost-Automorphisms To capture  G i –Capture each group by a list of generators An algorithm for finding almost-symmetries should produce –Lists of lists of group generators (all lists are unordered) Simplified problem formulations –Find a largest subgroup G i (can always express it compactly) –Detect cases when almost-autos form a group

13 Finding Almost-automorphisms Naïve algorithm –Iterate over all colorings of chameleon vertices –Call SAUCY for every coloring to find G i –Discard redundant G i May need to use GAP to compare groups –The same subgroup may be captured with different generating sets (can’t just match lists) –Not clear if GAP can represent G  H efficiently (not necessarily a group) Observation –If the colorless graph has no symmetries, no need to branch on colors

14 Finding Almost-automorphisms (2) Research challenge: –Extend McKay’s algorithm (NAUTY) or its derivatives (SAUCY) to solve the graph almost-automorphism problem –Preserve its performance in the traditional case (no chameleons) Seems doable! –See the vertex-based case in proceedings –See the edge-based case in the extended version symCon05-almost.pdf

15 Basic Ideas For GAA Algorithms McKay’s GA algorithm interleaves bran- ching with pruning (partition refinement) –Vertices with different degrees can’t be mapped to each other –Ditto for different colors –At some point, we just have to try mapping similar vertices to each other –After such branching, we may be able to prune some more (partition refinement) Need new steps for color instantiation

16 Designing GAA Algorithms Recall: the Naïve algorithm tries all color instantiations first, then calls McKay Key idea 1: delay branching on colors –E.g., what if vertices have different degrees? –When branching, minimize further branching factor, apply partition refinement immediately Key idea 2: propagate colors early –If a class of potentially equivalent vertices only contains chameleons and pink vertices, make all chameleons pink Key idea 3: avoid branching, via domination –If a class of potentially equivalent vertices contains only chameleons, color all of them blue

17 Example Vertex degrees: 3 & 7 –Color vertex 5 blue Vertices 4 and 6 are in the same class, with blue and pink vertices –Branch on colors (4 branches) –Three branches yield symmetries –One of them subsumes the rest Almost-symmetries form a group in this case The symmetry-restoration problem

18 The same naïve algorithm works (branch on edges first), but is hopeless –We must delay branching Major problems with chameleon edges –Vertices have ranges of possible degrees and cannot always be split into classes –Partition refinement does not work anymore Solved in the extended version of the paper! –Vertex-range graph, two-step partition refinement No implementation currently available –Now looking for postdocs What about edge-based almost-syms?

19 Conclusions Almost-symmetries can be understood and studied through graph modelling –Vertex-based and edge-based cases Algebraic structure: union of subgroups  G i –Represented by lists of lists of generators Computational challenge: finding compact representations for  G i when possible –Seems doable in both vertex- and edge-based cases Also in the paper: example of static almost-symmetry-breaking

20 Questions? Igor says: if you manage to confuse Ian with your questions, try me at