Hardware Accelerator for Combinatorial Optimization Fujian Li Advisor: Dr. Areibi.

Slides:



Advertisements
Similar presentations
FPGA (Field Programmable Gate Array)
Advertisements

G5BAIM Artificial Intelligence Methods
Local Search Algorithms Chapter 4. Outline Hill-climbing search Simulated annealing search Local beam search Genetic algorithms Ant Colony Optimization.
CS6800 Advanced Theory of Computation
Neural and Evolutionary Computing - Lecture 4 1 Random Search Algorithms. Simulated Annealing Motivation Simple Random Search Algorithms Simulated Annealing.
Implementation Approaches with FPGAs Compile-time reconfiguration (CTR) CTR is a static implementation strategy where each application consists of one.
Algorithm Strategies Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
1 Chapter 5 Advanced Search. 2 Chapter 5 Contents l Constraint satisfaction problems l Heuristic repair l The eight queens problem l Combinatorial optimization.
Recent Development on Elimination Ordering Group 1.
ENGIN112 L38: Programmable Logic December 5, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 38 Programmable Logic.
Nature’s Algorithms David C. Uhrig Tiffany Sharrard CS 477R – Fall 2007 Dr. George Bebis.
MAE 552 – Heuristic Optimization
1 Chapter 5 Advanced Search. 2 l
System Partitioning Kris Kuchcinski
FPGA Acceleration of Phylogeny Reconstruction for Whole Genome Data Jason D. Bakos Panormitis E. Elenis Jijun Tang Dept. of Computer Science and Engineering.
Ant Colony Optimization Optimisation Methods. Overview.
A TABU SEARCH APPROACH TO POLYGONAL APPROXIMATION OF DIGITAL CURVES.
CS 151 Digital Systems Design Lecture 38 Programmable Logic.
Ant Colony Optimization: an introduction
R OBERTO B ATTITI, M AURO B RUNATO. The LION Way: Machine Learning plus Intelligent Optimization. LIONlab, University of Trento, Italy, Feb 2014.
Metaheuristics The idea: search the solution space directly. No math models, only a set of algorithmic steps, iterative method. Find a feasible solution.
Elements of the Heuristic Approach
Section I Introduction to Xilinx
1 Miodrag Bolic ARCHITECTURES FOR EFFICIENT IMPLEMENTATION OF PARTICLE FILTERS Department of Electrical and Computer Engineering Stony Brook University.
1 IE 607 Heuristic Optimization Simulated Annealing.
Heuristic Optimization Methods
Global Optimization The Problem minimize f(x) subject to g i (x)>b i i=1,…,m h j (x)=c j j=1,…,n When x is discrete we call this combinatorial optimization.
Algorithms and their Applications CS2004 ( )
Search Methods An Annotated Overview Edward Tsang.
Hardware Implementation of a Memetic Algorithm for VLSI Circuit Layout Stephen Coe MSc Engineering Candidate Advisors: Dr. Shawki Areibi Dr. Medhat Moussa.
Optimization Problems - Optimization: In the real world, there are many problems (e.g. Traveling Salesman Problem, Playing Chess ) that have numerous possible.
1 Chapter 5 Advanced Search. 2 Chapter 5 Contents l Constraint satisfaction problems l Heuristic repair l The eight queens problem l Combinatorial optimization.
1 Exploring Custom Instruction Synthesis for Application-Specific Instruction Set Processors with Multiple Design Objectives Lin, Hai Fei, Yunsi ACM/IEEE.
Escaping Local Optima. Where are we? Optimization methods Complete solutions Partial solutions Exhaustive search Hill climbing Random restart General.
Discrete optimization of trusses using ant colony metaphor Saurabh Samdani, Vinay Belambe, B.Tech Students, Indian Institute Of Technology Guwahati, Guwahati.
Reconfigurable Computing Using Content Addressable Memory (CAM) for Improved Performance and Resource Usage Group Members: Anderson Raid Marie Beltrao.
Doshisha Univ., Kyoto, Japan CEC2003 Adaptive Temperature Schedule Determined by Genetic Algorithm for Parallel Simulated Annealing Doshisha University,
An FPGA Implementation of the Ewald Direct Space and Lennard-Jones Compute Engines By: David Chui Supervisor: Professor P. Chow.
Thursday, May 9 Heuristic Search: methods for solving difficult optimization problems Handouts: Lecture Notes See the introduction to the paper.
Applications of Dynamic Programming and Heuristics to the Traveling Salesman Problem ERIC SALMON & JOSEPH SEWELL.
Exact and heuristics algorithms
A Simple Example The Traveling Salesman Problem: Find a tour of a given set of cities so that each city is visited only once the total distance traveled.
4/19/20021 TCPSplitter: A Reconfigurable Hardware Based TCP Flow Monitor David V. Schuehler.
G5BAIM Artificial Intelligence Methods
Introduction to Simulated Annealing Study Guide for ES205 Xiaocang Lin & Yu-Chi Ho August 22, 2000.
Probabilistic Algorithms Evolutionary Algorithms Simulated Annealing.
Ant Algorithm and its Applications for Solving Large Scale Optimization Problems on Parallel Computers Stefka Fidanova Institute for Information and Communication.
Presenter: Leo, Shih-Chang, Lin Advisor: Frank, Yeong-Sung, Lin /12/16.
Optimization Problems
FPGA CAD 10-MAR-2003.
Ramakrishna Lecture#2 CAD for VLSI Ramakrishna
A Design Flow for Optimal Circuit Design Using Resource and Timing Estimation Farnaz Gharibian and Kenneth B. Kent {f.gharibian, unb.ca Faculty.
Chapter 5. Advanced Search Fall 2011 Comp3710 Artificial Intelligence Computing Science Thompson Rivers University.
Custom Computing Machines for the Set Covering Problem Paper Written By: Christian Plessl and Marco Platzner Swiss Federal Institute of Technology, 2002.
Intro. ANN & Fuzzy Systems Lecture 37 Genetic and Random Search Algorithms (2)
Escaping Local Optima. Where are we? Optimization methods Complete solutions Partial solutions Exhaustive search Hill climbing Exhaustive search Hill.
Tabu Search Applications Outlines: 1.Application of Tabu Search 2.Our Project with Tabu Search: EACIIT analytics.
Discrete Optimization MA2827 Fondements de l’optimisation discrète Approximate methods: local search Material based.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
N-Queens Boanerges Aleman-Meza Cheng Hu Darnell Arford Ning Suo Wade Ertzberger.
Discrete Optimization
Heuristic Optimization Methods
Subject Name: Operation Research Subject Code: 10CS661 Prepared By:Mrs
Study Guide for ES205 Yu-Chi Ho Jonathan T. Lee Nov. 7, 2000
Verilog to Routing CAD Tool Optimization
Metaheuristic methods and their applications. Optimization Problems Strategies for Solving NP-hard Optimization Problems What is a Metaheuristic Method?
School of Computer Science & Engineering
FPGA Interconnection Algorithm
EMIS 8373: Integer Programming
Simulated Annealing & Boltzmann Machines
Presentation transcript:

Hardware Accelerator for Combinatorial Optimization Fujian Li Advisor: Dr. Areibi

Case Study for Implementing Traveling Salesman Problem Key words:  Combinatorial problem  Heuristic method  Local Search  Simulated Annealing algorithm  Traveling Salesman Problem (TSP)  List representation

Combinatorial Problems Combinatorial problems  Traveling Salesman Problem, Partitioning,... Heuristic method Local Search, Simulated Annealing, Tabu Search,...  Not guarantee to find global optimum  Move through search space using local information to guide the move.  Time consuming

Solution Space Minimization Cost Function Global Optimum Local Optima Local Search Local Search is the basis for heuristic methods

Local Search Generate Initial Feasible Solution S0 Repeat  Select a Move from Neighborhood: S = N(S0)  Compute Change in Cost: f(S) - f(S0)  If accept then S0=S Until Stopping Condition

Simulated Annealing Algorithm

Traveling Salesman Problem Given n cities and distances between each of the cities, Find a cycle that hits each city once that minimize the total distance traveled. Combinatorial problem Complexity : O(N!)

Xj X(j-1)X(j+1) D[Xj, X(j-1)] D[Xi, X(i+1)] D[Xj, X(j+1)] D[Xi, X(i-1)] X(i-1) Xi X(i+1) Traveling Salesman Problem Swap two cities to move through the solution space

Traveling Salesman Problem Adder Tree

Implementation List data structure is good for heuristic algorithms  Grow and shrink easily  Implement common operations easily Move An item is moved from one list to the end of another list. Swap Two items are swapped from the same or different lists. Reposition The position of an item in a list is changed.

Implementation Memory for storing solutions A unit for generating a move A unit for computing the change in cost A unit for using Boltzmann equation

Implementation

Implementation An Aptix Ap4 reconfigurable logic board  Xilinx XC4010 FPGAs, memory devices,... FPGA for  A move generator  The adder tree  Update unit  Finite state machine...

Implementation A lookup table for Boltzmann equation  Exponential computation by FPGA is difficult  Contain the values of Boltzmann equation for different values of  The table is reloaded each time the temperature is changed

Implementation FPGAs are not suitable for implementing large memories Memory devices for  The multiple copies of the solution list  Distances

Comparison ImplementationAverage Time per iteration Software-IBM RS Hardware0.35 Speedup over RS times

Future Improvement Pipeline scheme Very high speed memory  Block RAM on FPGA Interconnection delay between devices on Aptix

References 1. David Abramson Application Specific Computers for Combinatorial Optimization 2. David Abramson FPGA Based Custom Computing Machines for Irregular Problems 3. David Abramson A Very High Speed Architecture to Support Simulated Annealing

Thank You & Question?

Application of FPGA Satisfied density and speed of FPGA Efficient synthesis tools