Exact methods for ALB ALB problem can be considered as a shortest path problem The complete graph need not be developed since one can stop as soon as in.

Slides:



Advertisements
Similar presentations
Heuristic Search techniques
Advertisements

Informed search algorithms
AI Pathfinding Representing the Search Space
A* Search. 2 Tree search algorithms Basic idea: Exploration of state space by generating successors of already-explored states (a.k.a.~expanding states).
Traveling Salesperson Problem
PROBLEM SOLVING AND SEARCH
Techniques for Dealing with Hard Problems Backtrack: –Systematically enumerates all potential solutions by continually trying to extend a partial solution.
EE 553 Integer Programming
Computational Methods for Management and Economics Carla Gomes Module 8b The transportation simplex method.
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2008.
3.3 Spanning Trees Tucker, Applied Combinatorics, Section 3.3, by Patti Bodkin and Tamsen Hunter.
Search Techniques MSc AI module. Search In order to build a system to solve a problem we need to: Define and analyse the problem Acquire the knowledge.
Search in AI.
Lecture 12 Last time: CSPs, backtracking, forward checking Today: Game Playing.
Slide 1 Search: Advanced Topics Jim Little UBC CS 322 – Search 5 September 22, 2014 Textbook § 3.6.
CPSC 322, Lecture 9Slide 1 Search: Advanced Topics Computer Science cpsc322, Lecture 9 (Textbook Chpt 3.6) January, 23, 2009.
MAE 552 – Heuristic Optimization Lecture 27 April 3, 2002
Using Search in Problem Solving
MAE 552 – Heuristic Optimization Lecture 26 April 1, 2002 Topic:Branch and Bound.
ICS-271:Notes 6: 1 Notes 6: Game-Playing ICS 271 Fall 2006.
Ch 13 – Backtracking + Branch-and-Bound
Branch and Bound Algorithm for Solving Integer Linear Programming
Building Phylogenies Parsimony 2.
1 IOE/MFG 543 Chapter 7: Job shops Sections 7.1 and 7.2 (skip section 7.3)
CS420 lecture eight Greedy Algorithms. Going from A to G Starting with a full tank, we can drive 350 miles before we need to gas up, minimize the number.
K-Coloring k-coloring: A k-coloring of a graph G is a labeling f: V(G)  S, where |S|=k. The labels are colors; the vertices of one color form a color.
Daniel Kroening and Ofer Strichman Decision Procedures An Algorithmic Point of View Deciding ILPs with Branch & Bound ILP References: ‘Integer Programming’
Integer programming Branch & bound algorithm ( B&B )
Game Trees: MiniMax strategy, Tree Evaluation, Pruning, Utility evaluation Adapted from slides of Yoonsuck Choe.
Minimax Trees: Utility Evaluation, Tree Evaluation, Pruning CPSC 315 – Programming Studio Spring 2008 Project 2, Lecture 2 Adapted from slides of Yoonsuck.
Heuristic Search In addition to depth-first search, breadth-first search, bound depth-first search, and iterative deepening, we can also use informed or.
Introduction to search Chapter 3. Why study search? §Search is a basis for all AI l search proposed as the basis of intelligence l inference l all learning.
Approaches to Line balancing Optimal Solutions Active Learning Module 3 Dr. César O. Malavé Texas A&M University.
Computer Science CPSC 322 Lecture 9 (Ch , 3.7.6) Slide 1.
1 Combinatorial Problem. 2 Graph Partition Undirected graph G=(V,E) V=V1  V2, V1  V2=  minimize the number of edges connect V1 and V2.
CSE 589 Part VI. Reading Skiena, Sections 5.5 and 6.8 CLR, chapter 37.
Lecture 3: Uninformed Search
Outline Introduction Minimizing the makespan Minimizing total flowtime
Search CPSC 386 Artificial Intelligence Ellen Walker Hiram College.
1 Branch and Bound Searching Strategies Updated: 12/27/2010.
Layout and Design Kapitel 4 / 1 (c) Prof. Richard F. Hartl Flow shop production Object-oriented Assignment is derived from the item´s work plans. Uniform.
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.
Ricochet Robots Mitch Powell Daniel Tilgner. Abstract Ricochet robots is a board game created in Germany in A player is given 30 seconds to find.
Introduction to Artificial Intelligence (G51IAI) Dr Rong Qu Blind Searches - Introduction.
Solving problems by searching A I C h a p t e r 3.
Adversarial Search 2 (Game Playing)
Product A Product B Product C A1A1 A2A2 A3A3 B1B1 B2B2 B3B3 B4B4 C1C1 C3C3 C4C4 Turret lathes Vertical mills Center lathes Drills From “Fundamentals of.
Best-first search is a search algorithm which explores a graph by expanding the most promising node chosen according to a specified rule.
Traveling Salesperson Problem
Breadth First and Depth First
The minimum cost flow problem
Paweł Gawrychowski, Nadav Krasnopolsky, Shay Mozes, Oren Weimann
Artificial Intelligence (CS 370D)
Heuristics Definition – a heuristic is an inexact algorithm that is based on intuitive and plausible arguments which are “likely” to lead to reasonable.
Branch and Bound.
EA C461 – Artificial Intelligence
Searching for Solutions
Analysis & Design of Algorithms (CSCE 321)
Introduction to Artificial Intelligence Lecture 9: Two-Player Games I
BEST FIRST SEARCH -OR Graph -A* Search -Agenda Search CSE 402
Artificial Intelligence
Artificial Intelligence
CO Games Development 1 Week 8 Depth-first search, Combinatorial Explosion, Heuristics, Hill-Climbing Gareth Bellaby.
(1) Breadth-First Search  S Queue S
UNINFORMED SEARCH -BFS -DFS -DFIS - Bidirectional
CS 416 Artificial Intelligence
CMSC 471 Fall 2011 Class #4 Tue 9/13/11 Uninformed Search
Branch-and-Bound Algorithm for Integer Program
Lecture 4: Tree Search Strategies
Minimax Trees: Utility Evaluation, Tree Evaluation, Pruning
Presentation transcript:

Exact methods for ALB ALB problem can be considered as a shortest path problem The complete graph need not be developed since one can stop as soon as in one node all operations have been assigned, and also because of pruning the tree by dominance rules The graph will still be very large -> heuristic that considers only a subgraph with the cost of loosing guarantee of optimality

Pinto heuristic 1.Find some good (and feasible w.r.t. precedence) orderings of the operations using e.g. different priority rules 2.For each of these orderings (permutations) (j l,...., j n ) of operations, define nodes (states) Z 0 = {}, {j l }, {j l, j 2 },..., Z end = {j l,..., j n }. 3.Draw an arrow from node Z to Z' if Z' - Z represents a feasible assignment of a station in the sense that cycle time is not exceeded: 4.In the resulting graph find the shortest path from Z 0 = {} to Z end = {j l,..., j n }.

Pinto heuristic Example: c=4 Ordering 1: 2, 1, 4, 5, 3 Ordering 2: 1, 4, 5,2, 3 By coincidence the optimal solution is reached!

B&B algorithm by Johnson (FABLE) DP algorithm can be considered as „breadth“ search All nodes in a certain stage are considered, before proceeding to the next stage The first complete solution is already the optimal one; if the algorithm is stopped because of time restrictions no feasible solution is available. -> B&B algorithm by Johnson treis to search the corresponding tree in the sense of „depth“ search by trying to reach leaves of the tree soon (complete solution). Algorithm is also known as FABLE: fast algorithm for balancing lines effectively. Like in all B&B algorithms one tries to keep the tree small; in addition to dominance rules also bounds are used.

Branching process In the starting node 0 no operations have been assigned yet. In each iteration an additional operation is assigned (or in a backtracking step an operation is removed). A new station is opened whenever no further operation can be assigned to the previous one (maximal stations) In order to obtain a good first solution, the operations are ordered according to some priority rules -> in FABLE this is done according to the following rules (considering precedences):

Branching process 1. sort according to decreasing operation times t j (i.e. allocate long operations first) 2. in case of a tie, use decreasing number of immediate successors 3. in case there is still a tie choose randomly Example: We obtain the following ordering: 1, 2, 3, 4, 5

Branching process This leads us to a „leaf“ of the B&B tree: Feasible solution (3 stations): {1}, {2, 4}, {3, 5}

Branching process In an exact method we must check all alternative solutions in principle. Hence, one has to perform backtracking. We have to go back in the tree to find the last "crossroad" where not all directions /alternatives have been investigated yet. 1 st branching opportunity: node 3 (operation 5 instead of operation 3). In FABLE only increasing operations number within 1 station are permitted -> Node 6 is not to be considered any further!

Branching process Next branching opportunity: Node 1 (operation 4 instead of operation 2) {4,2} is not allowed for station 2 (see previous slide). {4,5} is ok (no other possibilities). The only possibility for station 3 is {2} and for station 4 {3}. Already in node 9 we see that this cannot lead to a new optimal solution since we will not end up with < 3 stations. Backtracking from node 9…next branching opportunity: node 0.

Branching process Branching at node 0: We try to assign operation 2 instead of operation 1. Maximal station 1 is {2} and only maximal station 2 is {1}. In node 12 one has again 2 possible operations to be chosen, 3 and 4. We start with the lower index, i.e. operation 3. Station {3} is maximal. In node 13 or even in node 12 one could have already stopped, since it is clear that no solution with less than 3 stations will be found. All branches have been investigated and the algorithm stops. The solution {1}, {2, 4}, {3, 5} with 3 stations is optimal.