computation of configuration-space obstacles using the fast fourier transform
DESCRIPTION
Computation of Configuration-Space Obstacles Using the Fast Fourier Transform. by Lydia E. Kavraki p res. Rex Tien. Goal of the Study. To quickly calculate a configuration space bitmap from robot, obstacle information regardless of shape complexity - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Computation of Configuration-Space Obstacles Using the Fast Fourier Transform](https://reader036.vdocuments.net/reader036/viewer/2022072013/56812c2c550346895d90adc2/html5/thumbnails/1.jpg)
Computation of Configuration-Space Obstacles Using the Fast Fourier
Transform
by Lydia E. Kavrakipres. Rex Tien
![Page 2: Computation of Configuration-Space Obstacles Using the Fast Fourier Transform](https://reader036.vdocuments.net/reader036/viewer/2022072013/56812c2c550346895d90adc2/html5/thumbnails/2.jpg)
Goal of the Study
• To quickly calculate a configuration space bitmap from robot, obstacle information regardless of shape complexity
– C-space bitmap: n-dim array, 1: collisions, 0: “free” space
– Useful for dynamic obstacles when C-space must be recalculated often
– Useful when robot or objects have complicated, non-convex shapes
![Page 3: Computation of Configuration-Space Obstacles Using the Fast Fourier Transform](https://reader036.vdocuments.net/reader036/viewer/2022072013/56812c2c550346895d90adc2/html5/thumbnails/3.jpg)
Notation
• W: Workspace, Rn
• A: Robot, a rigid body in W
• B: Obstacle, a rigid body in W
• C: Configuration space of A
• q: Current configuration of robot
• A(q): subset of W occupied by A at configuration q
• CB: Mapping of B into C
![Page 4: Computation of Configuration-Space Obstacles Using the Fast Fourier Transform](https://reader036.vdocuments.net/reader036/viewer/2022072013/56812c2c550346895d90adc2/html5/thumbnails/4.jpg)
Existing Algorithms
• Analytical Algorithms (results must be sent to a C-space constructor)– Generalized convex polygons: O(nA + nB)
– Nonconvex polygons: O(nA2nB
2log(nAnB))
– Locally nonconvex: O(nA2nB
2log(nAnB)), not locally nonconvex: O((nAnB + c)log(nAnB))
– Convex polyhedra: O(nA+nB+c)
– Any polyhedra: O(nA3nB
3log(nAnB))
• Bitmap Algorithms– Rectilinearly convex A and B: O(N)– Depend not on n of vertices but rather N size of bitmap
![Page 5: Computation of Configuration-Space Obstacles Using the Fast Fourier Transform](https://reader036.vdocuments.net/reader036/viewer/2022072013/56812c2c550346895d90adc2/html5/thumbnails/5.jpg)
Creating C-space Bitmap (2D Case)
• Split W into NxN cells– W(i,j) = 1 if there is an obstacle in celli,j
• C-space is NxNxN binary array described by (x,y,θ), points correspond to W i,j and a different map for each θ
• For each (x,y,θ), A(x,y,θ)= 1 where robot body is present
![Page 6: Computation of Configuration-Space Obstacles Using the Fast Fourier Transform](https://reader036.vdocuments.net/reader036/viewer/2022072013/56812c2c550346895d90adc2/html5/thumbnails/6.jpg)
Creating C-space, cont.
• C-space is free if:
• With fixed θ, A is only translating
• Subbing - a convolution:
Minkowski Difference!
![Page 7: Computation of Configuration-Space Obstacles Using the Fast Fourier Transform](https://reader036.vdocuments.net/reader036/viewer/2022072013/56812c2c550346895d90adc2/html5/thumbnails/7.jpg)
Incorporating Fourier
![Page 8: Computation of Configuration-Space Obstacles Using the Fast Fourier Transform](https://reader036.vdocuments.net/reader036/viewer/2022072013/56812c2c550346895d90adc2/html5/thumbnails/8.jpg)
![Page 9: Computation of Configuration-Space Obstacles Using the Fast Fourier Transform](https://reader036.vdocuments.net/reader036/viewer/2022072013/56812c2c550346895d90adc2/html5/thumbnails/9.jpg)
Why FFT?
• It’s fast ( O(N logN))– Direct computation would take O(N4)
• Discrete
• Can be generalized to N dimensions
• Hardware implementation
• Popular algorithm
![Page 10: Computation of Configuration-Space Obstacles Using the Fast Fourier Transform](https://reader036.vdocuments.net/reader036/viewer/2022072013/56812c2c550346895d90adc2/html5/thumbnails/10.jpg)
FFT vs. O(nA + nB)
Robot Shape FFT Method Geometric Method
Simple 90s 11s
Medium 91s 22s
Complex 91s 32s
![Page 11: Computation of Configuration-Space Obstacles Using the Fast Fourier Transform](https://reader036.vdocuments.net/reader036/viewer/2022072013/56812c2c550346895d90adc2/html5/thumbnails/11.jpg)
FFT vs. O(N4)
• FFT is better in asymptotic performance
• With small robot mesh, Direct is faster – bitwise operations instead of
multiplication
• 90s vs…
![Page 12: Computation of Configuration-Space Obstacles Using the Fast Fourier Transform](https://reader036.vdocuments.net/reader036/viewer/2022072013/56812c2c550346895d90adc2/html5/thumbnails/12.jpg)
Future Considerations
• Rotation not handled explicitly by method
• Inaccuracy of discrete Fourier
• Mesh has constant spacing– Why do we need dense mesh in empty space?
• Number of maps grows very large as robot complexity increases