Design & Analysis of Algorithms Combinatorial optimization

Slides:



Advertisements
Similar presentations
Algorithm Design Techniques
Advertisements

CS6800 Advanced Theory of Computation
Multi-Objective Optimization NP-Hard Conflicting objectives – Flow shop with both minimum makespan and tardiness objective – TSP problem with minimum distance,
For Friday Finish chapter 5 Program 1, Milestone 1 due.
Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm
Hybridization of Search Meta-Heuristics Bob Buehler.
Reporter : Mac Date : Multi-Start Method Rafael Marti.
Ant Colony Optimization Optimisation Methods. Overview.
D Nagesh Kumar, IIScOptimization Methods: M1L4 1 Introduction and Basic Concepts Classical and Advanced Techniques for Optimization.
Ant Colony Optimization: an introduction
Metaheuristics The idea: search the solution space directly. No math models, only a set of algorithmic steps, iterative method. Find a feasible solution.
Ant colony optimization algorithms Mykulska Eugenia
Escaping local optimas Accept nonimproving neighbors – Tabu search and simulated annealing Iterating with different initial solutions – Multistart local.
CSM6120 Introduction to Intelligent Systems Other evolutionary algorithms.
Genetic Algorithms and Ant Colony Optimisation
Swarm Intelligence 虞台文.
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
Design & Analysis of Algorithms Combinatory optimization SCHOOL OF COMPUTING Pasi Fränti
(Particle Swarm Optimisation)
More on Heuristics Genetic Algorithms (GA) Terminology Chromosome –candidate solution - {x 1, x 2,...., x n } Gene –variable - x j Allele –numerical.
Heuristic Optimization Methods Tabu Search: Advanced Topics.
1 “Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations of things, solutions.
1 Short Term Scheduling. 2  Planning horizon is short  Multiple unique jobs (tasks) with varying processing times and due dates  Multiple unique jobs.
© Negnevitsky, Pearson Education, Lecture 9 Evolutionary Computation: Genetic algorithms Introduction, or can evolution be intelligent? Introduction,
Genetic algorithms (GA) for clustering Pasi Fränti Clustering Methods: Part 2e Speech and Image Processing Unit School of Computing University of Eastern.
1 Genetic Algorithms and Ant Colony Optimisation.
For Friday Finish chapter 6 Program 1, Milestone 1 due.
Genetic Algorithms Przemyslaw Pawluk CSE 6111 Advanced Algorithm Design and Analysis
Ant Algorithm and its Applications for Solving Large Scale Optimization Problems on Parallel Computers Stefka Fidanova Institute for Information and Communication.
Biologically Inspired Computation Ant Colony Optimisation.
Chapter 5. Advanced Search Fall 2011 Comp3710 Artificial Intelligence Computing Science Thompson Rivers University.
Genetic Search Algorithms Matt Herbster. Why Another Search?  Designed in the 1950s, heavily implemented under John Holland (1970s)  Genetic search.
Ch3 /Lecture #4 Brute Force and Exhaustive Search 1.
Genetic Algorithms. Solution Search in Problem Space.
Ant Colony Optimisation. Emergent Problem Solving in Lasius Niger ants, For Lasius Niger ants, [Franks, 89] observed: –regulation of nest temperature.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
1 Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations.
CSE 4705 Artificial Intelligence
Brute Force A straightforward approach, usually based directly on the problem’s statement and definitions of the concepts involved Examples: Computing.
Brute Force II.
Genetic Algorithms.
CSCI 4310 Lecture 10: Local Search Algorithms
USING MICROBIAL GENETIC ALGORITHM TO SOLVE CARD SPLITTING PROBLEM.
Scientific Research Group in Egypt (SRGE)
Meta-heuristics Introduction - Fabien Tricoire
School of Computer Science & Engineering
Chapter 3 Brute Force Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
Artificial Intelligence (CS 370D)
Subject Name: Operation Research Subject Code: 10CS661 Prepared By:Mrs
Prof. Marie desJardins September 20, 2010
Genetic Algorithms CPSC 212 Spring 2004.
Genetic Algorithms and TSP
CS621: Artificial Intelligence
Approximation Algorithms
metaheuristic methods and their applications
Computational Intelligence
Metaheuristic methods and their applications. Optimization Problems Strategies for Solving NP-hard Optimization Problems What is a Metaheuristic Method?
Multi-Objective Optimization
Chapter 3 Brute Force Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
Ant Colony Optimization
3. Brute Force Selection sort Brute-Force string matching
Chapter 5. Advanced Search
3. Brute Force Selection sort Brute-Force string matching
Computational Intelligence
Traveling Salesman Problem by Genetic Algorithm
Beyond Classical Search
Population Based Metaheuristics
Simulated Annealing & Boltzmann Machines
3. Brute Force Selection sort Brute-Force string matching
Presentation transcript:

Design & Analysis of Algorithms Combinatorial optimization SCHOOL OF COMPUTING Design & Analysis of Algorithms Combinatorial optimization Pasi Fränti 27.4.2016

Optimization techniques Local search Stochastic variations of local search Genetic algorithms Swarm Intelligence

Knapsack problem Simplified Input: Weight of N items {w1, w2, ..., wn} Knapsack limit S Output: Selection for knapsack: {x1,x2,…xn} where xi {0,1}. 5 3 7 Sample input: wi={2,3,5,7,11} S=15 Max 15 2 11

Knapsack as decision tree Yes No Chooce 2 2 - Yes No Yes No Chooce 3 5 2 3 - Yes No Yes No Yes No Yes No Chooce 5 10 5 7 2 8 3 5 - Yes No Yes Chooce 7 17 10 12 5 5 14 9 2 15 8 10 3 12 5 7 - … … … … No 28 12 14 13 26 15 12 -

In context of search tree Brute force: search full tree 2 - 5 2 3 - Heuristics Greedy 10 5 7 2 8 3 5 - 17 10 12 5 5 14 9 2 15 8 10 3 12 5 7 - … … … 28 10 12 14 13 26 15 12 - Local search

Local search

Main principle of local search Select one and move

Structure of local search Generate initial solution REPEAT Generate a set of new solutions Evaluate the new solutions Select the best solution UNTIL stopping criterion met best 13 15 9 12 11 7 13 21 9 12 14 17 best

Components of local search Representation of solution Bit string (0010111010001…) Problem-domain data structure {1, 3, 5, 2…} Neighborhood function (move) Bits: (0010111010001…)  (0010011010001…) Application domain: {1, 3, 5, 2…}  {1, 5, 3, 2…} Search strategy Best-improvement: try all, select best First-improvement: select first that improves. TSP

Movement in neighborhood Study neighbor solutions

Search strategy Best improvement: First improvement: first best 13 21 9 12 14 17 12 first best 21 13 Hill-climbing (max!) / Descendent (min! 15 13 21 9 12 14 17 8 dead end 7 6 8 11 10 9 5 4 8 7

Accept only better solutions Hill climbing Accept only better solutions

Local and global maxima

Combining local search and hill-climbing

Local search for Knapsack

Representation of knapsack Represent solution as bit string (x1x2,…xn), where xi {0,1}. Problem instance: wi= (2,3,5,7,11), S=15. Solution with elements 2,3 and 7 is represented as 11010.

Move in knapsack S=15 W=[2, 3, 5, 7, 11] Single bit change: 01 or 10

Extended neighborhood S=15 W=[2, 3, 5, 7, 11] Two operations: 01 or 10 Swap bit location 10011

Local maximum S=15 W=[2, 3, 5, 7, 11]

Tabu search S=15 W=[2, 3, 5, 7, 11] Prevents search to return previously visited solutions Tabu! Select the next best

Tabu search (2nd iteration) S=15 W=[2, 3, 5, 7, 11]

Traveling salesman problem Permute local changes in given route ...  pi-1  pi  pi+1  ... ...  pi-1  pi+1  pi  ... ...  pi  pi-1  pi+1  ... ...  pi  pi+1  pi-1  ... ...  pi+1  pi  pi-1  ... ...  pi+1  pi-1  pi  ...

Local search for TSP

TSP example E  F  G  H  A 4 +  + 2 +  = 2 + 6 E  F  H  G  A 4 + 3 + 2 + 2 = 11 min! E  G  F  H  A  +  + 3 +  = 3 + 3 E  G  H  F  A  + 2 + 3 +  = 2 + 5 E  H  G  F  A 3 + 2 +  +  = 2 + 5 E  H  F  G  A 3 + 3 +  + 2 = 1 + 6

Genetic algorithm

Genetic algorithm (GA) Needs more material!

Main structure of GA Generate a set of initial solutions. REPEAT Generate new solutions by crossover. Mutate the new solutions (optional). Evaluate the candidate solutions. Retain best candidates and delete the rest. UNTIL stopping criterion met.

Permuting pairs for crossover Elitist approach using zigzag scanning among the best solutions

Chess playing

Minmax technique

Tic-tac-toe example

Optimizing chess playing Revise

Evaluation function

Minmax example Redraw 34

Minmax playing: Min’s move 35

Minmax playing: Max’s move Minimax maximizes the worst-case outcome for max 36

Chess Game tree

Beyond the horizon What value is the position?

Evaluating Chess position

Positional factors

Initial value range

Result of optimization

Swarm intelligence

Swarm intelligence (SI) Social intelligence: individual behavior maybe naive but joint effect can be intelligent. Decentralized: no central control of the individuals of the colony Self-organized: individual adapts to environment and other members of colony Robust: Task is completed even if some individuals fail

Ant colony optimization (ACO) Main principle: Emitting pheromone between nest and food Joint efforts to carry loads Solving TSP by ants: Sending ants to make randomized tours Short links chosen more often than long ones Good tracks are marked by pheromone Tracks with high pheromone chosen more often

Ant colony optimization Initialization: Generate randomized tours. Smaller links chosen more often than longer ones Simulate pheromone: Subtract cost of the links in best solution (-1) Increase the ones in the worst solution (+1) Tours are evaluated using the original graph.

Ant colony optimization 1st round

Ant colony optimization 2nd round

The end