Fast-Racing: An Open-Source Strong Baseline for SE(3) Planning in Autonomous Drone Racing
Z. Han, Z. Wang, N. Pan, Y. Lin, C. Xu and F. Gao, โFast-Racing: An Open-Source Strong Baseline for Planning in Autonomous Drone Racing,โ in IEEE Robotics and Automation Letters, vol. 6, no. 4, pp. 8631-8638, Oct. 2021, doi: 10.1109/LRA.2021.3113976.
์์ ICRA ๋ ผ๋ฌธ๊ณผ ๊ฒฝ๋ก ์์ฑ ๋ฐฉ์์ ๋์ผํ์ง๋ง ๋๋ก ๋ชจ๋ธ๋ง / GPU ์ฌ์ฉ / ์๋ฎฌ๋ ์ด์ ํ๊ฒฝ ์ ์ ๋ฑ์ ํ๋ฉฐ ์์ผ๋ก์ SE(3) ๊ฒฝ๋ก ๊ณํ ๋ ผ๋ฌธ๋ค์ ๋น๊ตํ ์ ์๋ ๊ธฐ์ค์ ์ ์ํ์๋ค.
nonlinear constraints ๋ฅผ cubic and max function ์ผ๋ก ๋ฐ๊ฟ unconstrained optimization problem ์ quasi-Newton method๋ก ํด๊ฒฐํ๋ ๋ด์ฉ์ ๊ฐ์ผ๋, ๋ค๋ฅธ ๋ฐฉ์์ผ๋ก ์์์ ํํํ์ฌ ์ฐธ๊ณ ํ๊ณ ์ด๋ฅผ ๋ณ๋ ฌ ์ปดํจํ ์ผ๋ก ์ฐ๊ฒฐํ์ฌ ์ฑ๋ฅ์ ๊ฐ์ ํ ์ ๋ ์ฃผ๋ชฉํ ๋ง ํ๋ค.
Introduction
๋๋ก ๋ ์ด์ฑ์์ planning ์ ๋ํ ๋ฒค์น๋งํฌ๊ฐ ์๊ณ planning ์์ ์คํ์์ค๋ก ๊ณต๊ฐ๋ baseline๋ ๋ถ์ฌํ๋ค.
The reason is that SE(3) planning is much more complicated than traditional planning in because the former requires group operations while conventional optimizers require decision variables in Euclidean spaces.
Todo
- ์ ์์์ planning ์ฐจ์ด ๋ช ํํ๊ฒ ์ดํดํ๊ธฐ
Dataset and AirSim
- A. Antonini, W. Guerra, V. Murali, T. Sayre-McCord, and S. Kara-man, โThe Blackbird Dataset: A large-scale dataset for UAV perception in aggressive flight,โ in Proc. Int. Symp. Exp. Robot., Springer, 2018, pp. 130โ139.
- J. Delmerico, T. Cieslewski, H. Rebecq, M. Faessler, and D. Scaramuzza, โAre we ready for autonomous drone racing? The UZH-FPV drone racing dataset,โ in Proc. IEEE Int. Conf. Robot. Automat., 2019, pp. 6713โ6719.
- R. Madaan et al., โAirSim drone racing lab,โ in Proc. NeurIPS Competition Demonstration, PMLR, 2020, pp. 177โ191.
์ฃผ์ contribution
- simulation platform designed for SE(3) planning
- trajectory optimization based on parallel computing
ํนํ, ๋คํญ์๊ณผ ์ผ๋ก ์ ๋ฆฌ๋๋ ๋ชฉ์ ํจ์์ gradient๋ฅผ total time, constraints point์ discretization number ์ ๋ํด GPU ์ฐ๋ ๋ / ๋ธ๋ญ์ผ๋ก ๋ถํ ํ์ฌ ์ฐ์ฐํ๋ ๋ฐฉ์์ ์ ์ํ ๊ฒ์ด ์ธ์์ ์ด์๋ค.
๋ฌธ์ ์
- a known map / static racing tracks; ์ข์ ํ์ ๋ฌผ๋ก ์ ์ฒด ์ง๋์ ๋ํ ์ ๋ณด๊ฐ ์์ด์ผ ํ๊ณ , ๋์ ์ฅ์ ๋ฌผ์ ๋ํ ํํผ๊ฐ ๋ถ๊ฐ๋ฅํ๋ค
- a global trajectory offline before the racing starts; ์ฒ์ ์ต์ ํ๋ฅผ ์ํ ์ ์ญ ๊ฒฝ๋ก ์์ฑ์ด ํ์ํ๋ค
Related Works
ํฐ ๋ด์ฉ์ด ์์ด ์ ํ ์ฐ๊ตฌ ๋ฌธ์ ์ ์ง์ ๊ฑฐ ์ ๋๋ง ์์ฝ
A. Autonomous Drone Racing
๋๋ก ๋ ์ด์ฑ๊ณผ ๊ฐ์ ํ๊ฒฝ์์์ visual-based ์ ์ํ ์ถ์ (state estimation)์ ์ํ ๋ฐ์ดํฐ์ ๋ค๋ก Blackbird dataset[4] ๊ณผ UZH-FPV dataset[5] ๋ฅผ ์ ์ํ์๋ค.
B. SE(3) Planning
Configuration spaces with neglected attitude of the drone
- D. Mellinger and V. Kumar, โMinimum snap trajectory generation and control for quadrotors,โ in Proc. IEEE Int. Conf. Robot. Automat., 2011, pp. 2520โ2525.
- F. Gao, W. Wu, Y. Lin, and S. Shen, โOnline safe trajectory generation for quadrotors using fast marching method and Bernstein basis polynomial,โ in Proc. IEEE Int. Conf. Robot. Automat., 2018, pp. 344โ351.
- B. Zhou, F. Gao, L. Wang, C. Liu, and S. Shen, โRobust and efficient quadrotor trajectory generation for fast autonomous flight,โ IEEE Robot. Automat. Lett., vol. 4, no. 4, pp. 3529โ3536, Oct. 2019.
- X. Zhou, Z.Wang, H. Ye, C. Xu, and F. Gao, โEGO-Planner: An ESDF-free gradient-based local planner for quadrotors,โ IEEE Robot. Automat. Lett., vol. 6, no. 2, pp. 478โ485, Apr. 2021.
์์ ๋ ผ๋ฌธ๋ค์์๋ ํ์์ ์ผ๋ก ์ธ์ฉ๋๋ [12] ์์๋ differentially flat system ๊ณผ time vector ์ ๋คํญ์ ๊ณ์๋ฅผ ํตํด state์ control input์ ์ป์ด ๋ด์๋ค.
๊ทธ๋ฌ๋ ์ ๋ ผ๋ฌธ๋ค์ ๋๋ก ์ ์์ธ(attitude)๊ฐ ๊ณ ๋ ค๋์ง ์์ configuration space๋ฅผ ํ์๋ก ํ๋ค.
์๋ ๋ ผ๋ฌธ๋ค์ SE(3) planning ๋ฌธ์ ๋ฅผ ๋งค์ฐ ๋จ์ํํ์ฌ ํด๊ฒฐํ๊ณ , ๊ณ ์ ๋ attitude constraints ์ ๋ํด์๋ง ๊ฒฝ๋ก๋ฅผ ๊ณํํ ์ ์๋ค.
over-simplify SE(3) planning and fixed attitude constraints
- D. Falanga, E. Mueggler, M. Faessler, and D. Scaramuzza, โAggressive quadrotor flight through narrow gaps with onboard sensing and computing using active vision,โ in Proc. IEEE Int. Conf. Robot. Automat., 2017, pp. 5774โ5781.
- G. Loianno, C. Brunner, G. McGrath, and V. Kumar, โEstimation, control, and planning for aggressive flight with a small quadrotor with a single camera and IMU,โ IEEE Robot. Automat. Lett., vol. 2, no. 2, pp. 404โ411, Apr. 2017.
- T. Hirata and M. Kumon, โOptimal path planning method with attitude constraints for quadrotor helicopters,โ in Proc. Int. Conf. Adv. Mechatronic Syst., 2014, pp. 377โ381.
์ด์ ์ฒ์ ์ดํด๋ดค๋ Liu et al. ๋ ผ๋ฌธ์ด kinodynamic searching ๋ฐฉ์์ผ๋ก resolution completeํ SE(3) planner๋ฅผ ์ ์ํ์์ผ๋, search-based method์ ํ๊ณ๋ก ์ฐ์ฐ ์๊ฐ์ด๋ ๋ฉ๋ชจ๋ฆฌ ์์๊ฐ ๋งค์ฐ ์ปค์ ์ค์ ๋ก ์ฌ์ฉํ๊ธฐ์๋ ์ด๋ ค์์ด ์์๋ค.
๋ณธ์ธ๋ค์ด ๋ธ ๋ ผ๋ฌธ์ธ GCOPTER ๊ฐ high-quality ์ SE(3) ๊ถค์ ์ ๋ง๋ค์ด๋ด์๋ค๊ณ ์ธ๊ธํ์์ง๋ง, ์ด ๋ ผ๋ฌธ๋ ์ ์ฉ๋ฐฉ์์ ๋ํด์ ์์ ํ ํด๊ฒฐํด๋ด์ง๋ ๋ชปํ์๋ค. (๋ณ๋ ฌ ๊ตฌ์กฐ๋ฅผ ํตํ ์ฑ๋ฅ ๊ฐ์ ์ ์ํ ์ธ๊ธ์ผ๋ก ๋ณด์)
GCOPTER
- Z. Wang, X. Zhou, C. Xu, and F. Gao, โGeometrically constrained trajec- tory optimization for multicopters,โ 2021, arXiv:2103.00190.
๋ฐ๋ผ์ ๋ณธ ๋ ผ๋ฌธ์์๋ ์ผ๋ฐ์ ์ธ ํ์์ ๋๋ก ์ ์ ์ฉ ๊ฐ๋ฅํ ๋ณ๋ ฌ ๊ตฌ์กฐ์ ์ต์ ์ ์ด๋ฅผ ์ค์ ๋ก ์ ์ฉํ์ฌ baseline์ผ๋ก ์ปค๋ฎค๋ํฐ์ ์ ๊ณตํ๋ค.
A High-Performance SE(3) Planner
์ด์ ๋ ผ๋ฌธ๋ค์ ๊ฒฝ๋ก ์์ฑ(trajectory generation)๋ค ์์ฃผ๋ก ๋ค๋ค๋ค๋ฉด ๋ณธ ๋ ผ๋ฌธ์ ๊ฒฝ๋ก ๊ณํ(trajectory planning)์ ๋ ๋ชฉ์ ์ ๋ง์ท๋ค๊ณ ๋ณด์์ผ ํ ๊ฒ ๊ฐ๋ค.
๊ทธ๋์ input ์ผ๋ก๋ grid map, initial and goal states ์ด๊ณ output ์ผ๋ก๋ feasible ํ SE(3) ๊ฒฝ๋ก๋ฅผ ๋ง๋ค์ด๋ธ๋ค.
A. Safe Constraint

์ฅ์ ๋ฌผ ํํผ๊ฐ ๋ณด์ฅ๋ ๊ฒฝ๋ก ์ต์ ํ์ ์ฌ์ฉ๋ safe constraint ๋ก flight corridor๋ฅผ ์ฌ์ฉํ๋ค.
์ด ๊ฐ๋ ์ convex polyhedron ์ ์ฌ์ฉํ์ฌ ๋๋ก ์ ๋ชจ๋ธ๋ก๋ถํฐ ์ฃผ์ด์ง ๋งต๊ณผ ์ถฉ๋ํ์ง ์๋ ๊ฒ์ ๋ณด์ฅํ ๋ก ํ๋ค.
- ์์ ์ง์ ์ผ๋ก๋ถํฐ ๊ฒฝ๋ก ํ์์ ์ํํ๋ค.
- ์ ํด๋์ ์ ํ ๊ฑฐ๋ฆฌ๋ฅผ ๋์ง ์๋ ๊ฐ์ฅ ๋จผ ๋ฅผ ๋ถํฐ ์ฐพ๋๋ค. path search ์ด๋ฏ๋ก collision-free ํ๋๋ก ํ๋ค.
- RILS ๋ฅผ ์ฌ์ฉํ์ฌ 2. ์์ ์ป์ ์ง์ ์์ convex polyhedron ์ ์์ฑํ๋ค.
- ์ง์ ์ ์ค๊ฐ ์ง์ ์ ์๋ก์ด ๋ก ํ์ฌ 2. ๋ถํฐ ๋ค์ ์ํํ๊ณ convex hull ์์ ๋ง์ง๋ง ์ง์ ์ด ํฌํจ๋ ๋ ๊น์ง ๋ฐ๋ณตํ๋ค.
RILS
- S. Liu et al., โPlanning dynamically feasible trajectories for quadrotors using safe flight corridors in 3-D complex environments,โ IEEE Robot. Automat. Lett., vol. 2, no. 3, pp. 1688โ1695, Jul. 2017.
Yang et al. ์์ polyhedrons ๊ด๋ จ ๋ ผ๋ฌธ ์์ ์ธ์ฉ๋ ๋ ผ๋ฌธ์ด๊ธฐ๋ ํ๊ณ ์ฐ๊ด์ฑ ์๋ ๋ ผ๋ฌธ๋ ์์ด์ ๋์ค์ ํ๋ฒ ๋ด๋ ์ข์ ๊ฒ ๊ฐ๋ค.
B. Problem Formulation
๋๋ค์์ ๋ด์ฉ์ด GCOPTER ๋ ผ๋ฌธ๊ณผ Yang et al. ๊ณผ ์ ์ฌํ๋ค.
๋๋ก ์ differentially flat system ์ ํตํด ๋ชจ๋ธ๋งํ vertex ๋ฅผ ์ ์ํ๊ณ ์ด๋ฅผ polyhedron ์ผ๋ก ์ ์ํ๋ค. ๊ทธ๋ฆฌ๊ณ ๋คํญ์์ผ๋ก ํํํ ์ ์๋ position ์ ์๊ฐ์ ๋ํด ๋ถํ ํ์ฌ ๊ฒฝ๋ก๋ฅผ ์์์ผ๋ก ํํํ์ฌ optimal problem์ ์ ์ํ๋ค.

์์ ํ์์ฒด, ์ง์ก๋ฉด์ฒด์ ๋ฌ๋ฆฌ ๋ณธ ๋ ผ๋ฌธ์ ์ฌ๋ฌ ๋ค๋ฉด์ฒด๋ก ํํ๋๋ ๋ชจ๋ธ๋ก ์ ์ํ์๋ค.
์ด๋ฅผ k-DoP (the Boolean intersection of extents along k directions) ํน์ ์ง์ ์ ์ํ์ฌ ์๋์ ๊ฐ์ด ํํํ๋ค.
์ฌ๊ธฐ์ ๋ ๋๋ก ์ ์์ธ๋ฅผ ํํํด์ฃผ๋ rotation matrix ์ด๋ค. ๋ ๊ผญ์ง์ ์ ์ ์ด๊ณ ๋ ๋ฒ์งธ ๊ผญ์ง์ ์ ์ขํ์ด๋ค. (๋น์ฐํ ๊ฐ ๊ณฑํด์ง๊ณ ๊ฐ ๋ํด์ง๋ฏ๋ก body frame ์ด๋ค.)
polyhedron์ผ๋ก ์ ์ํ๋ flight corridor ๋ ์๋ ์ด๋ฏธ์ง๋ก ๋์ฒดํ๊ณ ํจ์คโฆ

๊ทธ๋์ constraints ๋ฅผ ๊ณ ๋ คํ ๊ฒฝ๋ก ์ต์ ํ ๋ฌธ์ ๋ฅผ ์๋์ ๊ฐ์ด ์ ์ํ๋ค.

์ cubic penalty function ์ด๋ค. () ๋๋จธ์ง ์ด์ด์ง๋ ์์๋ค๋ ๋ชจ๋ nonlinear constraints ๋ฅผ cubic penalty term์ผ๋ก ๋ฐ๊ฟ unconstrained optimization ์ผ๋ก ๋ฐ๊พธ๊ธฐ ์ํ ๋ด์ฉ์ผ๋ก, GCOPTER ๋ ผ๋ฌธ๊ณผ Yang et al. ์ ๋ ์์ธํ ์ค๋ช ๋์ด ์๋ค.
๋ค๋ง ๊ทธ ์ ์๋ normalized ํ ์๊ฐ์ ๋ํ ๊ฐ ๊ฒฝ๋ก๊ฐ() ์๋์ resolution ๊ฐ ์์๋๋ฐ ์ฌ๊ธฐ์์๋ ๊ณ ๋ ค๋ ๊ฒ์ธ์ง ๋ชจ๋ฅด๊ฒ ๋ค.
๋ํ, ๊ฐ๊ฐ penalty term์ ๊ฐ์ค์น ๊ฐ ์์ด์ ์ธ์ง ์ฌํ๊น์ง์ ๋ ผ๋ฌธ๋ค์์ control effort ์ ๋ํด ๋ก ํํ๋์ด ๋ํด์ง ๊ฐ์ค์น ๊ฐ ์์ด์ก๋ค.
์ ์์์์ ๋ vertex์ ๊ฐฏ์์ด๊ณ ๋ hyperplane์ ๊ฐฏ์์ด๋ค.
์ต์ ๊ฐ์ ๊ตฌํ๊ธฐ ์ํด์๋ ๋ฏธ๋ถ ๊ฐ๋ฅํด์ผ ํ๋๋ฐ ์ด๊ฒ์ ๋ํด์๋ ์ดํ ์ฑํฐ์์ ๋ค๋ฃฌ๋ค. ๊ทธ๋ฆฌ๊ณ gradient ํํ์ ๋จ์ํ๊ฒ ํ๊ธฐ ์ํด smoothness cost ๋ฅผ ๋ก ํ๊ธฐํ๋ค.
C. Gradient Calculation
๋คํญ์ ๊ถค์ ์์ ๊ณ์ ํ๋ ฌ์ ๋ก ํ๊ณ ์๊ฐ ๋ฒกํฐ ๋ก ํ์ฌ ์๋์ ๊ฐ์ด ๋ฒ์งธ ๊ถค์ ์ ํํํ๋ค.
๊ทธ๋ ๋ค๋ฉด ์ ์ฒด ๊ถค์ ์ ๋ํ ๊ณ์ ํ๋ ฌ (the coefficient matrix) ์ ์๊ฐ ํ ๋น ๋ฒกํฐ (time allocation vector) ๋ฅผ ์๋์ ๊ฐ์ด ์ ์ํ ์ ์๋ค.
๊ทธ๋ ๋ค๋ฉด ์์ ๋ชฉ์ ํจ์ ๋ฅผ ์ ํจ์ ๋ก ํํ๊ฐ๋ฅํ๋ค.
์ด์ gradient๋ฅผ ๊ณ์ฐํด๋ณด์.
optimization problem ์ ์์ ๊ฐ์ด ๋งค์ ์ฐ ๊ฐ๋ตํ ํํํด๋ณด๋ฉด ์๋์ ๊ฐ์ด gradient ๋ฅผ ํํํ ์ ์๋ค.

์์์ ์กฐ๊ธ ์์ธํ ๋ณด๋ฉด ๋ถ๋ถ์ด ๋ก ๋ฐ๋ ๊ฒ์ ์ ์ ์๋ค. continuous ํ ๊ณต๊ฐ์์๋ ์ผ๋ก ํํํ๋ฏ๋ก ์ด๋ฅผ dicretization factor ๋ก ๋ถํ ํด์ฃผ์๋ค.
smoothness cost ๋ ๋คํญ์์ ์ฐจ ๋ฏธ๋ถ์ด๋ผ์ ์ฐ์ฐํ๊ธฐ ์ฌ์ฐ๋ฏ๋ก ์์๋ค๋ง ๋ฏธ๋ถ์ ๋ํด ์ ๋ํด๋ณด๋ฉด ๋๋ค.
๋ํ ์ผํ ์์์ ๊ฐ๋ ์ ๋๋ก ์ดํดํ์ง ๋ชปํ์ฌ ์๋ ์ด๋ฏธ์ง๋ก ๋์ฒดํ๋ค.



Todo
- gradient ์์ ์ ๊ฐ ์ ๋
GCOPTER ๋ ผ๋ฌธ์์ ์ฆ๋ช ํ Optimality condtion ์ ์ํ๋ฉด ์ต์ ํด(the minimum control effort peicewise-polynomial trajectory) ๋ ์ค๊ฐ ์ง์ ์ ์ํ ๊ฐ ์ฃผ์ด์ง ๋ง๋ค ์ฐจ๊น์ง ์ฐ์์ ์ด๊ณ ๋ฏธ๋ถ๊ฐ๋ฅํ๋ค.
๊ทธ๋ฌ๋ฏ๋ก ๋ฅผ ๋ง์กฑํด์ผ ํ๋ค. ๋ณธ ์ฐ๊ตฌ์์๋ ๋ก ๋์ด snap ์ด ํญ์ ์ฐ์์ ์ด๋๋ก ํ์๋ค. ์ค๊ฐ ์ง์ ์ด๋ฏ๋ก waypoints ์ด ํ์ํ๋ค. (์์ธํ ๋ด์ฉ์ ์์ ์ ๋ฆฌํ question ๋ถ๋ถ ์ฐธ๊ณ . notation ์ด ํ ์ฐจ์์ฉ ๋ฐ๋ ค์ ๋ฌ๋ผ๋ณด์ด์ง๋ง ๋์ผํ ์์์ด๋ค.)
Question
- ์ค๊ฐ ์ง์ ์ ์ํ๊ฐ ์ ๊ฒ ํ์ํ ์๋ก = ๊ฐ ์์ ์๋ก
- ์ฐ์์ ์ด๊ณ ๋ง๋ถ๊ฐ๋ฅํ ์ฐจ์๊ฐ ํด ์๋ก = ๊ฐ ํด ์๋ก ์ข์ ๊ฒ ์๋๊ฐ?
- ๊ทธ๋ ๋ค๋ฉด ์ผ๋ก ๊ณ ์ ๋์ด ์์ผ๋ฏ๋ก (์ด๊ธฐ๊ฐ, ์ต์ข ๊ฐ์ state๊ฐ ๊ฐ์๋ ๊น์ง ์์ผ๋ฏ๋ก boundary conditions ์ด๋ค.)
- ์ฌ์ค ๋ ์ ํด์ ธ ์๋ ๊ฒ ์๋๊ฐ?( ๊ฐ ์์์ง๊ฑฐ๋ ๊ฐ ์ปค์ง์๋ก quality ๋ ์์ข์์ง๋ฏ๋ก)
์ด์ ๋ ๋ชจ๋ ๋ก๋ง ์ฐ๊ด๋์ด ์ ์๋๋ non-singular mapping matrix ๊ณผ ์ฐ๊ด์ง์ด ์ง๋ค.
์ด ์ ๋ํ ๊ตฌ์ฒด์ ์ธ ์ ์๋ GCOPTER ๋ ผ๋ฌธ์ ๋์ ์๋ค.
์ด non-singular ํ๋ฏ๋ก ์๋์ ๊ฐ์ด ์ ์ํ ์ ์๋ค.
Question
- ์ dimension ์ด ์ด๋ป๊ฒ ๋๋ ๊ฒ์ธ์ง? ์ ์์์ผ ์ ํํ๊ธด ํ๊ฒ ์ง๋ง, ๊ฐ ์์๋ค์ ํฌ๊ธฐ๊ฐ ๋ฌ๋ผ๋ณด์ธ๋ค.
- initial and final state ๋ waypoints ๋ ๋ชจ๋ ์์น๊ฐ๋ง ์๋ ํฌ๊ธฐ 3์ ๋ฒกํฐ์ธ๋ฐ, ๋ ์ด๋ฏ๋ก snap ๊น์ง ํฌํจํ ํฌ๊ธฐ์ด๋ค. ๋ฌผ๋ก 0์ผ๋ก๋ง ์ด๋ฃจ์ด์ ธ ์๊ธด ํ์ง๋งโฆ
Solved ?
- ์ด์ ๋ ผ๋ฌธ์ ์กฐ๊ธ ๋ ๊ตฌ์ฒด์ ์ผ๋ก ์ค๋ช ๋์ด ์์ด ์ฐธ๊ณ ํ์ฌ ํด๊ฒฐ.
- ๋ก ๋์ด ์๋ค. ์ฌ๊ธฐ์ ์ด๋ค.
- ๋ณธ ๋ ผ๋ฌธ์์๋ ์ด์์ผ๋ฏ๋ก non-singular ํ M๊ณผ ๋ชจ๋ ์ด์ ๋ ผ๋ฌธ๊ณผ ๋์ผํ ํฌ๊ธฐ๋ฅผ ๊ฐ๋๋ค.
- ๊ทธ๋ฆฌ๊ณ ์ ์ง๋ฌธ์ ์ ์ด๋์ ๊ฒ๊ณผ ๋ฌ๋ฆฌ ๋ ํฌ๊ธฐ๊ฐ 3์ธ ๋ฒกํฐ๊ฐ ์๋๋ผ, ์ฐจ ๊น์ง state ๋ฅผ ๊ฐ์ง๊ณ ์๊ณ (e.g. ) ์ฌ๊ธฐ์๋ ์์น, ์๋, ๊ฐ์๋์ด๋ค.
- ๊ทธ๋ ์ง๋ง ์ฌ์ ํ ์ ์ดํด๋์ง ์๋๋ค. ๊ฐ ์์น๊ฐ๋ง ์์ผ๋ฏ๋ก ๋๋จธ์ง ์๋, ๊ฐ์๋์ ๋ํด ์๋ฒกํฐ๋ฅผ ๋ฃ์ด์ค ๊ฒ์ด๋ผ๋ฉด ์ด ์๋๋ผ ํน์ 2 ์ฌ์ผ ํ์ง ์๋?
- ๊ทธ๋ฆฌ๊ณ ์ด ๋ง์ ๋จ์ด์ง๋ ค๋ฉด ๊ฐ์ state ์ ๋ณด๊ฐ ์์ด์ผ ํ๋๋ฐ, ๋ ๊ฐ๊ฐ ๋ง์ง๋ง, ๋ ๊ฐ ์ด๋คโฆ ์ฐธ๊ณ
์ด์จ๋ , ๊ถค์ ์ ์ ์ํด ์์ ํ ์ ํด์ง๋ค. (uniquely determined)
๊ทธ๋์ ์ต์ ํ ๋ฌธ์ ์ gradient ๊ณ์ฐ์ ์๋์ ๊ฐ์ด ํํํ ์ ์๋ค.

์ฌ๊ธฐ์ ํ์๋ก ํ๋ ๋ ์ ๋ณต์ก๋๋ก ์ป์ด๋ผ ์ ์์์ ์ด์ ๋ ผ๋ฌธ์์ ์ฆ๋ช ํ์ฌ ์ฌ๊ธฐ์๋ linear complexity ๋ผ๊ณ ์ธ๊ธํ์๋ค. ์ด๋ก์จ, unconstrained optimization problem์ด ๋์ด quasi-Newton method๋ก ํ์ด๋ธ๋ค.
D. High-Performance Implementation of SE(3) Planner
๊ฒฝ๋ก ์์ฑ์ ํ์ํ ์ฐ์ฐ์ ๊ฐ๊ฐ์ ์กฐ๊ฐ์ ๋คํญ์ ๊ถค์ ์ ๋งํผ ์ด์ฐํํ์ฌ ์ฐ์ฐํ๋ฏ๋ก ์ ์ฐ๊ด๋ ์์ ์๊ฐ ๋ฅผ ์ ์ํ์์ ๋, ์ ์ฒด ๊ถค์ ์ gradient ์ ์๊ฐ๋ณต์ก๋๋ ๋ก ํํํ ์ ์๋ค.
๊ทธ๋ฌ๋ ํฐ ์ค์ผ์ผ์ ๊ฒฝ๋ก ์์ฑ์์๋ ์ฌ์ ํ ํฐ ์๊ฐ ์์์ ํด๋นํ ์ ์๊ณ , ๊ฐ๊ฐ์ constraint point์ ๋ํด gradient๋ฅผ ๊ณ์ฐํ๋ ๊ฒ์ด ๋ ๋ฆฝ์ ์ด๋ฏ๋ก (i.e. ) ์ด๋ฅผ ๋ณ๋ ฌ ๊ตฌ์กฐ๋ก ๋๋ GPU๋ฅผ ํตํด ๊ฐ์ํ๋ค.
๊ทธ๋ฌ๋ฉด ๊ฐ iteration์ ๊ฑธ๋ฆฌ๋ ์ฐ์ฐ ์๊ฐ์ ๋ก ๊ฐ์ํ๋ค.

๊ทธ๋ฆฌ๊ณ zero-copy๋ก ๋๋ฐ์ด์ค์ ๋๊ฒจ์ฃผ์ด ๋ฐ์ดํฐ ์ ์ก์ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ์ค์๋ค๊ณ ํ๋ค. ์ด๋ฐ ๋ถ๋ถ์ GPU ์ต์ ํ ๊ด๋ จ์ด์ง๋ง, ๋ ผ๋ฌธ์ ๊ฐ์ด ๋์ค๋ ๋ถ๋ถ์ด ์ ๊ธฐํ๋ค.
๊ตฌ์ฒด์ ์ธ ๊ณผ์ ์ ์๋์ ๊ฐ๋ค.
- ์ต์ ํ ๋ฌธ์ ๊ฐ ๋ง๋ค์ด์ง๋ฉด GPU ์ปค๋์ ์คํํ๋ค.
- ๊ฐ iteration ๋ง๋ค ๊ถค์ parameter ์ ๋ํ ์ ๋ณด๋ฅผ ์ ๋ฐ์ดํธ ํ๊ณ ์ด์ ๋ํ ์ ํธ๋ฅผ CPU ์์ GPU ๋ก ๋ณด๋ธ๋ค. ๋ฒ์งธ ๊ถค์ () ์ ๋ฒ์งธ discretization point () ์ gradient ๋ ๊ฐ๊ฐ ๋ฒ์งธ ๋ธ๋ก์ ๋ฒ์งธ ์ฐ๋ ๋์ ํ ๋น๋์ด ์ฐ์ฐ๋๋ค. local shared memory ๋ฅผ ์ฌ์ฉํ์๋ค๊ณ ํ๋ค.(GPU ์ต์ ํ ๋ถ๋ถ, ๋ฉ๋ชจ๋ฆฌ ์ค๋ฒํค๋๋ฅผ ์ค์ธ๋ค.)
- ๊ฐ ๋ธ๋ก์ local memory ์ ์ ์ฅ๋ gradient ๋ฅผ reduce and sum ์ฐ์ฐ์ ํ์ฌ ์ ์ป๋๋ค.
- ๊ทธ๋ฆฌ๊ณ ์ฐ์ฐ์ด ์๋ฃ๋๋ฉด zero-copy ๋์ด ์๋ gradient ๊ฐ ๋ชจ๋ ํฉ์ฐ๋์ด ๋ชจ๋ ๊ถค์ ์ ๋ํ gradient ๊ฐ ์ป์ด์ง๋ค.
SE(3) Drone Racing Simulation
๊ตฌ์ฒด์ ์ธ ์ ์ฉ๊ณผ ์๋ฎฌ๋ ์ด์ ๊ตฌ์กฐ, ํ ์๊ณ ๋ฆฌ์ฆ๊ณผ์ ๋น๊ต ๋ฐ ๋ฉํธ๋ฆญ์ ์๋ต.
Evaluation
์ฌ๊ธฐ ์ฑํฐ์์๋ ํฌ๊ฒ ์ดํด๋ณผ ๋ด์ฉ์ ์์ง๋ง, CUDA ๋ธ๋ก์ ๋ํ ๊ตฌ์ฒด์ ์ธ ์ค๋ช ์ด ์๋ค.
RTX 2060 GPU ๋ฅผ ์ฌ์ฉํ์๊ณ ์ฝ์ด๋ฅผ ์ฌ์ฉํ์๋ค. ์ 64๋ก ์ ํํ์ฌ ๊ฒฝ๋ก ๋ถํ ์ ์กฐ๊ฐ์ผ๋ก ๋๋์๋ค๊ณ ํ๋ค.
์๋ง ๋ธ๋ญ ์์ ๋ด๋ถ์์ matrix multiplication ์ฐ์ฐ์ ์ต์ ํํ๋ค๋ฉด ๋ ๋น ๋ฅธ ์ฐ์ฐ์ ๊ธฐ๋ํ ์๋ ์์ด ๋ณด์ธ๋ค.