Results 29 issues of Keenon Werling

When custom loss functions for IPOPT optimization problems are specified in Python, and throw an exception in the method body, we currently print the supremely unhelpful error: ``` Exception of...

In traditional DART, time integration uses `v_{t+1}` to compute `p_{t+1} = p_t + dt * v_{t+1}`. This introduces problematic dependencies for backpropagation, so we've changed it to `p_{t+1} = p_t...

This is totally not necessary, but would be nice. I'd like to be able to call a method from Python, and have it save a video that was rendered on...

enhancement

Need to show an informative error when you call getXxJacobian() with anything other than a world (like a robot) Bonus: make an overloaded version of each getXxJacobian() that works with...

We don't have good tests for `MappedBackpropSnapshot::backprop`, and that's a problem. This could be a source of bugs for IK trajectories, for example.

Currently, in order to run the web GUI from C++, you need to boot the websocket server using code that looks like this: ``` server::GUIWebsocketServer server; server.renderWorld(world); server.renderBasis(); server.serve(8070); while...

This is all around `unittests/comprehensive/test_AtlasTrajectory.cpp`: We'd like to have Atlas train a trajectory without tripping our `World::setSlowDebugResultsAgainstFD(true)` flag (see [Finding and fixing bugs](https://github.com/keenon/diffdart/wiki/4.-Finding-and-fixing-bugs) in the wiki). Currently, it crashes quite...

Double-cartpole, accessible by loading the attached skel file, used to vibrate uncontrollably on `pip3 install diffdart==0.2.5`. Now, somehow, on `pip3 install diffdart>=0.2.6` the problem seems to have gone away... We...

The helper method `DARTCollide::createFaceFaceContacts()` returns a list of contact points given a pair of convex hulls colliding at a witness plane. The method receives all the "witness points" (vertices within...

The method `ContactConstraint::getTangentBasisMatrixODE(Eigen::Vector3d normal)` produces the pair of vectors that, when combined with the vector `normal`, form an orthonormal basis of `R^3`. These two vectors become our two frictional directions....