A DVND Local Search Implemented on a Dataflow Architecture for the Minimum Latency Problem

This paper proposes a dataflow implementation for a local search to solve the Minimum Latency Problem (MLP), a variant of the Traveling Salesman Problem (TSP). Since the problem is NP-Hard, best results in literature report the use of metaheuristic strategies, mainly based on the concept of variable neighborhoods. The dataflow architecture was proposed in the 70's with programs represented as dependency graphs, but von Neumann architecture became the standard computing platform and dataflow has been only considered for theoretical experiments. Many state-of-the-art metaheuristics are harnessing computational power from emerging heterogeneous computing platforms, such as Graphics Processing Units (GPU), requiring to rethink some ideas of classic optimization algorithms in order to properly explore the architecture. We propose a hybrid dataflow architecture (simulated over CPU), where each node contains a GPU implementation that enumerates a neighborhood for the problem. The dataflow architecture uses a distributed network that provides scalability for solving large MLP instances, where each neighborhood exploration is part of a state-of-the-art Distributed Variable Neighborhood Descent (DVND). The whole scenario yield an heterogeneous multi-level parallelization approach that can be used to solve time consuming problems, not being coupled to specific instance or problem.

[1]  Nenad Mladenovic,et al.  A performance study on multi improvement neighborhood search strategy , 2017, Electron. Notes Discret. Math..

[2]  M. J. F. Souza,et al.  A hybrid heuristic algorithm for the open-pit-mining operational planning problem , 2010, Eur. J. Oper. Res..

[3]  Lucio Bianco,et al.  The traveling salesman problem with cumulative costs , 1993, Networks.

[4]  John N. Tsitsiklis,et al.  Special cases of traveling salesman and repairman problems with time windows , 1992, Networks.

[5]  Avi Mendelson,et al.  TERAFLUX: Harnessing dataflow in next generation teradevices , 2014, Microprocess. Microsystems.

[6]  Igor Machado Coelho,et al.  A Benchmark on Multi Improvement Neighborhood Search Strategies in CPU/GPU Systems , 2016, 2016 International Symposium on Computer Architecture and High Performance Computing Workshops (SBAC-PADW).

[7]  Anand Subramanian,et al.  A hybrid algorithm for a class of vehicle routing problems , 2013, Comput. Oper. Res..

[8]  Vítor Santos Costa,et al.  Trebuchet: exploring TLP with dataflow virtualisation , 2011, Int. J. High Perform. Syst. Archit..

[9]  Alejandro Duran,et al.  Ompss: a Proposal for Programming Heterogeneous Multi-Core Architectures , 2011, Parallel Process. Lett..

[10]  Thomas Hérault,et al.  DAGuE: A Generic Distributed DAG Engine for High Performance Computing , 2011, 2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and Phd Forum.

[11]  Brunno F. Goldstein,et al.  A Minimalistic Dataflow Programming Library for Python , 2014, 2014 International Symposium on Computer Architecture and High Performance Computing Workshop.

[12]  Gurindar S. Sohi,et al.  Dataflow execution of sequential imperative programs on multicore architectures , 2011, 2011 44th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[13]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[14]  Nenad Mladenovic,et al.  Variable neighborhood search for the travelling deliveryman problem , 2011, 4OR.

[15]  Igor Machado Coelho,et al.  A novel List-Constrained Randomized VND approach in GPU for the Traveling Thief Problem , 2018, Electron. Notes Discret. Math..

[16]  Vitor Nazário Coelho,et al.  Exploring parallel multi-GPU local search strategies in a metaheuristic framework , 2018, J. Parallel Distributed Comput..

[17]  Thibaut Vidal,et al.  A simple and effective metaheuristic for the Minimum Latency Problem , 2012, Eur. J. Oper. Res..

[18]  Felipe Maia Galvão França,et al.  Task Scheduling in Sucuri Dataflow Library , 2016, 2016 International Symposium on Computer Architecture and High Performance Computing Workshops (SBAC-PADW).

[19]  Michael J. Flynn,et al.  Some Computer Organizations and Their Effectiveness , 1972, IEEE Transactions on Computers.

[20]  Gurindar S. Sohi,et al.  Program Demultiplexing: Data-flow based Speculative Parallelization of Methods in Sequential Programs , 2006, 33rd International Symposium on Computer Architecture (ISCA'06).