High-performance simulation-based algorithms for an alpine ski racer’s trajectory optimization in heterogeneous computer systems

Abstract Effective, simulation-based trajectory optimization algorithms adapted to heterogeneous computers are studied with reference to the problem taken from alpine ski racing (the presented solution is probably the most general one published so far). The key idea behind these algorithms is to use a grid-based discretization scheme to transform the continuous optimization problem into a search problem over a specially constructed finite graph, and then to apply dynamic programming to find an approximation of the global solution. In the analyzed example it is the minimum-time ski line, represented as a piecewise-linear function (a method of elimination of unfeasible solutions is proposed). Serial and parallel versions of the basic optimization algorithm are presented in detail (pseudo-code, time and memory complexity). Possible extensions of the basic algorithm are also described. The implementation of these algorithms is based on OpenCL. The included experimental results show that contemporary heterogeneous computers can be treated as μ-HPC platforms-they offer high performance (the best speedup was equal to 128) while remaining energy and cost efficient (which is crucial in embedded systems, e.g., trajectory planners of autonomous robots). The presented algorithms can be applied to many trajectory optimization problems, including those having a black-box represented performance measure

[1]  Edsger W. Dijkstra,et al.  A note on two problems in connexion with graphs , 1959, Numerische Mathematik.

[2]  Marek Kisiel-Dorohinicki,et al.  Towards an Agent-Based Augmented Cloud , 2012, Journal of Telecommunications and Information Technology.

[3]  R Bellman,et al.  On the Theory of Dynamic Programming. , 1952, Proceedings of the National Academy of Sciences of the United States of America.

[4]  David R. Kaeli,et al.  Heterogeneous Computing with OpenCL - Revised OpenCL 1.2 Edition , 2012 .

[5]  J. Stillwell Mathematics and Its History , 2020, Undergraduate Texts in Mathematics.

[6]  Marek Kisiel-Dorohinicki,et al.  Agent-based computing in an augmented cloud environment , 2012, Comput. Syst. Sci. Eng..

[7]  Richard Bellman,et al.  ON A ROUTING PROBLEM , 1958 .

[8]  J. Betts Survey of Numerical Methods for Trajectory Optimization , 1998 .

[9]  Matthew Andrew Dalhousie Brodie,et al.  Development of fusion motion capture for optimisation of performance in alpine ski racing : a thesis presented in fulfilment of the requirements for the degree of Doctor of Philosophy in Science at Massey University, Wellington, New Zealand , 2009 .

[10]  Dhirendra Pratap Singh,et al.  New Approach for Graph Algorithms on GPU using CUDA , 2013 .

[11]  Rafal Szlapczynski,et al.  Customized crossover in evolutionary sets of safe ship trajectories , 2012, Int. J. Appl. Math. Comput. Sci..

[12]  N. Shimkin,et al.  Fast Graph-Search Algorithms for General-Aviation Flight Trajectory Generation , 2005 .

[13]  Héctor J. Sussmann,et al.  THE BRACHISTOCHRONE PROBLEM AND MODERN CONTROL THEORY , 2002 .

[14]  J. Currie,et al.  The Brachistochrone Problem: Mathematics for a Broad Audience via a Large Context Problem , 2008, The Mathematics Enthusiast.

[15]  Adam Wuerl,et al.  Genetic algorithm and calculus of variations-based trajectory optimization technique , 2003 .

[16]  László Pál,et al.  A Comparison of Global Search Algorithms for Continuous Black Box Optimization , 2012, Evolutionary Computation.

[17]  V. Torczon,et al.  Direct search methods: then and now , 2000 .

[18]  Jan C. Willems,et al.  300 years of optimal control: From the brachystochrone to the maximum principle , 1997 .

[19]  Robert J. Vanderbei Case Studies in Trajectory Optimization: Trains, Planes, and Other Pastimes , 2001 .

[21]  Massimiliano Vasile,et al.  MGA trajectory planning with an ACO-inspired algorithm , 2010, ArXiv.

[22]  Roman Debski,et al.  ComcuteJS: A Web Browser Based Platform for Large-scale Computations , 2013, Comput. Sci..

[23]  Kurt Mehlhorn,et al.  A Parallelization of Dijkstra's Shortest Path Algorithm , 1998, MFCS.

[24]  Massimiliano Vasile,et al.  A hybrid multiagent approach for global trajectory optimization , 2009, J. Glob. Optim..

[25]  Petr Posík,et al.  Restarted Local Search Algorithms for Continuous Black Box Optimization , 2012, Evolutionary Computation.

[26]  Jacek Blaszczyk,et al.  Optimization-based approach to path planning for closed chain robot systems , 2011, Int. J. Appl. Math. Comput. Sci..

[27]  Novica Nosovic,et al.  Dijkstra's shortest path algorithm serial and parallel execution performance analysis , 2012, 2012 Proceedings of the 35th International Convention MIPRO.

[28]  Martin Mössner,et al.  Determination of Kinetic Friction and Drag Area in Alpine Skiing , 1996 .

[29]  P. J. Narayanan,et al.  Accelerating Large Graph Algorithms on the GPU Using CUDA , 2007, HiPC.

[30]  M. Dramski A comparison between Dijkstra algorithm and simplified ant colony optimization in navigation , 2012 .

[31]  Oskar von Stryk,et al.  Direct and indirect methods for trajectory optimization , 1992, Ann. Oper. Res..