Efficient Data Movement on the Grid

Size: px
Start display at page:

Download "Efficient Data Movement on the Grid"

Transcription

1 Efficient Data Movement on the Grid Michal Zerola for the STAR collaboration Jérôme Lauret, Roman Barták and Michal Šumbera NPI, AS CR CFRJS - FJFI, February 13, 2009 Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

2 Outline of the problem Challenges How to transfer a set of files for a physicist to his site in a shortest time possible for fast analysis turn around? How to achieve controlled planning of data-movement between sites on a grid (not necessarily following Tier architecture)? Ultimately: How to couple SE and CE aspects for distributing data on the grid for further processing? We concentrate on the first (most practical and of immediate need) question. On the grid: files are often replicated - available at multiple sites links diverse in bandwidth or QoS File A origin? File B origin Destination We will present a Constraint Programming approach for solving this problem. Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

3 Scope of the architecture Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

4 Introduction to Constraint Programming A Constraint Satisfaction Problem (CSP) consists of: a set of variables X = {x 1,...,x n }, for each variable x i, a finite set D i of possible values (its domain), and a set of constraints restricting the values that the variables can simultaneously take. A solution to a CSP is an assignment of a value from its domain to every variable, in such a way that every constraint is satisfied. We may want to find: any solution all solutions an optimal solution (defined by some objective function) Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

5 Example - Sudoku logic-based number-placement puzzle the objective is to fill a 9 9 grid so that each column, each row, and each of the nine 3 3 boxes contains the digits from 1 to 9 only one time each How to model Sudoku as a CSP? variable with a domain equal to {1,..., 9} for each single cell constraint of inequality between all pairs of variables in each row, column, or 3 3 cell Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

6 From Toy problem to the real life Notation: E dest N D- set of demands IN(n) OUT(n) orig(d) Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

7 From Toy problem to the real life Notation: E dest N D- set of demands IN(n) OUT(n) orig(d) Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

8 From Toy problem to the real life Notation: E dest N D- set of demands IN(n) OUT(n) orig(d) Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

9 From Toy problem to the real life Notation: E dest N D- set of demands IN(n) OUT(n) orig(d) Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

10 From Toy problem to the real life Notation: E dest N D- set of demands IN(n) OUT(n) orig(d) Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

11 Solving process Composed of two iterative stages: Planning stage - generate a valid transfer path for each requested file from one of its origins to the destination node. link-based approach path-based approach Scheduling stage - allocate transfers to particular times, respecting link capacity constraints Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

12 Planning stage - link-based approach X de decision {0,1} variable for each demand d and link e of the network orig(d) d D : d D : X e OUT(n n orig(d)) e OUT(dest(d)) X de = 0, X de = 1, X e IN(n n orig(d)) e IN(dest(d)) X de = 1 X de = 0 n d D, n / orig(d) {dest(d)} : X X X X de 1, X de 1, X de = X e OUT(n) e IN(n) e OUT(n) e IN(n) X de Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

13 Planning stage - path-based approach X de variables are non-decisional P dp decision {0,1} variable for each demand d and path p of the network leading to dest d D : P dp = 1, P dp = 0 p n orig(d) OP(n) p/ n orig(d) OP(n) The assignment of X variables is provided automatically via constraint propagation by a constraint defined as: d D, e E : X de = p e p P dp, Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

14 Scheduling stage For each link e of the graph that will be used by at least one file demand, we introduce a unique unary resource R e T d1,e 1 R e1 T d1,e 1 T d1,e 3 T d2,e 3 R e2 T d2,e 2 T d2,e 2 R e3 T d1,e 3 T d2,e 3 Figure: Example of assigning tasks (file transfers over particular links) into unary resources (links). In this case the transfer paths of demands d 1 and d 2 share link e 3, and consequently resource R e3 as well. Implementation provided with Edge Finding, Not-First/Not-Last, and Detectable Precedences filtering rules based on Theta-Lambda tree structures Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

15 Complexity of the problem solving the second (scheduling) stage is strongly NP-hard we use the well-known three field classification α β γ for scheduling problems and demonstrate a possible polynomial-time reduction from J3 p ij = 1 C max, a 3-machine unit-time Job-shop scheduling problem (JSSP). The transformation of the JSSP instance is following: JSSP instance Data Transfer instance M 1 M 2 e 1 e 2 dest M 3 J =< A 3, A 1, A 2 > e 3 Path defined by job J Figure: The job J =< A 3, A 1, A 2 > defines a transfer path to the dest vertex using links e 3, e 1, e 2, with order given by precedences of actions. Connections between links (and dest vertex) are achieved by dummy edges (dashed lines) which have slowdown equal to 0, thus not affecting allocation times on real edges. Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

16 Search procedure Algorithm 1 Pseudocode for a search procedure. makespan sup plan Planner.getFirstPlan() while plan!= null do schedule Scheduler.getSchedule(plan, makespan) {B-a-B on makespan} if schedule.getmakespan() < makespan then makespan schedule.getmakespan() {better schedule found} end if Planner.getNextPlan(makespan) {next feasible plan with cut constraint} end while the actual makespan is effectively used also for pruning the search space during the first (planning) stage: e E : d D X de slowdown(e) < makespan Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

17 Symmetry breaking Planning stage: orig(d 1 ) l 1 l 2 l 3 l 4 orig(d 2 ) X d1,l 1 = 1 X d2,l 3 = 1 l 1 l 3 Figure: In the configuration shown, demands d 1 and d 2 have an overlapping sets of origins. The outgoing links from this intersection are l 1, l 2, l 3, and l 4. If demand d 1 is assigned to link l 1 and demand d 2 to link l 3, relation l 1 l 3 must hold. Scheduling stage: among the corresponding tasks assigned to each unary resource representing the link from the common path, we introduce additional precedences fixing their order Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

18 Implied constraints of X variables let S 1 and S 2 be two sets of the decision X variables, let S 2 be a subset of S 1, e.g. S 2 S 1, if there exists a constraint stating X S 1 X = 1 and similarly for the second set X S 2 X = 1, we can reduce domains of variables in S 1 \ S 2 to value 0 (depicted in Fig. 4). 0/1 0/1 0/1 0/1 0/1 0/1 0 0 = 1 = 1 Figure: A configuration depicting a state of decision variables for some demand that is going to be transferred to the bottom destination site. If the origin of demand consists of two sites, symbolized as upper leftmost vertices, solver would still try an assignment for two rightmost links. By the filtering procedure we can reduce their values as can be seen on the right graph. Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

19 Search heuristics variable and value selection heuristics determine the shape of the search tree clever branching strategy is a key ingredient of any constraint approach Planning stage: dom strategy (smallest domain first) FastestLink (the selected X dej corresponds to the fastest link (j = arg min i=1,...,m slowdown(e i )) FastestPath (analogous to FastestLink) Scheduling stage: SetTimes (is based on determining Pareto-optimal trade-offs between makespan and resource peak capacity) SumHeights (texture-based heuristic, using ordering tasks on unary resources.) Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

20 Comparative studies (1) implementation of the solver is built on Choco - Java based library ( CSP is compared to the Peer-2-Peer model realistic-like network structure among 5 sites together with file distribution used CPU timelimit of 30 seconds Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

21 Comparative studies (2) Files P2P Link based Path based dom ր dom ց fast ց fast ց dom ր dom ց fast ց fast ց ST ST ST SH ST ST ST SH ? ? ? ? ? ? ? Table: Comparison of makespans generated by several combination of heuristics for link-based and path-based model. Legend is following: ր - Increasing value selection, ց - Decreasing value selection, ST - SetTimes heuristic, SH - SumHeight heuristic. Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

22 Comparative studies (3) Files number of requested files to transfer RunTime time in seconds taken by solver to generate result % in 1 st number of percents of overall time spent in the planning phase % in 2 nd number of percents of overall time spent in the scheduling phase # of 2 nd calls number of scheduling calls BST time in seconds when the best solution was found P2P-M time in general units to execute plan from P2P simulator Makespan time in general units to execute plan from CSP solver Files RunTime % in 1 st % in 2 nd #of 2 nd calls BST P2P-M Makespan % 30% % 23% % 9% % 2% % 2% % 2% % 20% % 5% % 6% % 8% % 11% Table: Results for link-based approach with FastestLink selection in Decreasing order for planning phase and SetTimes heuristic for scheduling phase. Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

23 Imposing time variables into planning phase non-decision positive integer variables P de representing possible start times of transfer for demand d over edge e let dur de be the constant duration of transfer of d over edge e d D n N : X de (P de + dur de ) X de P de e IN(n) e OUT(n) Constraints do not restrict the domains of P de until the values X de are known. To estimate better te lower bound for each P de : min (P df + dur df ) P de, f IN(start) where start be the start vertex of e not containing demand d (start / orig(d)). Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

24 Advantage of time variables P de able to break cycles along the valid paths improved cutting constraint for makespan: e E : min (P de) + X de dur de + SP e < makespan, d D d D where SP e stands for the value of the shortest path from the ending site of e to dest. improved heuristic, called MinPath - instantiate first variable X de such that the following value is minimal : inf P de + dur de + SP e, where inf P de means the smallest value in the current domain of P de. Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

25 Convergence of the heuristics Heuristics performance for 50 files Heuristics performance for 150 files Makespan (units) FastestLink MinPath Peer-2-Peer Makespan (units) FastestLink MinPath Peer-2-Peer Time (sec) Time (sec) Figure: Convergence of makespan during the search process for FastestLink and MinPath. Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

26 References Efficient scheduling of data transfers and job allocations Doktorandske dny 2008 (sbornik workshopu doktorandu FJFI oboru Matematicke inzenyrstvi). CVUT, Praha, 2008, pp (ISBN ) Using constraint programing to resolve the multi-source / multi-site data movement paradigm on the Grid - ACAT 2008, 10pp, Proceedings of Science (SISSA) Using Constraint Programming to Plan Efficient Data Movement on the Grid zer0/papers/cpaior 2009/ Submitted to CP-AI-OR 2009, 15pp (Springer Lecture Notes in Computer Science) Planning Heuristics for Efficient Data Movement on the Grid zer0/papers/mista 2009/ Submitted to MISTA 2009, 4pp (SPLNCS, Journal of Scheduling)... to appear in CHEP 2009 Michal Zerola (STAR) Efficient Data Movement on the Grid February 13, / 26

3 No-Wait Job Shops with Variable Processing Times

3 No-Wait Job Shops with Variable Processing Times 3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select

More information

Constraint (Logic) Programming

Constraint (Logic) Programming Constraint (Logic) Programming Roman Barták Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic bartak@ktiml.mff.cuni.cz Sudoku Combinatorial puzzle, whose goal is to enter

More information

Constraint Satisfaction Problems (CSPs)

Constraint Satisfaction Problems (CSPs) Constraint Satisfaction Problems (CSPs) CPSC 322 CSP 1 Poole & Mackworth textbook: Sections 4.0-4.2 Lecturer: Alan Mackworth September 28, 2012 Problem Type Static Sequential Constraint Satisfaction Logic

More information

Validating Plans with Durative Actions via Integrating Boolean and Numerical Constraints

Validating Plans with Durative Actions via Integrating Boolean and Numerical Constraints Validating Plans with Durative Actions via Integrating Boolean and Numerical Constraints Roman Barták Charles University in Prague, Faculty of Mathematics and Physics Institute for Theoretical Computer

More information

Constraint Programming. Global Constraints. Amira Zaki Prof. Dr. Thom Frühwirth. University of Ulm WS 2012/2013

Constraint Programming. Global Constraints. Amira Zaki Prof. Dr. Thom Frühwirth. University of Ulm WS 2012/2013 Global Constraints Amira Zaki Prof. Dr. Thom Frühwirth University of Ulm WS 2012/2013 Amira Zaki & Thom Frühwirth University of Ulm Page 1 WS 2012/2013 Overview Classes of Constraints Global Constraints

More information

Lecture 18. Questions? Monday, February 20 CS 430 Artificial Intelligence - Lecture 18 1

Lecture 18. Questions? Monday, February 20 CS 430 Artificial Intelligence - Lecture 18 1 Lecture 18 Questions? Monday, February 20 CS 430 Artificial Intelligence - Lecture 18 1 Outline Chapter 6 - Constraint Satisfaction Problems Path Consistency & Global Constraints Sudoku Example Backtracking

More information

Discrete Optimization. Lecture Notes 2

Discrete Optimization. Lecture Notes 2 Discrete Optimization. Lecture Notes 2 Disjunctive Constraints Defining variables and formulating linear constraints can be straightforward or more sophisticated, depending on the problem structure. The

More information

MODELLING AND SOLVING SCHEDULING PROBLEMS USING CONSTRAINT PROGRAMMING

MODELLING AND SOLVING SCHEDULING PROBLEMS USING CONSTRAINT PROGRAMMING Roman Barták (Charles University in Prague, Czech Republic) MODELLING AND SOLVING SCHEDULING PROBLEMS USING CONSTRAINT PROGRAMMING Two worlds planning vs. scheduling planning is about finding activities

More information

Constraint Programming. Marco Kuhlmann & Guido Tack Lecture 1

Constraint Programming. Marco Kuhlmann & Guido Tack Lecture 1 Constraint Programming Marco Kuhlmann & Guido Tack Lecture 1 Welcome! Where am I? Constraint Programming advanced course in Computer Science 6 credit points lecture (2 hours) + lab (2 hours) http://www.ps.uni-sb.de/courses/cp-ss07/

More information

This is the search strategy that we are still using:

This is the search strategy that we are still using: About Search This is the search strategy that we are still using: function : if a solution has been found: return true if the CSP is infeasible: return false for in : if : return true return false Let

More information

Lecture outline. Graph coloring Examples Applications Algorithms

Lecture outline. Graph coloring Examples Applications Algorithms Lecture outline Graph coloring Examples Applications Algorithms Graph coloring Adjacent nodes must have different colors. How many colors do we need? Graph coloring Neighbors must have different colors

More information

A CSP Search Algorithm with Reduced Branching Factor

A CSP Search Algorithm with Reduced Branching Factor A CSP Search Algorithm with Reduced Branching Factor Igor Razgon and Amnon Meisels Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105, Israel {irazgon,am}@cs.bgu.ac.il

More information

Chapter 16. Greedy Algorithms

Chapter 16. Greedy Algorithms Chapter 16. Greedy Algorithms Algorithms for optimization problems (minimization or maximization problems) typically go through a sequence of steps, with a set of choices at each step. A greedy algorithm

More information

Mathematical Programming Formulations, Constraint Programming

Mathematical Programming Formulations, Constraint Programming Outline DM87 SCHEDULING, TIMETABLING AND ROUTING Lecture 3 Mathematical Programming Formulations, Constraint Programming 1. Special Purpose Algorithms 2. Constraint Programming Marco Chiarandini DM87 Scheduling,

More information

Scheduling. Job Shop Scheduling. Example JSP. JSP (cont.)

Scheduling. Job Shop Scheduling. Example JSP. JSP (cont.) Scheduling Scheduling is the problem of allocating scarce resources to activities over time. [Baker 1974] Typically, planning is deciding what to do, and scheduling is deciding when to do it. Generally,

More information

Constraint Satisfaction Problems. slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig, Jean-Claude Latombe

Constraint Satisfaction Problems. slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig, Jean-Claude Latombe Constraint Satisfaction Problems slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig, Jean-Claude Latombe Standard search problems: State is a black box : arbitrary data structure Goal test

More information

Space of Search Strategies. CSE 573: Artificial Intelligence. Constraint Satisfaction. Recap: Search Problem. Example: Map-Coloring 11/30/2012

Space of Search Strategies. CSE 573: Artificial Intelligence. Constraint Satisfaction. Recap: Search Problem. Example: Map-Coloring 11/30/2012 /0/0 CSE 57: Artificial Intelligence Constraint Satisfaction Daniel Weld Slides adapted from Dan Klein, Stuart Russell, Andrew Moore & Luke Zettlemoyer Space of Search Strategies Blind Search DFS, BFS,

More information

Map Colouring. Constraint Satisfaction. Map Colouring. Constraint Satisfaction

Map Colouring. Constraint Satisfaction. Map Colouring. Constraint Satisfaction Constraint Satisfaction Jacky Baltes Department of Computer Science University of Manitoba Email: jacky@cs.umanitoba.ca WWW: http://www4.cs.umanitoba.ca/~jacky/teaching/cour ses/comp_4190- ArtificialIntelligence/current/index.php

More information

CONSTRAINT-BASED SCHEDULING: AN INTRODUCTION FOR NEWCOMERS. Roman Barták

CONSTRAINT-BASED SCHEDULING: AN INTRODUCTION FOR NEWCOMERS. Roman Barták In Proceedings of 7th IFAC Workshop on Intelligent Manufacturing Systems (IMS 2003), Elsevier Science, 2003 (to appear). CONSTRAINT-BASED SCHEDULING: AN INTRODUCTION FOR NEWCOMERS Roman Barták Charles

More information

Constraint-Based Scheduling: An Introduction for Newcomers

Constraint-Based Scheduling: An Introduction for Newcomers Constraint-Based Scheduling: An Introduction for Newcomers Roman Barták * Charles University in Prague, Faculty of Mathematics and Physics Malostranské námestí 2/25, 118 00, Praha 1, Czech Republic bartak@kti.mff.cuni.cz

More information

Constraint Satisfaction Problems. Chapter 6

Constraint Satisfaction Problems. Chapter 6 Constraint Satisfaction Problems Chapter 6 Constraint Satisfaction Problems A constraint satisfaction problem consists of three components, X, D, and C: X is a set of variables, {X 1,..., X n }. D is a

More information

What is Search For? CS 188: Artificial Intelligence. Constraint Satisfaction Problems

What is Search For? CS 188: Artificial Intelligence. Constraint Satisfaction Problems CS 188: Artificial Intelligence Constraint Satisfaction Problems What is Search For? Assumptions about the world: a single agent, deterministic actions, fully observed state, discrete state space Planning:

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2013 Soleymani Course material: Artificial Intelligence: A Modern Approach, 3 rd Edition,

More information

Graph Coloring Facets from a Constraint Programming Formulation

Graph Coloring Facets from a Constraint Programming Formulation Graph Coloring Facets from a Constraint Programming Formulation David Bergman J. N. Hooker Carnegie Mellon University INFORMS 2011 Motivation 0-1 variables often encode choices that can be represented

More information

CSE 417 Branch & Bound (pt 4) Branch & Bound

CSE 417 Branch & Bound (pt 4) Branch & Bound CSE 417 Branch & Bound (pt 4) Branch & Bound Reminders > HW8 due today > HW9 will be posted tomorrow start early program will be slow, so debugging will be slow... Review of previous lectures > Complexity

More information

Chapter 6 Constraint Satisfaction Problems

Chapter 6 Constraint Satisfaction Problems Chapter 6 Constraint Satisfaction Problems CS5811 - Artificial Intelligence Nilufer Onder Department of Computer Science Michigan Technological University Outline CSP problem definition Backtracking search

More information

Course Introduction. Scheduling: Terminology and Classification

Course Introduction. Scheduling: Terminology and Classification Outline DM87 SCHEDULING, TIMETABLING AND ROUTING Lecture 1 Course Introduction. Scheduling: Terminology and Classification 1. Course Introduction 2. Scheduling Problem Classification Marco Chiarandini

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems In which we see how treating states as more than just little black boxes leads to the invention of a range of powerful new search methods and a deeper understanding of

More information

Constraint Programming

Constraint Programming Constraint Programming - An overview Examples, Satisfaction vs. Optimization Different Domains Constraint Propagation» Kinds of Consistencies Global Constraints Heuristics Symmetries 7 November 0 Advanced

More information

CSE 473: Artificial Intelligence

CSE 473: Artificial Intelligence CSE 473: Artificial Intelligence Constraint Satisfaction Luke Zettlemoyer Multiple slides adapted from Dan Klein, Stuart Russell or Andrew Moore What is Search For? Models of the world: single agent, deterministic

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Search and Lookahead Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg June 4/6, 2012 Nebel, Hué and Wölfl (Universität Freiburg) Constraint

More information

Unifying and extending hybrid tractable classes of CSPs

Unifying and extending hybrid tractable classes of CSPs Journal of Experimental & Theoretical Artificial Intelligence Vol. 00, No. 00, Month-Month 200x, 1 16 Unifying and extending hybrid tractable classes of CSPs Wady Naanaa Faculty of sciences, University

More information

Lecture 6: Constraint Satisfaction Problems (CSPs)

Lecture 6: Constraint Satisfaction Problems (CSPs) Lecture 6: Constraint Satisfaction Problems (CSPs) CS 580 (001) - Spring 2018 Amarda Shehu Department of Computer Science George Mason University, Fairfax, VA, USA February 28, 2018 Amarda Shehu (580)

More information

Soft constraints: Polynomial classes, Applications

Soft constraints: Polynomial classes, Applications Soft constraints: Polynomial classes, Applications T. Schiex INRA - Toulouse, France Padova 2004 - Soft constraints p. 1 Polynomial classes structural classes: when the constraint (hyper)-graph has good

More information

CS 188: Artificial Intelligence Fall 2011

CS 188: Artificial Intelligence Fall 2011 Announcements Project 1: Search is due next week Written 1: Search and CSPs out soon Piazza: check it out if you haven t CS 188: Artificial Intelligence Fall 2011 Lecture 4: Constraint Satisfaction 9/6/2011

More information

Bi-Objective Optimization for Scheduling in Heterogeneous Computing Systems

Bi-Objective Optimization for Scheduling in Heterogeneous Computing Systems Bi-Objective Optimization for Scheduling in Heterogeneous Computing Systems Tony Maciejewski, Kyle Tarplee, Ryan Friese, and Howard Jay Siegel Department of Electrical and Computer Engineering Colorado

More information

15-780: Graduate AI Homework Assignment #2 Solutions

15-780: Graduate AI Homework Assignment #2 Solutions 15-780: Graduate AI Homework Assignment #2 Solutions Out: February 12, 2015 Due: February 25, 2015 Collaboration Policy: You may discuss the problems with others, but you must write all code and your writeup

More information

CS 188: Artificial Intelligence. Recap: Search

CS 188: Artificial Intelligence. Recap: Search CS 188: Artificial Intelligence Lecture 4 and 5: Constraint Satisfaction Problems (CSPs) Pieter Abbeel UC Berkeley Many slides from Dan Klein Recap: Search Search problem: States (configurations of the

More information

15-854: Approximations Algorithms Lecturer: Anupam Gupta Topic: Direct Rounding of LP Relaxations Date: 10/31/2005 Scribe: Varun Gupta

15-854: Approximations Algorithms Lecturer: Anupam Gupta Topic: Direct Rounding of LP Relaxations Date: 10/31/2005 Scribe: Varun Gupta 15-854: Approximations Algorithms Lecturer: Anupam Gupta Topic: Direct Rounding of LP Relaxations Date: 10/31/2005 Scribe: Varun Gupta 15.1 Introduction In the last lecture we saw how to formulate optimization

More information

Announcements. CS 188: Artificial Intelligence Spring Today. A* Review. Consistency. A* Graph Search Gone Wrong

Announcements. CS 188: Artificial Intelligence Spring Today. A* Review. Consistency. A* Graph Search Gone Wrong CS 88: Artificial Intelligence Spring 2009 Lecture 4: Constraint Satisfaction /29/2009 John DeNero UC Berkeley Slides adapted from Dan Klein, Stuart Russell or Andrew Moore Announcements The Python tutorial

More information

The Job-Shop Problem: Old and New Challenges

The Job-Shop Problem: Old and New Challenges Invited Speakers The Job-Shop Problem: Old and New Challenges Peter Brucker Universität Osnabrück, Albrechtstr. 28a, 49069 Osnabrück, Germany, pbrucker@uni-osnabrueck.de The job-shop problem is one of

More information

Search Algorithms. IE 496 Lecture 17

Search Algorithms. IE 496 Lecture 17 Search Algorithms IE 496 Lecture 17 Reading for This Lecture Primary Horowitz and Sahni, Chapter 8 Basic Search Algorithms Search Algorithms Search algorithms are fundamental techniques applied to solve

More information

Optimal Crane Scheduling

Optimal Crane Scheduling Optimal Crane Scheduling IonuŃ Aron Iiro Harjunkoski John Hooker Latife Genç Kaya March 2007 1 Problem Schedule 2 cranes to transfer material between locations in a manufacturing plant. For example, copper

More information

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem L. De Giovanni M. Di Summa The Traveling Salesman Problem (TSP) is an optimization problem on a directed

More information

Constraint Programming

Constraint Programming Depth-first search Let us go back to foundations: DFS = Depth First Search Constraint Programming Roman Barták Department of Theoretical Computer Science and Mathematical Logic 2 3 4 5 6 7 8 9 Observation:

More information

Sankalchand Patel College of Engineering - Visnagar Department of Computer Engineering and Information Technology. Assignment

Sankalchand Patel College of Engineering - Visnagar Department of Computer Engineering and Information Technology. Assignment Class: V - CE Sankalchand Patel College of Engineering - Visnagar Department of Computer Engineering and Information Technology Sub: Design and Analysis of Algorithms Analysis of Algorithm: Assignment

More information

Routing by Mixed Set Programming

Routing by Mixed Set Programming The Eighth International Symposium on Operations Research and Its Applications (ISORA 09) Zhangjiajie, China, September 20 22, 2009 Copyright 2009 ORSC & APORC, pp. 157 166 Routing by Mixed Set Programming

More information

Constraint Satisfaction

Constraint Satisfaction Constraint Satisfaction Philipp Koehn 1 October 2015 Outline 1 Constraint satisfaction problems (CSP) examples Backtracking search for CSPs Problem structure and problem decomposition Local search for

More information

Comments about assign 1. Quick search recap. Constraint Satisfaction Problems (CSPs) Search uninformed BFS, DFS, IDS. Adversarial search

Comments about assign 1. Quick search recap. Constraint Satisfaction Problems (CSPs) Search uninformed BFS, DFS, IDS. Adversarial search Constraint Satisfaction Problems (CSPs) CS5 David Kauchak Fall 00 http://www.xkcd.com/78/ Some material borrowed from: Sara Owsley Sood and others Comments about assign Grading actually out of 60 check

More information

Announcements. CS 188: Artificial Intelligence Fall 2010

Announcements. CS 188: Artificial Intelligence Fall 2010 Announcements Project 1: Search is due Monday Looking for partners? After class or newsgroup Written 1: Search and CSPs out soon Newsgroup: check it out CS 188: Artificial Intelligence Fall 2010 Lecture

More information

Symmetric Cardinality Constraints

Symmetric Cardinality Constraints Mälardalen University Licentiate Thesis No.59 Symmetric Cardinality Constraints Waldemar Kocjan December 2005 Department of Computer Science and Electronics Mälardalen University Västerås, Sweden Copyright

More information

Solutions for Operations Research Final Exam

Solutions for Operations Research Final Exam Solutions for Operations Research Final Exam. (a) The buffer stock is B = i a i = a + a + a + a + a + a 6 + a 7 = + + + + + + =. And the transportation tableau corresponding to the transshipment problem

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Constraint Optimization Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg July 17, 2012 Nebel, Hué and Wölfl (Universität Freiburg) Constraint

More information

CS 343: Artificial Intelligence

CS 343: Artificial Intelligence CS 343: Artificial Intelligence Constraint Satisfaction Problems Prof. Scott Niekum The University of Texas at Austin [These slides are based on those of Dan Klein and Pieter Abbeel for CS188 Intro to

More information

Branch and Bound Method for Scheduling Precedence Constrained Tasks on Parallel Identical Processors

Branch and Bound Method for Scheduling Precedence Constrained Tasks on Parallel Identical Processors , July 2-4, 2014, London, U.K. Branch and Bound Method for Scheduling Precedence Constrained Tasks on Parallel Identical Processors N.S.Grigoreva Abstract The multiprocessor scheduling problem is one of

More information

Branch & Bound (B&B) and Constraint Satisfaction Problems (CSPs)

Branch & Bound (B&B) and Constraint Satisfaction Problems (CSPs) Branch & Bound (B&B) and Constraint Satisfaction Problems (CSPs) Alan Mackworth UBC CS 322 CSP 1 January 25, 2013 P&M textbook 3.7.4 & 4.0-4.2 Lecture Overview Recap Branch & Bound Wrap up of search module

More information

Solution for Homework set 3

Solution for Homework set 3 TTIC 300 and CMSC 37000 Algorithms Winter 07 Solution for Homework set 3 Question (0 points) We are given a directed graph G = (V, E), with two special vertices s and t, and non-negative integral capacities

More information

Index. optimal package assignments, 143 optimal package assignments, symmetrybreaking,

Index. optimal package assignments, 143 optimal package assignments, symmetrybreaking, A Abstract approach, 79 Amphibian coexistence aquarium, 7 executes, 16 model, 13 15 modeling languages, 11 12 MPSolver, 12 OR-Tools library, 12 preys, 7 run a model, 17 18 solution, 17 three-step approach,

More information

Module 4. Constraint satisfaction problems. Version 2 CSE IIT, Kharagpur

Module 4. Constraint satisfaction problems. Version 2 CSE IIT, Kharagpur Module 4 Constraint satisfaction problems Lesson 10 Constraint satisfaction problems - II 4.5 Variable and Value Ordering A search algorithm for constraint satisfaction requires the order in which variables

More information

Constraint Solving by Composition

Constraint Solving by Composition Constraint Solving by Composition Student: Zhijun Zhang Supervisor: Susan L. Epstein The Graduate Center of the City University of New York, Computer Science Department 365 Fifth Avenue, New York, NY 10016-4309,

More information

Chapter 10 Part 1: Reduction

Chapter 10 Part 1: Reduction //06 Polynomial-Time Reduction Suppose we could solve Y in polynomial-time. What else could we solve in polynomial time? don't confuse with reduces from Chapter 0 Part : Reduction Reduction. Problem X

More information

Constraint Solving CLFD: Architecture Constraint Propagation Search Interface & Results Conclusion CLFD

Constraint Solving CLFD: Architecture Constraint Propagation Search Interface & Results Conclusion CLFD Constraint Solving : Architecture Constraint Propagation Search Interface & Results Conclusion A Finite Domain Constraint Solver in Common Lisp 20.06.2005 Constraint Solving : Architecture Constraint Propagation

More information

EDAN01 Introduction to Constraint Programming Lab Instruction

EDAN01 Introduction to Constraint Programming Lab Instruction EDAN01 Introduction to Constraint Programming Lab Instruction Author: Krzysztof Kuchcinski Krzysztof.Kuchcinski@cs.lth.se Course responsible: Krzysztof Kuchcinski (krzysztof.kuchcinski@cs.lth.se) Lab assistants:

More information

Outline. Best-first search

Outline. Best-first search Outline Best-first search Greedy best-first search A* search Heuristics Local search algorithms Hill-climbing search Beam search Simulated annealing search Genetic algorithms Constraint Satisfaction Problems

More information

Implementation of a Sudoku Solver Using Reduction to SAT

Implementation of a Sudoku Solver Using Reduction to SAT Implementation of a Sudoku Solver Using Reduction to SAT For this project you will develop a Sudoku solver that receives an input puzzle and computes a solution, if one exists. Your solver will: read an

More information

Lecture 9 Arc Consistency

Lecture 9 Arc Consistency Computer Science CPSC 322 Lecture 9 Arc Consistency (4.5, 4.6) Slide 1 Lecture Overview Recap of Lecture 8 Arc Consistency for CSP Domain Splitting 2 Problem Type Static Sequential Constraint Satisfaction

More information

Simulation. Lecture O1 Optimization: Linear Programming. Saeed Bastani April 2016

Simulation. Lecture O1 Optimization: Linear Programming. Saeed Bastani April 2016 Simulation Lecture O Optimization: Linear Programming Saeed Bastani April 06 Outline of the course Linear Programming ( lecture) Integer Programming ( lecture) Heuristics and Metaheursitics (3 lectures)

More information

THE CONSTRAINT PROGRAMMER S TOOLBOX. Christian Schulte, SCALE, KTH & SICS

THE CONSTRAINT PROGRAMMER S TOOLBOX. Christian Schulte, SCALE, KTH & SICS THE CONSTRAINT PROGRAMMER S TOOLBOX Christian Schulte, SCALE, KTH & SICS Constraint Programming 2 What is constraint programming? Sudoku is constraint programming 3 Sudoku...is constraint programming!

More information

Figure : Example Precedence Graph

Figure : Example Precedence Graph CS787: Advanced Algorithms Topic: Scheduling with Precedence Constraints Presenter(s): James Jolly, Pratima Kolan 17.5.1 Motivation 17.5.1.1 Objective Consider the problem of scheduling a collection of

More information

Constraint Propagation: The Heart of Constraint Programming

Constraint Propagation: The Heart of Constraint Programming Constraint Propagation: The Heart of Constraint Programming Zeynep KIZILTAN Department of Computer Science University of Bologna Email: zeynep@cs.unibo.it URL: http://zeynep.web.cs.unibo.it/ What is it

More information

Solving the Static Design Routing and Wavelength Assignment Problem

Solving the Static Design Routing and Wavelength Assignment Problem Solving the Static Design Routing and Wavelength Assignment Problem Helmut Simonis Cork Constraint Computation Centre Computer Science Department University College Cork Ireland CSCLP 009, Barcelona Helmut

More information

THE CONSTRAINT PROGRAMMER S TOOLBOX. Christian Schulte, SCALE, KTH & SICS

THE CONSTRAINT PROGRAMMER S TOOLBOX. Christian Schulte, SCALE, KTH & SICS THE CONSTRAINT PROGRAMMER S TOOLBOX Christian Schulte, SCALE, KTH & SICS Constraint Programming 2 What is constraint programming? Sudoku is constraint programming 3 Sudoku...is constraint programming!

More information

General Methods and Search Algorithms

General Methods and Search Algorithms DM811 HEURISTICS AND LOCAL SEARCH ALGORITHMS FOR COMBINATORIAL OPTIMZATION Lecture 3 General Methods and Search Algorithms Marco Chiarandini 2 Methods and Algorithms A Method is a general framework for

More information

Today. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 5. Constraint Satisfaction Problems (CSP) CSP Definition

Today. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 5. Constraint Satisfaction Problems (CSP) CSP Definition Today COMP 3501 / COMP 4704-4 Lecture 5 Finish up 2-player games Discuss homework Constraint Satisfaction Problems Prof. JGH 318 Constraint Satisfaction Problems (CSP) CSP s are our first work on factored

More information

Admin. Quick search recap. Constraint Satisfaction Problems (CSPs)! Intro Example: 8-Queens. Where should I put the queens in columns 3 and 4?

Admin. Quick search recap. Constraint Satisfaction Problems (CSPs)! Intro Example: 8-Queens. Where should I put the queens in columns 3 and 4? Admin Constraint Satisfaction Problems (CSPs)! CS David Kauchak Spring 0 Final project comments: Use preexisting code Get your data now! Use preexisting data sets Finding good references Google scholar

More information

CS 188: Artificial Intelligence Fall 2008

CS 188: Artificial Intelligence Fall 2008 CS 188: Artificial Intelligence Fall 2008 Lecture 4: CSPs 9/9/2008 Dan Klein UC Berkeley Many slides over the course adapted from either Stuart Russell or Andrew Moore 1 1 Announcements Grading questions:

More information

Announcements. CS 188: Artificial Intelligence Fall Large Scale: Problems with A* What is Search For? Example: N-Queens

Announcements. CS 188: Artificial Intelligence Fall Large Scale: Problems with A* What is Search For? Example: N-Queens CS 188: Artificial Intelligence Fall 2008 Announcements Grading questions: don t panic, talk to us Newsgroup: check it out Lecture 4: CSPs 9/9/2008 Dan Klein UC Berkeley Many slides over the course adapted

More information

Crossword Puzzles as a Constraint Problem

Crossword Puzzles as a Constraint Problem Crossword Puzzles as a Constraint Problem Anbulagan and Adi Botea NICTA and Australian National University, Canberra, Australia {anbulagan,adi.botea}@nicta.com.au Abstract. We present new results in crossword

More information

A New Algorithm for Singleton Arc Consistency

A New Algorithm for Singleton Arc Consistency A New Algorithm for Singleton Arc Consistency Roman Barták, Radek Erben Charles University, Institute for Theoretical Computer Science Malostranské nám. 2/25, 118 Praha 1, Czech Republic bartak@kti.mff.cuni.cz,

More information

What is Search For? CS 188: Artificial Intelligence. Example: Map Coloring. Example: N-Queens. Example: N-Queens. Constraint Satisfaction Problems

What is Search For? CS 188: Artificial Intelligence. Example: Map Coloring. Example: N-Queens. Example: N-Queens. Constraint Satisfaction Problems CS 188: Artificial Intelligence Constraint Satisfaction Problems What is Search For? Assumptions about the world: a single agent, deterministic actions, fully observed state, discrete state space Planning:

More information

Single Machine Scheduling with Interfering Job Sets. Arizona State University PO Box Tempe, AZ

Single Machine Scheduling with Interfering Job Sets. Arizona State University PO Box Tempe, AZ Single Machine Scheduling with Interfering Job Sets Ketan Khowala 1,3, John Fowler 1,3, Ahmet Keha 1* and Hari Balasubramanian 2 1 Department of Industrial Engineering Arizona State University PO Box 875906

More information

6.034 Quiz 1, Spring 2004 Solutions

6.034 Quiz 1, Spring 2004 Solutions 6.034 Quiz 1, Spring 2004 Solutions Open Book, Open Notes 1 Tree Search (12 points) Consider the tree shown below. The numbers on the arcs are the arc lengths. Assume that the nodes are expanded in alphabetical

More information

CS 188: Artificial Intelligence Spring Announcements

CS 188: Artificial Intelligence Spring Announcements CS 188: Artificial Intelligence Spring 2010 Lecture 4: A* wrap-up + Constraint Satisfaction 1/28/2010 Pieter Abbeel UC Berkeley Many slides from Dan Klein Announcements Project 0 (Python tutorial) is due

More information

Introduction. A very important step in physical design cycle. It is the process of arranging a set of modules on the layout surface.

Introduction. A very important step in physical design cycle. It is the process of arranging a set of modules on the layout surface. Placement Introduction A very important step in physical design cycle. A poor placement requires larger area. Also results in performance degradation. It is the process of arranging a set of modules on

More information

Linear Programming. Readings: Read text section 11.6, and sections 1 and 2 of Tom Ferguson s notes (see course homepage).

Linear Programming. Readings: Read text section 11.6, and sections 1 and 2 of Tom Ferguson s notes (see course homepage). Linear Programming Learning Goals. Introduce Linear Programming Problems. Widget Example, Graphical Solution. Basic Theory: Feasible Set, Vertices, Existence of Solutions. Equivalent formulations. Outline

More information

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued.

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued. Linear Programming Widget Factory Example Learning Goals. Introduce Linear Programming Problems. Widget Example, Graphical Solution. Basic Theory:, Vertices, Existence of Solutions. Equivalent formulations.

More information

Recap: Search Problem. CSE 473: Artificial Intelligence. Space of Search Strategies. Constraint Satisfaction. Example: N-Queens 4/9/2012

Recap: Search Problem. CSE 473: Artificial Intelligence. Space of Search Strategies. Constraint Satisfaction. Example: N-Queens 4/9/2012 CSE 473: Artificial Intelligence Constraint Satisfaction Daniel Weld Slides adapted from Dan Klein, Stuart Russell, Andrew Moore & Luke Zettlemoyer Recap: Search Problem States configurations of the world

More information

Announcements. Homework 1: Search. Project 1: Search. Midterm date and time has been set:

Announcements. Homework 1: Search. Project 1: Search. Midterm date and time has been set: Announcements Homework 1: Search Has been released! Due Monday, 2/1, at 11:59pm. On edx online, instant grading, submit as often as you like. Project 1: Search Has been released! Due Friday 2/5 at 5pm.

More information

Constraint Programming Models for Solitaire Battleships

Constraint Programming Models for Solitaire Battleships Constraint Programming Models for Solitaire Battleships Barbara M. Smith Cork Constraint Computation Centre, University College Cork, Ireland b.smith@4c.ucc.ie November 9, 2006 Abstract. The Solitaire

More information

Notes for Lecture 24

Notes for Lecture 24 U.C. Berkeley CS170: Intro to CS Theory Handout N24 Professor Luca Trevisan December 4, 2001 Notes for Lecture 24 1 Some NP-complete Numerical Problems 1.1 Subset Sum The Subset Sum problem is defined

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Last update: February 25, 2010 Constraint Satisfaction Problems CMSC 421, Chapter 5 CMSC 421, Chapter 5 1 Outline CSP examples Backtracking search for CSPs Problem structure and problem decomposition Local

More information

CMPSCI 311: Introduction to Algorithms Practice Final Exam

CMPSCI 311: Introduction to Algorithms Practice Final Exam CMPSCI 311: Introduction to Algorithms Practice Final Exam Name: ID: Instructions: Answer the questions directly on the exam pages. Show all your work for each question. Providing more detail including

More information

Linear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization?

Linear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization? Linear and Integer Programming 15-853:Algorithms in the Real World Linear and Integer Programming I Introduction Geometric Interpretation Simplex Method Linear or Integer programming maximize z = c T x

More information

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch.

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch. Iterative Improvement Algorithm design technique for solving optimization problems Start with a feasible solution Repeat the following step until no improvement can be found: change the current feasible

More information

Chronological Backtracking Conflict Directed Backjumping Dynamic Backtracking Branching Strategies Branching Heuristics Heavy Tail Behavior

Chronological Backtracking Conflict Directed Backjumping Dynamic Backtracking Branching Strategies Branching Heuristics Heavy Tail Behavior PART III: Search Outline Depth-first Search Chronological Backtracking Conflict Directed Backjumping Dynamic Backtracking Branching Strategies Branching Heuristics Heavy Tail Behavior Best-First Search

More information

Drawing Problem. Possible properties Minimum number of edge crossings Small area Straight or short edges Good representation of graph structure...

Drawing Problem. Possible properties Minimum number of edge crossings Small area Straight or short edges Good representation of graph structure... Graph Drawing Embedding Embedding For a given graph G = (V, E), an embedding (into R 2 ) assigns each vertex a coordinate and each edge a (not necessarily straight) line connecting the corresponding coordinates.

More information

Lecture 19 Subgradient Methods. November 5, 2008

Lecture 19 Subgradient Methods. November 5, 2008 Subgradient Methods November 5, 2008 Outline Lecture 19 Subgradients and Level Sets Subgradient Method Convergence and Convergence Rate Convex Optimization 1 Subgradients and Level Sets A vector s is a

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems [These slides were created by Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley. All CS188 materials are available at http://ai.berkeley.edu.] What is Search

More information

Solving Multi-Objective Distributed Constraint Optimization Problems. CLEMENT Maxime. Doctor of Philosophy

Solving Multi-Objective Distributed Constraint Optimization Problems. CLEMENT Maxime. Doctor of Philosophy Solving Multi-Objective Distributed Constraint Optimization Problems CLEMENT Maxime Doctor of Philosophy Department of Informatics School of Multidisciplinary Sciences SOKENDAI (The Graduate University

More information

Polynomial time approximation algorithms

Polynomial time approximation algorithms Polynomial time approximation algorithms Doctoral course Optimization on graphs - Lecture 5.2 Giovanni Righini January 18 th, 2013 Approximation algorithms There are several reasons for using approximation

More information