filmov
tv
Optimization Methods for Robot Motion Planning in JuMP | Leong | JuliaCon 2024
Показать описание
Optimization Methods for Robot Motion Planning in JuMP by Alexander Leong
The optimization problem is as follows: our objective is to find the “smoothest” path from a starting point to an end point such that we avoid collision with any obstacles. The obstacles are assumed stationary for all time. Smooth means not jerky (i.e. low rate of change in acceleration over time).
To represent this problem, the map is divided into a set of safe regions. A safe region is one that does not contain any part of an obstacle. This is done so we can use mixed integer programming to assign path segments to safe regions. The paths themselves will be represented as polynomials. Using Hypatia, a generic conic solver with MOSEK solver one can solve this problem.
Once a feasible and optimal solution is found we need to visualize to verify the results. The talk will demonstrate using Makie to analyze these results. Furthermore, using IJulia, one can develop dashboards in an REPL like fashion so researchers and scientific programmers alike can focus on the problem at hand. We will discuss some main concepts such as observables, accepting user input and dynamically updating charts.
Finally, the talk will discuss the main results for a numerical experiment and outline the challenges associated with optimization-based approaches and techniques the practitioner can apply. This includes exploring some of the main APIs in JuMP and related math packages used to solve this optimization problem.
The talk is appropriate for a general audience especially for those in applied math, engineering, and robotics.
The optimization problem is as follows: our objective is to find the “smoothest” path from a starting point to an end point such that we avoid collision with any obstacles. The obstacles are assumed stationary for all time. Smooth means not jerky (i.e. low rate of change in acceleration over time).
To represent this problem, the map is divided into a set of safe regions. A safe region is one that does not contain any part of an obstacle. This is done so we can use mixed integer programming to assign path segments to safe regions. The paths themselves will be represented as polynomials. Using Hypatia, a generic conic solver with MOSEK solver one can solve this problem.
Once a feasible and optimal solution is found we need to visualize to verify the results. The talk will demonstrate using Makie to analyze these results. Furthermore, using IJulia, one can develop dashboards in an REPL like fashion so researchers and scientific programmers alike can focus on the problem at hand. We will discuss some main concepts such as observables, accepting user input and dynamically updating charts.
Finally, the talk will discuss the main results for a numerical experiment and outline the challenges associated with optimization-based approaches and techniques the practitioner can apply. This includes exploring some of the main APIs in JuMP and related math packages used to solve this optimization problem.
The talk is appropriate for a general audience especially for those in applied math, engineering, and robotics.