Foundations of Constraint Processing

Slides:



Advertisements
Similar presentations
Informed search algorithms
Advertisements

Local Search Algorithms
LOCAL SEARCH AND CONTINUOUS SEARCH. Local search algorithms  In many optimization problems, the path to the goal is irrelevant ; the goal state itself.
Multi-agent Oriented Constraint Satisfaction Authors: Jiming Liu, Han Jing and Y.Y. Tang Speaker: Lin Xu CSCE 976, May 1st 2002.
Ryan Kinworthy 2/26/20031 Chapter 7- Local Search part 1 Ryan Kinworthy CSCE Advanced Constraint Processing.
Optimization via Search CPSC 315 – Programming Studio Spring 2009 Project 2, Lecture 4 Adapted from slides of Yoonsuck Choe.
Introduction to Artificial Intelligence Local Search (updated 4/30/2006) Henry Kautz.
Foundations of Constraint Processing, Fall 2005 November 2, 2005Local Search for CSPs1 Foundations of Constraint Processing CSCE421/821, Fall 2005:
Stochastic greedy local search Chapter 7 ICS-275 Spring 2007.
Informed Search Chapter 4 Adapted from materials by Tim Finin, Marie desJardins, and Charles R. Dyer CS 63.
Ryan Kinworthy 2/26/20031 Chapter 7- Local Search part 2 Ryan Kinworthy CSCE Advanced Constraint Processing.
Optimization via Search CPSC 315 – Programming Studio Spring 2008 Project 2, Lecture 4 Adapted from slides of Yoonsuck Choe.
Local Search and Optimization
Local Search Algorithms This lecture topic Chapter Next lecture topic Chapter 5 (Please read lecture topic material before and after each lecture.
Dr.Abeer Mahmoud ARTIFICIAL INTELLIGENCE (CS 461D) Dr. Abeer Mahmoud Computer science Department Princess Nora University Faculty of Computer & Information.
Computer Science CPSC 322 Lecture 16 CSP: wrap-up Planning: Intro (Ch 8.1) Slide 1.
Iterative Improvement Algorithm 2012/03/20. Outline Local Search Algorithms Hill-Climbing Search Simulated Annealing Search Local Beam Search Genetic.
Local Search Pat Riddle 2012 Semester 2 Patricia J Riddle Adapted from slides by Stuart Russell,
CHAPTER 4, Part II Oliver Schulte Summer 2011 Local Search.
Local Search and Optimization Presented by Collin Kanaley.
Stochastic greedy local search Chapter 7 ICS-275 Spring 2009.
Announcement "A note taker is being recruited for this class. No extra time outside of class is required. If you take clear, well-organized notes, this.
Local Search. Systematic versus local search u Systematic search  Breadth-first, depth-first, IDDFS, A*, IDA*, etc  Keep one or more paths in memory.
Chapter 4 (Section 4.3, …) 2 nd Edition or Chapter 4 (3 rd Edition) Local Search and Optimization.
Local Search Algorithms and Optimization Problems
Foundations of Constraint Processing Local Search for CSPs1 Foundations of Constraint Processing CSCE421/821, Spring
Local Search Algorithms CMPT 463. When: Tuesday, April 5 3:30PM Where: RLC 105 Team based: one, two or three people per team Languages: Python, C++ and.
Constraints Satisfaction Edmondo Trentin, DIISM. Constraint Satisfaction Problems: Local Search In many optimization problems, the path to the goal is.
Local search algorithms In many optimization problems, the path to the goal is irrelevant; the goal state itself is the solution State space = set of "complete"
Problem Solving with Constraints Local Search for CSPs1 Foundations of Constraint Processing CSCE496/896, Fall2011
Informed Search Chapter 4 (b)
Optimization Problems
Optimization via Search
Informed Search Chapter 4 (b)
CSCI 4310 Lecture 10: Local Search Algorithms
Informed Search Chapter 4 (b)
Heuristic Optimization Methods
Local Search Algorithms
Local Search Strategies: From N-Queens to Walksat
Computer Science cpsc322, Lecture 14
Artificial Intelligence (CS 370D)
Subject Name: Operation Research Subject Code: 10CS661 Prepared By:Mrs
Prof. Marie desJardins September 20, 2010
Rationale & Strategies Foundations of Constraint Processing
Extensions to BT Search Foundations of Constraint Processing
Local Search and Optimization
Extensions to BT Search Foundations of Constraint Processing
Optimization Problems
Informed Search Chapter 4 (b)
Evaluation of (Deterministic) BT Search Algorithms
School of Computer Science & Engineering
Rationale & Strategies Foundations of Constraint Processing
Extensions to BT Search Foundations of Constraint Processing
Extensions to BT Search Foundations of Constraint Processing
More on Search: A* and Optimization
Stochastic Local Search Variants Computer Science cpsc322, Lecture 16
Evaluation of (Deterministic) BT Search Algorithms
Heuristics Local Search
Boltzmann Machine (BM) (§6.4)
Chapter 5. Advanced Search
Artificial Intelligence
Rationale & Strategies Foundations of Constraint Processing
Foundations of Constraint Processing
More on HW 2 (due Jan 26) Again, it must be in Python 2.7.
More on HW 2 (due Jan 26) Again, it must be in Python 2.7.
Evaluation of (Deterministic) BT Search Algorithms
Local Search Algorithms
Extensions to BT Search Foundations of Constraint Processing
Beyond Classical Search
Local Search Algorithms
Presentation transcript:

Foundations of Constraint Processing Local Search Foundations of Constraint Processing CSCE421/821, Fall2014 www.cse.unl.edu/~choueiry/F14-421-821/ Berthe Y. Choueiry (Shu-we-ri) Avery Hall, Room 360 Tel: +1(402)472-5444 Local Search for CSPs

Lecture sources Required reading Recommended Dechter: Chapter 7, Section 7.1 and 7.2 Recommended R. Bartak’s online guide: http://kti.ms.mff.cuni.cz/~bartak/constraints/stochastic.html AIMA: Section 4.4 (1st edition) Section 4.3 (2nd edition) Paul Morris 93: The Breakout Method for Escaping From Local Minima AAAI 1993, pages 40—45 Local Search for CSPs

Solving CSPs CSPs are typically solved with a combination of Constraint propagation (inference) Search (conditioning) Backtrack search Local search We focus on local search Local Search for CSPs

Outline General principle Main types: greedy & stochastic When nothing works… Evaluation methods Local Search for CSPs

Backtrack search Properties Shortcomings Idea Systematic and exhaustive Deterministic or heuristic Sound and complete Shortcomings worst-case time complexity prohibitive often unable to solve large problems. Thus, theoretical soundness and completeness do not mean much in practice Idea Use approximations: sacrifice soundness and/or completeness Can quickly solve very large problems (that have many solutions) Local Search for CSPs

Local search: the picture States are laid up on a surface State quality/cost is its height State space forms a landscape Optimum state: maximizes solution quality minimizes solution cost Move around from state to state and try to reach the optimum state Exploration restricted to neighboring states, thus ‘local’ search (ref. Holger & Hoos) Local Search for CSPs

Components of a local search State is a complete assignment of values to variables, a possibly inconsistent solution Possible moves are modifications to the current state, typically by changing the value of a single variable. Thus, ‘local’ repair (ref. Dechter) Examples: SAT: Flipping the value of a Boolean variable (GSAT), CSPs: Min-conflict heuristic (variations) Evaluation (cost) function rates the quality of a state, typically in the number of violated constraints Local Search for CSPs

Generic Mechanism Cost function: number of broken constraints General principle Start with a full but arbitrary assignment of values to variables Reduce inconsistencies by local repairs (heuristic) Repeat until A solution is found (global minimum) The solution cannot be repaired (local minimum) … You run out of patience (max-tries) A.k.a. Iterative repair (decision problems) Iterative improvement (optimization problems) Local Search for CSPs

Outline General principle Main types: greedy & stochastic Greedy: hill climbing, local beam Stochastic: RandomWalk (stochastic noise), Tabu Search Simulated AnnealingGeneric algorithms, Breakout method (constraint weighting), ERA (multi-agent search) When nothing works… Evaluation methods Local Search for CSPs

Main types of local search Greedy: Use a heuristic to determine the best move Stochastic (improvement) Sometimes (randomly) disobey the heuristic Local Search for CSPs

Greedy local search At any given point, Example: make the best decision you can given the information you have and proceed. Typically, move to the state that minimizes the number of broken constraints Example: hill climbing (a.k.a. gradient descent/ascent) Local beam search: keep track of k states Local Search for CSPs

Greedy local search Problems: local optima (stuck), plateau (errant), ridge (oscillates from side to side, slow progress) Local Search for CSPs

Stochastic Local Search Sometimes (randomly) move to a state that is not the best: use randomization to escape local optimum Examples: RandomWalk (stochastic noise) Tabu Search Simulated Annealing Generic algorithms Breakout method (constraint weighting) ERA (multi-agent search) Local Search for CSPs

Simulated Annealing: idea Analogy to physics: Process of gradually cooling a liquid until it freezes If temperature is lowered sufficiently slowly, material will attain lowest-energy configuration (perfect order) Basic idea: When stuck in a local optimum, allow few steps towards less good neighbors to escape the local maximum Local Search for CSPs

Simulated Annealing: Mechanism Start from any state at random, start countdown and loop until time is over: Pick up a neighbor at random Set d = quality of neighbor – quality of current state If d>0 (there is improvement) Then move to neighbor & restart countdown Else, move to neighbor with a transition probability p<1 Transition probability proportional to ed/t d is negative, and t is time countdown As times passes, less and less likely to make the move towards unattractive neighbors Under some very restrictive assumptions, guaranteed to find optimum Local Search for CSPs

Properties Non-systematic and non-exhaustive Liable to getting stuck in local optima (optima/minima) Non-deterministic: outcome may depend on where you start Typically, heavy tailed: probability of improving solution as time goes by quickly becomes small but does not die out Local Search for CSPs

Genetic Algorithms Basic step: Combinations two complete assignments (parents) to generate offsprings Mechanism Starts from an initial population Encodes assignments in a compact manner (a string) Combines partial solutions to generate new solutions (next generation) Local Search for CSPs

Genetic Algorithm (2) Fitness Function ranks a state’s quality, assigns probability for selection Selection randomly chooses pairs for combination depending on fitness Crossover point randomly chosen for two individuals, offsprings are generated Mutation randomly changes a state Local Search for CSPs

Outline General principle Main types: greedy & stochastic Greedy: hill climbing, local beam Stochastic: RandomWalk (stochastic noise), Tabu Search Simulated AnnealingGeneric algorithms, Breakout method (constraint weighting), ERA (multi-agent search) When nothing works… Evaluation methods Local Search for CSPs

Breakout strategies [Bresina] Increase the weights of the broken constraints so that they are less likely to be broken in subsequent iterations Quite effective for recovering from local optima Local Search for CSPs

ERA: Environment, Rules, Agents [Liu et al, AIJ 02] Environment is an n × a board Each variable is an agent Each position on board is a value of a domain Agent moves in a row on board Each position records the number of violations caused by the fact that agents are occupying other positions Agents try to occupy positions where no constraints are broken (zero position) Agents move according to reactive rules Local Search for CSPs

Reactive rules [Liu et al, AIJ 02] Least-move: choose a position with the min. violation value Better-move: choose a position with a smaller violation value Random-move: randomly choose a position Combinations of these basic rules form different behaviors. Local Search for CSPs

Big picture Agents do not communicate but share a common context Agents keep kicking each other out of their comfortable positions until every one is happy Charecterization: [Hui Zou, 2003] Amazingly effective in solving very tight but solvable instances Unstable in over-constrained cases Agents keep kicking each other out (livelock) Livelocks may be exploited to identify bottlenecks Local Search for CSPs

ERA performance Observation: Solvable vs. unsolvable instances: stable on solvable instances oscillates on unsolvable cases ERA performance on solvable instances ERA performance on unsolvable instances Local Search for CSPs

Agent’s movement Motion of agents Observations: variable stable constant Observations: Solvable Unsolvable Variable None Most Stable A few Constant Local Search for CSPs

Outline General principle Main types: greedy & stochastic When nothing works… Evaluation methods Local Search for CSPs

Random restart Principle Repeat random restart When no progress is made, restart from a new randomly selected state Save best results found so far (anytime algorithm) Repeat random restart For a fixed number of iterations Until best results have not been improved on for a certain number of iterations. E.g., Geometric law Local Search for CSPs

Outline General principle Main types: greedy & stochastic When nothing works… Evaluation methods Local Search for CSPs

Evaluation: empirical Test on a given problem instance an ensemble of problem instances (representative of a population) Experiment Run the algorithm thousands of times Measure some metric as a random variable (e.g., the time needed to find a solution) November 2, 2005 Local Search for CSPs

Comparing techniques Provide The probability distribution function (approximated by the number of runs that took a given time to find a solution) The cumulative distribution function (approximated by the number of runs that found a solution within a given time) Local Search for CSPs

Comparing techniques Compare algorithms’ performance using statistical tests (for confidence levels) t-test: assumes normal distribution of the measured metrics Nonparametric tests do not. Some match pairs, some do not. Consult/work with a statistician Local Search for CSPs