The CuikTrapezoid Documentation
[Introduction] [Installation] [Examples] [Support] [License] [Disclaimer]



Introduction

This is a solver of kinematic problems formulated with multilinear equations.

Note: For historical reasons, the solvers developed in our group are called cuik-whatever. The solver documented here is the cuik-trapezoid described in Arya's Phd thesis.

Please, do not confuse this solver with the CuikSuite solver, which is based on linear relaxations (and also appers in the thesis but just for comparison purposes).

Installation

Download and uncompress the package:

Instead of wget in Mac you can use curl -O.

Next, we generate the makefiles

  • cd CuikTrapezoid/build
  • cmake ..

And now we compile

  • make

Finally, to generate this documentation type

  • make doc

The html documentation can be browsed from CuikTrapezoid/doc/html/index.html

Examples

The example folder includes all the benchmarks described in Arya's Phd thesis.

Each example typically includes the following files:

  • The .loops, .cuik, or .maf file (or a file without extension for the 6-R examples). These files include description of the benchmarks. The .loops files are used when applying elimination or redundancy and, in general, they can be used to encode any problem (they use the most general file format we developed). The .cuik files include raw equations. The .maf files are a lower-level format describing multi-affine systems of equations. We sometimes directly generate these file from Matlab. Any file can be converted to this format using the cuikmaf application. Finally, our solver can also directly read 6R loops as given in Manocha's software (including the DH parameters and the base-hand transform).
  • The .param file includes the parameters used to process the example.
  • The _cuik.world file encodes the problems in the format adequate for the CuikSuite alternative solver. This method is referred as the LR method in Arya's Phd work.
  • The _cuik.param file includes the parameters for the CuikSuite alternative solver.

Once the program is compliled, the examples can be processed adjusting the parameters and then executing

  • bin/cuik-trapezoid examples/example-name

Note that despite the name of this solver, it also includes the implementation of the LP method described in Arya's Phd thesis (a method using linear programming on a set of multi-affine equations). This method can be selected changing the parameters.

Support

This software is in continuous development and thus, we can offer a limited support to external users.

Please, send us an e-mail at porta at iri.upc.edu if you have any troubles installing or using this software.

License

The software has been developed by the KRD group at IRI as a part of the Cuik project and is licensed under GPLv3 License.

Disclaimer

This software is distributed in the hope that it will be useful, but without any warranty. it is provided "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of the program is with you. should the program prove defective, the KRD group does not assume the cost of any necessary servicing, repair or correction.

In no event unless required by applicable law the author will be liable to you for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use the program (including but not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of the program to operate with any other programs), even if the author has been advised of the possibility of such damages.