Constraint handling Chapter 12.

Slides:



Advertisements
Similar presentations
Constraint Optimization We are interested in the general non-linear programming problem like the following Find x which optimizes f(x) subject to gi(x)
Advertisements

Adopt Algorithm for Distributed Constraint Optimization
Interactive Configuration
1 Constraint Satisfaction Problems A Quick Overview (based on AIMA book slides)
1 CMSC 471 Fall 2002 Class #6 – Wednesday, September 18.
1 Finite Constraint Domains. 2 u Constraint satisfaction problems (CSP) u A backtracking solver u Node and arc consistency u Bounds consistency u Generalized.
1 Constraint operations: Simplification, Optimization and Implication.
EAs for Combinatorial Optimization Problems BLG 602E.
Handling Constraints 報告者 : 王敬育. Many researchers investigated Gas based on floating point representation but the optimization problems they considered.
1 Constraint Programming: An Introduction Adapted by Cristian OLIVA from Peter Stuckey (1998) Ho Chi Minh City.
IE 607 Constrained Design: Using Constraints to Advantage in Adaptive Optimization in Manufacturing.
COSC 4426 Topics in Computer Science II Discrete Optimization Good results with problems that are too big for people or computers to solve completely
Chapter 7 Handling Constraints
Constraint Satisfaction Problems (CSPs) CPSC 322 – CSP 1 Poole & Mackworth textbook: Sections § Lecturer: Alan Mackworth September 28, 2012.
NP Complexity By Mussie Araya. What is NP Complexity? Formal Definition: NP is the set of decision problems solvable in polynomial time by a non- deterministic.
Chapter 5 Section 1 – 3 1.  Constraint Satisfaction Problems (CSP)  Backtracking search for CSPs  Local search for CSPs 2.
Constraint Handling with EAs CONTENTS 1. Motivation and the trouble 2. What is a constrained problem? 3. Evolutionary constraint handling 4. A selection.
Clase 3: Basic Concepts of Search. Problems: SAT, TSP. Tarea 1 Computación Evolutiva Gabriela Ochoa
Solving BCSP using GA and PBIL Constraint Satisfaction Problem Group Sana Benhamida Andrea Roli Belgasem Ali Problem leader J.V.Hemert Jorge Tavares Group.
A survey of Constraint Handling Techniques in Evolutionary Computation Methods Author: Zbigneiw Michalewicz Presenter: Masoud Mazloom 27 th Oct
Evolutionary Computing Chapter 13. / 24 Chapter 13: Constraint Handling Motivation and the trouble What is a constrained problem? Evolutionary constraint.
Constraints in Evolutionary Algorithms. Constraints: the big questions, page 233  how to evaluate and compare feasible and infeasible solutions  avoid,
ZEIT4700 – S1, 2016 Mathematical Modeling and Optimization School of Engineering and Information Technology.
Evolutionary Computation: Advanced Algorithms and Operators
The Theory of NP-Completeness
The NP class. NP-completeness
P & NP.
Chapter 10 NP-Complete Problems.
Lecture 7: Constrained Conditional Models
Constraint Programming
Chapter 7. Classification and Prediction
MAE 552 Heuristic Optimization
Hard Problems Some problems are hard to solve.
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Digital Optimization Martynas Vaidelys.
C.-S. Shieh, EC, KUAS, Taiwan
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Constraint Satisfaction
Constraint Satisfaction
Chapter 6: Genetic Algorithms
Computer Science cpsc322, Lecture 14
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Study Guide for ES205 Yu-Chi Ho Jonathan T. Lee Nov. 7, 2000
Chapter 1: Introduction
ICS 353: Design and Analysis of Algorithms
Richard Anderson Lecture 28 NP-Completeness
Richard Anderson Lecture 29 NP-Completeness
Multi-Objective Optimization
Artificial Intelligence
Richard Anderson Lecture 28 NP Completeness
Chapter 11 Limitations of Algorithm Power
Parameter control Chapter 8.
Richard Anderson Lecture 26 NP-Completeness
NP-Completeness Yin Tat Lee
Constraint satisfaction problems
Constraint Satisfaction Problems. A Quick Overview
P, NP and NP-Complete Problems
The Theory of NP-Completeness
Chap 7: Penalty functions (1/2)
P, NP and NP-Complete Problems
Dichotomies in CSP Karl Lieberherr inspired by the paper:
CS 8520: Artificial Intelligence
Approximation Algorithms
Parameter control Chapter 8.
Lecture 24 Classical NP-hard Problems
Constraint Satisfaction Problems
Constraint satisfaction problems
Parameter control Chapter 8.
Presentation transcript:

Constraint handling Chapter 12

Overview Motivation and the trouble What is a constrained problem? Evolutionary constraint handling A selection of related work Conclusions, observations, and suggestions

Motivation Why bother about constraints? Practical relevance: a great deal of practical problems are constrained. Theoretical challenge: a great deal of untractable problems (NP-hard etc.) are constrained. Why try with evolutionary algorithms? EAs show a good ratio of (implementation) effort/performance. EAs are acknowledged as good solvers for tough problems.

What is a constrained problem? Consider the Travelling Salesman Problem for n cities, C = {city1, … , cityn} If we define the search space as S = Cn, then we need a constraint requiring uniqueness of each city in an element of S S = {permutations of C}, then we need no additional constraint. The notion ‘constrained problem’ depends on what we take as search space

What is constrained search? or What is free search? Even in the space S = {permutations of C} we cannot perform free search Free search: standard mutation and crossover preserve membership of S, i.e., mut(x)  S and cross(x,y)  S The notion ‘free search’ depends on what we take as standard mutation and crossover. mut is standard mutation if for all x1, … , xn, if mut(x1, … , xn) =  x’1, … , x’n, then x’i  domain(i) cross is standard crossover if for all x1, … , xn, y1, … , yn, if cross(x1, … , xn, y1, … , yn) = z1, … , zn, then zi  {xi, yi} discrete case zi  [xi, yi] continuous case

Free search space Free search space: S = D1  …  Dn one assumption on Di: if it is continuous, it is convex the restriction si  Di is not a constraint, it is the definition of the domain of the i-th variable membership of S is coordinate-wise, hence a free search space allows free search A problem can be defined through An objective function (to be optimized) Constraints (to be satisfied)

Types of problems Objective Function Constraints Yes No Constrained optimization problem Constraint satisfaction problem Free optimization problem No Problem

Free Optimization Problems Free Optimization Problem: S, f, • S is a free search space f is a (real valued) objective function on S Solution of an FOP: s  S such that f (s) is optimal in S FOPs are ‘easy’, in the sense that: it's ‘only’ optimizing, no constraints and EAs have a basic instinct for optimization

Example of an FOP Ackley function

Constraint Satisfaction Problems S is a free search space Φ is a formula (Boolean function on S) Φ is the feasibility condition SΦ = {s  S | Φ(s) = true} is the feasible search space Solution of a CSP: s  S such that Φ(s) = true (s is feasible)

Constraint Satisfaction Problems (cont’d) Φ is typically given by a set (conjunction) of constraints ci = ci(xj1, … , xjni), where ni is the arity of ci ci  Dj1  …  Djni is also a common notation FACTS: the general CSP is NP-complete every CSP is equivalent with a binary CSP, where all ni  2 Constraint density and constraint tightness are parameters that determine how hard an instance is

Example of a CSP Graph 3-coloring problem: G = (N, E), E  N  N , |N| = n S = Dn, D = {1, 2, 3} Φ(s) = ΛeE ce(s), where ce(s) = true iff e = (k, l) and sk  sl

Constrained optimization problems Constrained Optimization Problem: S, f, Φ S is a free search space f is a (real valued) objective function on S Φ is a formula (Boolean function on S) Solution of a COP: s  SΦ such that f(s) is optimal in SΦ

Example of a COP Travelling salesman problem S = Cn, C = {city1, … , cityn} Φ(s) = true  i, j  {1, … , n} i  j  si  sj f(s) =

Solving CSPs by EAs (1) EAs need an f to optimize S, •, Φ must be transformed first to a FOP: S, •, Φ  S, f, • or COP: S, •, Φ  S, f, Ψ  The transformation must be (semi-)equivalent, i.e. at least: 1. f (s) is optimal in S  Φ(s) 2. ψ (s) and f (s) is optimal in S  Φ(s)

Constraint handling Constraint handling has two meanings: 1. how to transform the constraints in Φ into f, respectively f, ψ before applying an EA 2. how to enforce the constraints in S, f, Φ while running an EA Case 1: constraint handling only in the 1st sense (pure penalty approach) Case 2: constraint handling in both senses In Case 2 the question ‘How to solve CSPs by EAs’ transforms to ‘How to solve COPs by EAs’

Indirect constraint handling (1) Note: always needed for all constraints in Case 1 for some constraints in Case 2 Some general options a. penalty for violated constraints b. penalty for wrongly instantiated variables c. estimating distance/cost to feasible solution (subsumes a and b)

Indirect constraint handling (2) Notation: ci constraints, i = {1, … , m} vj variables, j = {1, … , n} Cj is the set of constraints involving variable vj Sc = {z  Dj1  …  Djk | c(z) = true} is the projection of c, if vj1, … , vjk are the var's of c d(s, Sc) := min{d(s, z) | z  2 Sc} is the distance of s  S from Sc (s is projected too)

Indirect constraint handling (3) Formally: Observe that for each option:

Indirect constraint handling: Graph coloring example

Indirect constraint handling: pro’s & con’s PRO’s of indirect constraint handling: conceptually simple, transparent problem independent (at least,  problem independent realizations) reduces problem to ‘simple’ optimization allows user to tune on his/her preferences by weights allows EA to tune fitness function by modifying weights during the search CON’s of indirect constraint handling: loss of info by packing everything in a single number said not to work well for sparse problems

Direct constraint handling (1) Notes: only needed in Case 2, for some constraints feasible here means Ψ in S, f, Ψ, not Φ in S, •, Φ Options: eliminating infeasible candidates (very inefficient, hardly practicable) repairing infeasible candidates preserving feasibility by special operators (requires feasible initial population, (NP-hard for TSP with time windows) decoding, i.e. transforming the search space (allows usual representation and operators)

Direct constraint handling (2) PRO's of direct constraint handling: it works well (except eliminating) CON's of direct constraint handling: problem specific no guidelines