Optimization of order-picking using a revised minimum spanning table method 盧坤勇 國立聯合大學電子工程系.

Slides:



Advertisements
Similar presentations
© Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems Introduction.
Advertisements

Algorithm Design Techniques
An Introduction to Calculus. Calculus Study of how things change Allows us to model real-life situations very accurately.
Maximal Independent Subsets of Linear Spaces. Whats a linear space? Given a set of points V a set of lines where a line is a k-set of points each pair.
PROLOG MORE PROBLEMS.
Error-Correcting codes
2 x0 0 12/13/2014 Know Your Facts!. 2 x1 2 12/13/2014 Know Your Facts!
5 x4. 10 x2 9 x3 10 x9 10 x4 10 x8 9 x2 9 x4.
MS 101: Algorithms Instructor Neelima Gupta
Parallel algorithms for expression evaluation Part1. Simultaneous substitution method (SimSub) Part2. A parallel pebble game.
Feature Selection for Pattern Recognition J.-S. Roger Jang ( 張智星 ) CSIE Dept., National Taiwan University ( 台灣大學 資訊工程系 )
DIRECTIONAL ARC-CONSISTENCY ANIMATION Fernando Miranda 5986/M
Linear Programming – Simplex Method: Computational Problems Breaking Ties in Selection of Non-Basic Variable – if tie for non-basic variable with largest.
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)
Section 3.4 The Traveling Salesperson Problem Tucker Applied Combinatorics By Aaron Desrochers and Ben Epstein.
Simplex (quick recap). Replace all the inequality constraints by equalities, using slack variables.
Ali Husseinzadeh Kashan Spring 2010
Networks Prim’s Algorithm
Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm
Non-Linear Problems General approach. Non-linear Optimization Many objective functions, tend to be non-linear. Design problems for which the objective.
Graph Algorithms: Minimum Spanning Tree We are given a weighted, undirected graph G = (V, E), with weight function w:
3 -1 Chapter 3 The Greedy Method 3 -2 The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each.
COMP305. Part II. Genetic Algorithms. Genetic Algorithms.
A new crossover technique in Genetic Programming Janet Clegg Intelligent Systems Group Electronics Department.
Population New Population Selection Crossover and Mutation Insert When the new population is full repeat Generational Algorithm.
Chapter 10: Algorithm Design Techniques
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms.
Minimum Spanning Trees. Subgraph A graph G is a subgraph of graph H if –The vertices of G are a subset of the vertices of H, and –The edges of G are a.
Data Structures and Algorithms Graphs Minimum Spanning Tree PLSD210.
© The McGraw-Hill Companies, Inc., Chapter 3 The Greedy Method.
Soft Computing Lecture 18 Foundations of genetic algorithms (GA). Using of GA.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
1 Converting Categories to Numbers for Approximate Nearest Neighbor Search 嘉義大學資工系 郭煌政 2004/10/20.
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Sets.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Module 5 – Networks and Decision Mathematics Chapter 23 – Undirected Graphs.
Genetic algorithms Charles Darwin "A man who dares to waste an hour of life has not discovered the value of life"
HOW TO MAKE A TIMETABLE USING GENETIC ALGORITHMS Introduction with an example.
The Generational Control Model This is the control model that is traditionally used by GP systems. There are a distinct number of generations performed.
Minimum Spanning Trees Easy. Terms Node Node Edge Edge Cut Cut Cut respects a set of edges Cut respects a set of edges Light Edge Light Edge Minimum Spanning.
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
CS621: Artificial Intelligence Pushpak Bhattacharyya CSE Dept., IIT Bombay Lecture 5: Power of Heuristic; non- conventional search.
1 Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations Genetic Algorithm (GA)
Lecture 19 Minimal Spanning Trees CSCI – 1900 Mathematics for Computer Science Fall 2014 Bill Pine.
Genetic Algorithm Dr. Md. Al-amin Bhuiyan Professor, Dept. of CSE Jahangirnagar University.
1 CPSC 320: Intermediate Algorithm Design and Analysis July 14, 2014.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Genetic Algorithm(GA)
Genetic Algorithm (Knapsack Problem)
Using GA’s to Solve Problems
Genetic Algorithms.
Greedy function greedy { S <- S0 //Initialization
Minimum Spanning Tree Chapter 13.6.
CISC 235: Topic 10 Graph Algorithms.
Artificial Intelligence Project 2 Genetic Algorithms
Artificial Intelligence (CS 370D)
CS621: Artificial Intelligence
Short paths and spanning trees
Data Structures & Algorithms Graphs
EMIS 8373: Integer Programming
Autumn 2015 Lecture 11 Minimum Spanning Trees (Part II)
CSE 589 Applied Algorithms Spring 1999
CSCI2100 Data Structures Tutorial
Networks Prim’s Algorithm
Minimum Spanning Trees (MSTs)
CSE 373: Data Structures and Algorithms
Data Structures and Algorithms
Presentation transcript:

Optimization of order-picking using a revised minimum spanning table method 盧坤勇 國立聯合大學電子工程系

Minimum spanning tree : MST Problem statement: Given a connected graph G = (V, E) , where V={v0, v1, …, vn-1} is the set of vertices and E V × V is the set of edges. MST is a connected sub-graph of G of minimum cost with no cycles.

Traditional MST solution Linear programming method Integer programming S.T:

Some well-known heuristic algorithms Kruskal, 1956 Prim, 1959 Sollin, 1965

Revised MST algorithm(cont.) Step 1: listing the cost relationships of vertices by two dimensional matrices( n × n matrices) Step 2: choosing the minimum cost for each row and marking the minimum one from choose cost (e.g. Cij) Step 3: connecting the vertices of xi and xj and deleting the ith row and jth column from the matrices Step 4: repeating step 2 and 3, until deleting all rows and columns, or all vertices are selected

Revised MST algorithm(cont.) Step 5: detecting and marking the results by isolated node, tree, and cycle 5-1 : if single tree only exists, stop 5-2 : if a cycle tree exists, then de-cycling in a tree with minimum cost Step 6: connecting all isolated nodes and trees by some heuristic rules: e.g. Branch and Bound, GA, etc.

Example Step 1   X1 X2 X3 X4 X5 X6 X7 * 9 8 4 5 6 3 2 1 7

Example Step 2 Minimum cost / row   X1 X2 X3 X4 X5 X6 X7 * 9 8 4 5 6 3 2 1 7

Example (cont.) Step 3 X1 X2 X3 X4 X5 X6 X7 * 9 8 4 5 6 3 2 11 7 1   X1 X2 X3 X4 X5 X6 X7 * 9 8 4 5 6 3 2 11 7 1 x4→x5 

Example (cont.) Step 4 X1 X2 X3 X4 X5 X6 X7 * 9 8 4 5 6 3 2 11 7 1 12   X1 X2 X3 X4 X5 X6 X7 * 9 8 4 5 6 3 2 11 7 1 x4→x5  12 x5→x6  

Example (cont.) Step 4 X1 X2 X3 X4 X5 X6 X7 * 9 8 4 5 46 6 3 23 2 11 7   X1 X2 X3 X4 X5 X6 X7 * 9 8 4 5 46 x1→x7   6 Isolated vertex  3 23 2 x3→x4   11 7 1 x4→x5  12 x5→x6   24 x6→x3 35 x7→x1  

Example (cont.) Vertex index x1 x2 x3 x4 x5 x6 x7 Sequence 6 7 3 1 2 4 Step 5 Vertex index x1 x2 x3 x4 x5 x6 x7 Sequence 6 7 3 1 2 4 5 Destination Cycle index Results: Two cycles: x4-x5-x6-x3, x7-x1 One isolated vertex

Example (cont.) Step 6 6-1 de-cycling x4 → x5 →x6 →x3 →

Example (cont.) Step 6 6-2 connecting 1. choosing isolated vertex firstly x4 x3 x1 x7 x2 6 4 9 8 Alternative solutions: x2→x3, x3→x2, x7→x2

Example (cont.) Step 6 2. Connecting results x2 → x3 → x4 → x5 → x6

Example (cont.) x4 x1 x2 6 * x3 3 Step 6 3. Connecting other trees {x1,x7,x2} , {x4,x5,x6,x3} x4 x1 x2 6 * x3 3 Minimum cost Alternative solutions: x3→x1

Example (cont.) Step 6 4. Connecting results x4 → x5 → x6 → x3 →x1 → x7 → x2 Total cost : 15 5. Optimizing the results by using Branch and Bound or GA algorithms

Application of GA to optimize the generalized results Procedure 1 :Initialize the population Procedure 2 :Evaluate the fitness Procedure 3 :Parents selection Procedure 4 :Genetic operation

Application of GA to optimize the generalized results(cont.) Procedure 1 :Initialize the population Step1. Collect the groups against the results of MST and give a sequence number, ex : G1={2}, G2={1,7}, G3={4,5,6,3} Step2. Initialize parameters : index q=1, a population size s and population P = {Ø }. Step3. Randomly produce a integer number Pq to represent the group , ex : a number 1 represents the group G1.

Application of GA to optimize the generalized results (cont.) Procedure 1 :Initialize the population Step4. If Pq is feasible, go to step 5, or else go to step 3. Step5. If Pq is different from any previous individuals, then P = P + {Pq} , q=q+1, or else go to step 3. Step6. If q > s, then P = {p1, p2, …, Ps} is the initial population and stop; or else go to step3.

Application of GA to optimize the generalized results (cont.) Procedure 2 : Evaluate the fitness Step 1. Initialize a constant c, decrement rate d and evaluation value E. Step 2. Order the chromosomes in the decreasing order of evaluation value. Step 3. Based on E, calculate the fitness value Fi, which starts at c, ane reduces linearly with decrement rate r, Fi = c+ (i-1) r, i = (1,2,…,s) where s is the size of the population.

Application of GA to optimize the generalized results (cont.) Procedure 3 : Parents selection Step 1. Compute the fitness value of all the population members, Fsum = ,s is the population size. Step 2. Initialize, index i = 0 and a counter F = 0. Step 3. Randomly generate a real number f [0, Fsum]. Step 4. i = i + 1, F = F + fi .

Application of GA to optimize the generalized results (cont.) Procedure 3 : Parents selection Step 5. If F > f, then return selected position i and stop; or else go to step 4. Step6 . Select the first chromosome if n is smaller than or equal to the sum of cumulative probability of proceeding chromosomes.

Application of GA to optimize the generalized results (cont.) Procedure 4 : Genetic operation Step 1. Generate a bit string. Step 2. Check those numbers of parent1 against the ordered list of the bit string. Step 3. If those numbers against digit 1 from parent1, move those numbers from parent1 to offspring at the same position..

Application of GA to optimize the generalized results (cont.) Procedure 4 : Genetic operation Step 4. Check those numbers against digit 0 from parent1 and then find those numbers occurring on parent2. Step5 . Move those numbers to unfilled positions of the offspring in the same sequence of parent2.

Application of GA to optimize the generalized results (cont.) Example : crossover operation Bit string 1 0 0 1 0 1 0 0 1 1 Parent1 7 4 8 1 3 6 9 10 2 5 Offspring 7 3 8 1 10 6 4 9 2 5 Parent2 3 5 2 8 7 10 4 1 6 9

Application of GA to optimize the generalized results (cont.) Example : mutate operation Parent1 5 4 8 | 1 7 2 3 | 10 2 5 Offspring 5 4 8 | 3 7 2 1 | 10 2 5