humoto
|
This is Humoto - a software framework for manipulation of linear least-squares problems with (in)equality constraints. It supports both weighting and lexicographic prioritization and can be characterized as a tool for goal programming. However, the development was driven by works in other fields - robotics, control, and numerical optimization; for this reason our terminology and interpretations are different.
The core functionalities of Humoto are formulation of least-squares problems and their resolution with the help of various third-party software using uniform programming interfaces. However, due to our interest in robotic applications, the framework also facilitates formulation and implementation of optimization problems for control of robots, in particular, model predictive control problems. For the same reason, we pay special attention to computational performance in order to be able to employ the framework in real-time scenarios.
In addition to the core components, the distribution of Humoto includes several modules - implementations of specific controllers. The modules serve as examples of using the framework, but can also be used in accordance with their primary purpose.
Humoto is distributed under the terms of Apache 2.0 license, see LICENSE for more information. All files are covered by the same license except those which were borrowed from other projects as indicated in INSTALL.md file.
The source code can be obtained using git:
git clone https://github.com/bip-team/humoto
The framework is distributed with two kinds of documentation:
doc/latex
' and execute 'make
' to compile it.markdown
format stored in the root and 'doc
' directories. It can be compiled by calling 'make
' in 'doc/doxygen
' folder.Precompiled documentation is available at https://bip-team.github.io/humoto/.
The first step is to read the introductory chapter of LaTeX documentation, then, depending on your interests, you may
Template of an external module, i.e., a module which is not included in the main Humoto repository.
Template of a controller based on Humoto.
Controller for Pepper robot.
Walking module for collaborative carrying tasks. Developed by Joven Agravante.