An optimization framework that links CasADi, Ipopt, ACADOS and biorbd for Optimal Control Problem
Over the time, dust accumulate to the point you don't see the floor anymore... electronic code does not make exception! Therefore Bioptimn needed a huge dedusting from years of development
SpringCleaning is a rewrite of the core dynamics of bioptim, not so much of the API except for few breaking changes. All in all, this is a very welcome breath of fresh air for Bioptim!
Full Changelog: https://github.com/pyomeca/bioptim/compare/Release_3.1.0...Release_3.2.0
The new order is a deep state conspiracy... Here at pyomeca, we believe in shallow state, still we need to be ordered anyway. So thanks to the new way of declaring initial guesses and bounds, no one can be mistaken anymore on the order of the variables!
Full Changelog: https://github.com/pyomeca/bioptim/compare/Release_3.0.1...Release_3.1.0
Twins are special, unique, they are inseparable. But at some point in their live, they must get their own live. It is the same for dynamic constraints in an optimal control program. Even though, they seem identical, they have their own personality that must be acknowledged.
Constraints between shooting node are now independent, assuring that they work properly. Bioptim is better, stronger and happier!
Full Changelog: https://github.com/pyomeca/bioptim/compare/Release_3.0.0...Release_3.0.1
Dynamics is the core nature of most, if not all, things; at least for every instance of moving things. Bioptim was restrained to one type of dynamics and it made it sad. How can I describe the world if I cannot define my own dynamics, it was saying. Don't be sad no more, Bioptim, 'cause now, all dynamics are at your door! This new release disconnect biorbd from the core of bioptim allowing for arbitrary dynamics to be implemented. This is exciting! This opens bioptim to a lot of new usage! We are so optimist with what you can bring to the world that I'd say we are bioptimistic!
Full Changelog: https://github.com/pyomeca/bioptim/compare/Release_2.3.0...Release_3.0.0
"Over the see, no one can see" - No name (actually no one... but who cares!) When one looks at the horizon, they can't see past a certain point. Too far is the horizon, too much water separate them to the new world ahead. When they are sailing that see, the same can be said for the land behind. They must forgot where they are from, to focus on where they are going.
Bioptim is a sailor, no one can remember what happened between that release and the previous one. Bioptim has so evolved, it cannot see over its own see of changes
Full Changelog: https://github.com/pyomeca/bioptim/compare/Release_2.2.2...Release_2.3.0
Sometime continuing what you started instead of rebuilding from ground is a good thing. Therefore, having LINEAR_CONTINUOUS plots which show the actual continuity of plotting was important. It is now fixed
Full Changelog: https://github.com/pyomeca/bioptim/compare/Release_2.2.1...Release_2.2.2
Bioptim was recently used to spice up gymastic as it can now optimally control avatar in salto movements!
Full Changelog: https://github.com/pyomeca/bioptim/compare/Release_2.2.0...Release_2.2.1
The name pretty much sums it all. This is the version used to generate the results for my PhD :) Hurray!
Full Changelog: https://github.com/pyomeca/bioptim/compare/Release_2.1.1...Release_2.2.0
To take some rest, you need to lie down. Bioptim does so, by lie on the sheet instead of under, that is getting onto a paper. This is the official release for the paper (so far)!
Full Changelog: https://github.com/pyomeca/bioptim/compare/Release_2.1.0...Release_2.1.1
Assessing your fatigue level is important in order to know when to slow down. Bioptim was not able to properly assess it effort level while optimizing. This is now fixed! Using FatiguePerception, bioptim now knows properly how to compute fatigue over time and optimize according to it.
In the mean time, I will focus on my thesis writing, so I also take some rest!
Full Changelog: https://github.com/pyomeca/bioptim/compare/Release_2.0.3...Release_2.1.0