Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What is the deal with the undocumented MultiCheb method in OptimiTraj? #16

Open
stumarcus314 opened this issue Sep 9, 2016 · 1 comment

Comments

@stumarcus314
Copy link

stumarcus314 commented Sep 9, 2016

Is there any issue with the 'multiCheb' method? It doesn't seem to be documented in the users' guide, but it seems to give good answers for the demo examples and for my particular optimal control problem.

@stumarcus314 stumarcus314 changed the title Is there any issue with the 'multiCheb' method? It doesn't seem to be documented in the users' guide, but it seems to give good answers to the demo examples and my particular optimal control problem. Is there any issue with the 'multiCheb' method? It doesn't seem to be documented in the users' guide, but it seems to give good answers for the demo examples and my particular optimal control problem. Sep 9, 2016
@stumarcus314 stumarcus314 changed the title Is there any issue with the 'multiCheb' method? It doesn't seem to be documented in the users' guide, but it seems to give good answers for the demo examples and my particular optimal control problem. Is there any issue with the 'multiCheb' method? It doesn't seem to be documented in the users' guide, but it seems to give good answers for the demo examples and for my particular optimal control problem. Sep 9, 2016
@MatthewPeterKelly MatthewPeterKelly changed the title Is there any issue with the 'multiCheb' method? It doesn't seem to be documented in the users' guide, but it seems to give good answers for the demo examples and for my particular optimal control problem. What is the deal with the undocumented MultiCheb method in OptimiTraj? Sep 12, 2016
@MatthewPeterKelly
Copy link
Owner

You are welcome to use the Multi-Cheb method. If it converges, it will give very good solutions.

I "hid" it from the API because there are some situations where it will fail unexpectedly. I recall that one such failure occurs whenever you set the order of each segment to be too small (less than 6). In cases where it fails, it does so spectacularly. If you get good solutions for your problem, then it might actually be the best method to use.

If you're curious about this type of method, look at the documentation for GPOPS-II and some of the other papers by Anil Rao. It is technically a Chebyshev--Lobatto orthogonal collocation method with differential collocation constraints. After much reading, and several phone calls with Anil, I finally understand his solvers, and I have some insight into why Multi-Cheb fails in some cases, but I've not done careful testing. Some day I would love to write a good orthogonal collocation method with remeshing into OptimTraj, but I just don't have the time right now.

If anyone has a better idea of why this method is not reliable, or if you know an easy fix, then please let me know! Or just make a pull request.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants