Comments (3)
Yes you are right.
For T, As is also given in the paper, we do not have to use exp as a smooth diffeo between R+ and R. In this code, we use the first 2 term in Taylor series of exp(x) and exp(-x) as a twice continuously differentiable diffeo between R+ and R, which is more efficient and numerically stable than exp itself.
For P, the only difference lies in the stereographic transform is originally used, while the code uses normalization x/||x|| to map a R^(n+1) on to an n-Sphere. In this code, this map is cascaded with the barycentric transform described in the paper. This is because the employed optimization alg theoretically requires the cost function has bounded sub-level set, which is easy to be satisfied in the normalization map. Technically, bounded sub-level set is just added for completeness.
Of course, there are some features released but not described in the paper, and also some features described in the paper but not ready to be released (busy...).
If you have some issues about the code, please feel free to let me know.
from gcopter.
By the way,
For T, constraint elimination is to extend the definition of decision vars to R.
For P, cons elim is a cheaper way to strictly enforce the spatial constraint as grad projection do, and preserve the high order info. The spatial constraints on P must be enforced because we do not wish distance between waypoints can infiniely approaches zero, that causes singularity.
Thus it is somewhat flexibility in handling them.
from gcopter.
Thank you so much for your patient and detailed response, it answered my question and helped me a lot. For now, i think i can close this issue. Thank you again for your inspiring work!
from gcopter.
Related Issues (20)
- The trajectory planner doesn't work properly? HOT 2
- Some ideas about large tilt angle to cross narrow gaps HOT 2
- difference with ego planner HOT 2
- Controller HOT 1
- How to use LiDAR to implement path planning in a real environment using the GCOPTER. HOT 1
- gcopter.hpp中的飞行走廊凸包hPolytopes与处理过的vPolytopes有啥区别,processCorridor(hPolytopes, vPolytopes)函数做了什么
- Minor Compilation Issues When Using as Standalone Library
- Minor issue in the SFC shortcut function HOT 1
- ompl::Exception HOT 1
- Alignment error in `firi.hpp` function `maxVolInsEllipsoid` HOT 1
- How to get a halfplane convex hull `Eigen::MatrixX4d` with fixed rows?
- The parameters in flatness.cpp
- SFC
- How can I use this as a 2D navigation back-end
- MINCO vs B-splines
- Can you share 'fast iterative region inflation for corridor generation' paper link?
- the code question
- 话题对接 HOT 3
- How to add the waypoint in the planning? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gcopter.