Penalties for Distributed Local Search Muhammed B. Basharu.

Slides:



Advertisements
Similar presentations
Serializability in Multidatabases Ramon Lawrence Dept. of Computer Science
Advertisements

Optimistic Methods for Concurrency Control By : H.T. Kung & John T. Robinson Presenters: Munawer Saeed.
Local Search Jim Little UBC CS 322 – CSP October 3, 2014 Textbook §4.8
CPSC 322, Lecture 14Slide 1 Local Search Computer Science cpsc322, Lecture 14 (Textbook Chpt 4.8) Oct, 5, 2012.
Distributed Constraint Satisfaction Problems M OHSEN A FSHARCHI.
Hadi Goudarzi and Massoud Pedram
Adopt Algorithm for Distributed Constraint Optimization
CompAPO: A complete version of the APO Algorithm Tal Grinshpoun and Amnon Meisels Department of Computer Science Ben-Gurion University of the Negev.
1 Constraint Satisfaction Problems A Quick Overview (based on AIMA book slides)
Iterative Deepening A* & Constraint Satisfaction Problems Lecture Module 6.
Ai in game programming it university of copenhagen Reinforcement Learning [Outro] Marco Loog.
1 Restart search techniques for Employee Timetabling Problems Amnon Meisels And Eliezer Kaplansky Ben-Gurion University.
Best-First Search: Agendas
Planning under Uncertainty
Local Search for Distributed SAT JIN Xiaolong (Based on [1] )
CPSC 322, Lecture 15Slide 1 Stochastic Local Search Computer Science cpsc322, Lecture 15 (Textbook Chpt 4.8) February, 6, 2009.
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.
Constraint Satisfaction Problems
Optimal Tuning of Continual Online Exploration in Reinforcement Learning Youssef Achbany, Francois Fouss, Luh Yen, Alain Pirotte & Marco Saerens Information.
MAE 552 – Heuristic Optimization
Introduction to Boosting Aristotelis Tsirigos SCLT seminar - NYU Computer Science.
Stochastic greedy local search Chapter 7 ICS-275 Spring 2007.
Distributed Scheduling. What is Distributed Scheduling? Scheduling: –A resource allocation problem –Often very complex set of constraints –Tied directly.
Ryan Kinworthy 2/26/20031 Chapter 7- Local Search part 2 Ryan Kinworthy CSCE Advanced Constraint Processing.
Metaheuristics The idea: search the solution space directly. No math models, only a set of algorithmic steps, iterative method. Find a feasible solution.
Called as the Interval Scheduling Problem. A simpler version of a class of scheduling problems. – Can add weights. – Can add multiple resources – Can ask.
Distributed Constraint Optimization Michal Jakob Agent Technology Center, Dept. of Computer Science and Engineering, FEE, Czech Technical University A4M33MAS.
Vilalta&Eick: Informed Search Informed Search and Exploration Search Strategies Heuristic Functions Local Search Algorithms Vilalta&Eick: Informed Search.
CP Summer School Modelling for Constraint Programming Barbara Smith 1.Definitions, Viewpoints, Constraints 2.Implied Constraints, Optimization,
Local Search CPSC 322 – CSP 5 Textbook §4.8 February 7, 2011.
Introduction to search Chapter 3. Why study search? §Search is a basis for all AI l search proposed as the basis of intelligence l all learning algorithms,
CS584 - Software Multiagent Systems Lecture 12 Distributed constraint optimization II: Incomplete algorithms and recent theoretical results.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
CP Summer School Modelling for Constraint Programming Barbara Smith 2. Implied Constraints, Optimization, Dominance Rules.
Hande ÇAKIN IES 503 TERM PROJECT CONSTRAINT SATISFACTION PROBLEMS.
Distributed Constraint Satisfaction: Foundation of Cooperation in Multi-agent Systems Makoto Yokoo Kyushu University lang.is.kyushu-u.ac.jp/~yokoo/
Course: Logic Programming and Constraints
CSCI 5582 Fall 2006 CSCI 5582 Artificial Intelligence Fall 2006 Jim Martin.
Resource Mapping and Scheduling for Heterogeneous Network Processor Systems Liang Yang, Tushar Gohad, Pavel Ghosh, Devesh Sinha, Arunabha Sen and Andrea.
FORS 8450 Advanced Forest Planning Lecture 11 Tabu Search.
G5BAIM Artificial Intelligence Methods
CHAPTER 4, Part II Oliver Schulte Summer 2011 Local Search.
Distributed Constraint Satisfaction Michal Jakob Agent Technology Center, Dept. of Computer Science and Engineering, FEE, Czech Technical University A4M33MAS.
Optimizing Pheromone Modification for Dynamic Ant Algorithms Ryan Ward TJHSST Computer Systems Lab 2006/2007 Testing To test the relative effectiveness.
Local Search and Optimization Presented by Collin Kanaley.
Principles of Intelligent Systems Constraint Satisfaction + Local Search Written by Dr John Thornton School of IT, Griffith University Gold Coast.
AI Lecture 17 Planning Noémie Elhadad (substituting for Prof. McKeown)
Stochastic greedy local search Chapter 7 ICS-275 Spring 2009.
FORS 8450 Advanced Forest Planning Lecture 6 Threshold Accepting.
Problem Reduction So far we have considered search strategies for OR graph. In OR graph, several arcs indicate a variety of ways in which the original.
Maximum Density Still Life Symmetries and Lazy Clause Generation Geoffrey Chu, Maria Garcia de la Banda, Chris Mears, Peter J. Stuckey.
Performance of Distributed Constraint Optimization Algorithms A.Gershman, T. Grinshpon, A. Meisels and R. Zivan Dept. of Computer Science Ben-Gurion University.
Artificial Intelligence in Game Design Lecture 20: Hill Climbing and N-Grams.
1 Distributed Vertex Coloring. 2 Vertex Coloring: each vertex is assigned a color.
Distributed cooperation and coordination using the Max-Sum algorithm
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Title: Suggestion Strategies for Constraint- Based Matchmaker Agents
Computer Science cpsc322, Lecture 14
Comparing Genetic Algorithm and Guided Local Search Methods
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Computer Science cpsc322, Lecture 14
Dynamic Ordering for Asynchronous Backtracking on DisCSPs
Heuristic Ordering for Asynchronous Backtracking
Hierarchical Search on DisCSPs
Constraint satisfaction problems
Hierarchical Search on DisCSPs
Constraint satisfaction problems
Multidisciplinary Optimization
Presentation transcript:

Penalties for Distributed Local Search Muhammed B. Basharu

outline Distributed Constraint Satisfaction Problems Landscape modification in local search. Algorithms –DisPeL –Stoch-DisPeL –Multi-DisPeL Summary

The Distributed Constraint Satisfaction Problem Formal description of distributed problems that involve several participants within the CSP framework. Key feature is the physical distribution of information about a problem such that a problem can not be solved in a single location. Other key assumptions: –Each participant has partial knowledge of the problem. –Privacy – restrictions on how much information participants are willing to reveal. For example in meeting scheduling, each participant has a separate private calendar.

The Distributed Constraint Satisfaction Problem Formally, a distributed constraint satisfaction problem is defined as: DisCSP = Where: –A is a set of autonomous agents, representing participants in the problem. –X is a set of decision variables. –D is the set of domains for each variable. –C is the constraints between variables. Each variable in a DisCSP is owned/represented by exactly one agent, but each agent may own multiple variables.

Solving DisCSPs DisCSPs are solved by collaborative search. Agents exchange possible assignments for the variables they represent until they find values that satisfy all constraints. Most popular algorithms are distributed backtracking with no-good learning e.g. Asynchronous Backtracking. Local search has not received much attention; Distributed Breakout and Distributed Stochastic search.

Landscape modification in local search Local search has the advantage of quick convergence, but the weakness of attraction to local minima. Schemes that try to deal with local minima by modifying cost landscapes with weights on constraints have attracted a lot of attention. Weights on violated constraints are increased whenever the search is stuck; which has the effect of modifying the cost landscape such that the search is naturally driven away from unprofitable regions. We argue that weights might not induce the necessary exploration, especially in problems where the landscapes are dominated by plateaus. (1)

Modifying landscapes with constraint weights X = {a, b} D a = [1..20] D b = [1..20] c 1 : a - b>= 9 c 2 : a + 3b<40 P2: violating c 2 P3: violating c 1 & c 2 P1: violating c 1 a bh

Modifying landscapes with constraint weights (2) Assuming the search starts off at (a=8 and b=4). a bh a bh

Modifying landscapes with penalties We propose a finer grained approach focusing on assignments associated with local optima. A separate penalty is attached to each value in each variable’s domain. When the search is stuck at a local minimum, sizes of the penalties on those values assigned to variables in violated constraints are increased. (2) where: a i is value assigned to ith variable V(a i ) is the number of constraints violated with a i p(a i ) is the penalty attached to a i

Modifying landscapes with penalties (2) a bh a bh

Penalties in Distributed Local Search Distributed Penalty Driven Search (DisPeL) DisPeL is a greedy iterative improvement algorithm for solving DisCSPs. To minimise communications costs, sequential improvements are accepted rather than just the best improvements in each iteration. A total ordering imposed on agents using their lexicographic IDs. In each iteration, agents take turns to improve the solution but unconnected agents at the same level can make changes simultaneously.

DisPeL (2) Quasi-local-minima (deadlocks) are resolved with a two phased strategy: –Local perturbations to induce exploration. –“Learn” about and avoid assignments associated with deadlocks if perturbation fails to resolve a deadlock. Penalties are used to implement both parts of the strategy. Each agent keeps track of a number of recent deadlocks it attempted to resolve.

DisPeL (3) Modified evaluation function for each variable/agent. In each iteration, agents select the values in their domains with the least sum of constraint violations and penalties. h(d i ) = V(d i ) + p(d i ) + t if temporary penalty is imposed 0 otherwise (3) where: d i is the ith value in the domain V(d i ) is the number of constraints violated by selecting d i p(d i ) is the fixed penalty on d i t is the temporary penalty (t = 3)

Phase 1: perturbing the search Aim: to induce exploration by forcing agents to try values other than their current assignments. Earliest deadlocked agent imposes the temporary on its value and asks its “lower” neighbours violating constraints with it to do the same. Each agent selects the best value in its domain with eqn (3) and discards the temporary penalty after it is used.

Phase 2: Learning with penalties Use penalties to remember “bad” assignments and also to induce exploration in the search. Earliest deadlocked agent increases incremental penalty on its current assignment and it asks all its “lower” neighbours to do the same. But, learning is short term since penalties are regularly discarded.

receive messages from neighbours update AgentView select value minimising equation (3) send value to neighbours no yes Impose temporary penalty on current value Ask deadlocked lower priority neighbours to do the same Add conflict state to no good store Increase incremental penalties on current value Ask all lower priority neighbours to do the same no yes deadlocked ? is conflict in no-good store? resolve conflict

Penalty resets Unlike constraint weights, penalties are “independent” of the underlying landscape and can dominate cost functions. As a result, penalties can cause distortions which can divert the search away from promising regions of the search space. Therefore, all penalties on a variables entire domain are reset to zero as follows: –When it has a consistent value. –When its cost function is distorted by penalties i.e. i. Current assignment has the best evaluation. Ii. There is another value in the domain with lower constraint violations.

Penalty resets (2) Reset strategy% solvedaverage cycles No resets1n/a Resetting only when consistent values are found Reset only when cost function is distorted DisPeL (i.e. combined resets) random DisCSPs (n=60,d=10,p1=0.1,p2=0.5).

Empirical evaluations Compared DisPeL with the Distributed Breakout Algorithm (DBA). DBA is earliest distributed local search algorithm, it deals with local minima by modifying cost landscapes with constraint weights. Performance of both algorithms were compared on DisCSPs where each agent owns just a single variable. Problems used include: –Distributed graph colouring –Random DisCSPs –Car Sequencing Problems On each instance, each algorithm had a single attempt with a maximum of 100n iterations before the attempt was deemed unsuccessful.

Results – distributed graph colouring 100 instances for each degree (n=100, k=3). Percentage of instances solved

Results – distributed graph colouring (2) 100 instances in each point (n=100, k=3). Median Search Costs (Iterations) on successful attempts on Distributed Graph Colouring Problems

Other results In problems with non-binary constraints, DisPeL solved considerably more problems. Similar difference in search costs between the algorithms. DisPeL was also tested under conditions of unreliable communications and found that even with a message loss rate of 40% it still solved a high percentage of problems.

Stoch-DisPeL: exploiting randomisation in DisPeL Deterministic use of penalties make DisPeL vulnerable to the effects bad random initialisations. Stoch-DisPeL: introduces randomisation when agents attempt deadlock resolution. Choose with probability p to use the temporary penalty or ( 1-p ) to use incremental penalty. Empirical results suggests that performance is optimal at p=0.3 Additional benefit of speeding up the algorithm, since agents no longer check if a deadlock had previously been encountered.

Dealing with bad initialisations Bad initialisation: problem unsolved with DisPeL after 10,000 iterations. Good initialisation: solved in 41 iterations with DisPeL.

Results

Results (2)

Dealing with multiple local variables

Dealing with multiple local variables (2) Extend Stoch-DisPeL for agents with multiple local variables – Multi- DisPeL. Agents still take turns to improve the solution. Each agent performs a steepest descent search on its local sub- problem. Penalties are implemented when internal algorithms are stuck and agents ask neighbours to implement penalties on their variables’ values too.

Multi-DisPeL: evaluations Compared its performance against similar versions of DBA and Asynchronous Weak Commitment (AWC). Evaluations with: –DisSAT (using solvable 3-SAT instances from SATLib) –Distributed Graph Colouring –Random DisCSPs. Variables in each problem were distributed evenly amongst agents. Evaluation also looked at the effect the number of variables per agent had on performance.

Results – DisSAT Percentage of Distributed SAT Problems Solved for Different Number of Literals per Agent Multi-DB run for a maximum of 500n iterations with periodic restarts. Multi-DisPeL run for a maximum of 100n iterations.

Results – DisSAT (2) Average Search Costs from Attempts on Distributed SAT Problems

Other results Strong performance against the other algorithms on distributed graph colouring and random binary DisCSPs. Compared to AWC for agents with multiple local variables, Multi- DisPeL had higher average costs but lower median costs in nearly all tests.

Summary Penalties attached to domain values used to modify cost landscapes to deal with local minima. Penalties more effective at inducing search exploration than constraint weights. But, as penalties are independent of the underlying landscape, they have to be discarded regularly. 3 new local search algorithms for solving DisCSPs were introduced based on the ideas above. The algorithms showed competitive performance against other distributed local search algorithms.