FAQ.doxygen File Reference Detailed Description1 Is CuikSuite completely bug-free?No. At this time we are not aware of any bug but CuikSuite has more than 60.000 lines of code. It is almost for sure than several bugs are hiding somewhere.
2 Is CuikSuite completely numerically safe?No. The numerical stability of CuikSuite heavely depend on that of the simplex routine. Initially we used the glpk simplex implementation which is fast and numericaly quite robuts, however, recently we moved to the CLP simplex implementation since, although it is a bit slower than glpk it is much more robust. However, CLP can still fail for extremely ill conditioned problems, specially when the boxes are very small and complex linear relaxations are still used to bound the functions (i.e., when the LR2TM_Q and LR2TM_S parameters are very small, or even 0). The different hyperplanes generated in a linear relaxation of a given function on a small box are almost coincident. In those cases, it is preferrable to use simple linear relaxations derived from Taylor expansions. The parameters LR2TM_Q and LR2TM_S set the threshold to switch from traditional linear relaxations to simple ones for quadratic (parabolas, circles, spheres) and saddle equations. As a general rule:
3 CuikSuite does not find all the solutions of my problemThis is very unlikely, but not impossible. CuikSuite is designed and implemented to deliver save approximations to the solutions sets. Therefore, it is more likely to deliver boxes that are close to be solutions but not actual solutions than to lose solution points. The less save aspects of the CuikSuite implementation is the simplification process. When replacing a variable
4 In your paper X you say problem Y can be solved in Z seconds but I dowloaded CuikSuite and I got different results.CuikSuite is continously evolving. Improvements in the numerical stability result, in general, in larger execution times. Improvements in the formulations result, in general, in smaller execution times. These are the two main factors that have influence in the results.
5 I executed cuik several times on the same problem and I get slighly different resultsThere is a random component in cuik when selecting the split range and the split point in this range.
What is the syntax of the world files?We have a leaflet describing this syntax. At this point the leaflet is incomplete so maybe it is better to learn it from the examples.
6 What is the syntax of the cuik files?We have a leafet describing this syntax. However, the syntax is simple enoug to learn it from the examples.
7 Cuik is not that quick.Cuik is quite efficient compared with other solvers based on interval Newton methods or Bernstein-based polytopes. However, if you address complex problem you should not expect short execution times. By the way, cuik stands for "Complete Universal Inverse Kinematics", to emphasize that the system can solve the input-output problem (inverse kinematics) on an arbitrary linkage (universal), and find all of its solutions (complete). The recent versions of the CuikSuite can do much more than solving inverse kinematic problems.
8 What kind of support do you offer for the CuikSuite?Almost none. We are working on extending the capabilities of the solver and on applying CuikSuite to different problems and, therefore, we can only provide the most basic support for external users.
9 I have found a bug in the code, could you please fix it for me?No. However we will be very gratefull if you tell us about it. Ideally you can fix the bug and send us the patch so that other users can benefit from your contribution.
10 What is the development cost of the CuikSuite?As estimated by David A. Wheeler's SLOCCount and without taking into account the cost of developing the examples:
Definition in file FAQ.doxygen. |
Follow us!