Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Hardware Accelerator for Combinatorial Optimization Fujian Li Advisor: Dr. Areibi."— Presentation transcript:

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

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

3 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

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

5 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

6 Simulated Annealing Algorithm

7 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!)

8 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

9 Traveling Salesman Problem ++ ++ ++ - Adder Tree

10 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.

11 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

12 Implementation

13 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...

14 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

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

16 Comparison ImplementationAverage Time per iteration Software-IBM RS600013 Hardware0.35 Speedup over RS600037 times

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

18 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

19 Thank You & Question?

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


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

Similar presentations


Ads by Google