BocopHJB 1.1.0 is out, introducing a new Qt GUI similar to the one for Bocop.
Besides the user interface, this version also includes several new extensions and examples. A summary of the updates is given in the changelog below, and more information can be found in the user guide and examples catalog.
Packages for Linux and MacOS are available on the Download page, the windows version is in progress.
– [gui] BocopHJB now has a Qt GUI ! Gui allows for problem definition
(except the C++ code), executable build and run, and visualization.
– [core] added specific function for constraints on final state.
– [core] for switched systems, added function for possible state jumps at
transitions. Also added option to restrict the set of admissible
transitions (see maze example), defined by file or function.
– [core] optional computation of state probability distribution (see maze
example). Distribution is an output only, cannot be used in functions.
Probability of state transitions and mode switchings are also recorded.
– [core] input file .def was reorganized and expanded, all blocks must be
present in the correct order. Control discretization options were revamped.
State discretization is now in .def file instead of stateDisc/ folder.
Starting point/mode for simulated trajectory is also in .def file instead
of the C/C++ file simulation.cpp, which is removed.
Parameter timestep.output.frequency is now hardcoded to 10%.
– [core] new checks for cost functions when building in Debug mode.
– [core] some new info added in output file simulatedTrajectory.data;
matlab reading script was updated accordingly.
– [core] new optional functions: preProcessing.cpp, postProcessing.cpp, and
dependencies.hpp/cpp. Dummy files are used if not present in problem folder.
Function preProcessing can modify the starting point (initial conditions)
as well as the number of modes (if they depend on some problem constants).
– [core] added checks for initial point in the interior of the state grid,
as well as for the starting mode of the trajectory simulation.
– [core] splitted IO functions in separate source files (core/sources/IO).
– [core] improved handling of infeasible case during trajectory simulation.
– [core] added recomputation of the objective during trajectory simulation,
with separate terms for the running, final and switching cost.
– [core] minor changes to value function and simulated trajectory log files.
– [core] improved control discretization info in log files.
– [core] several internal improvements (hjb constructor)