{"action":"closed","issue":{"url":"https://api.github.com/repos/RobotLocomotion/drake/issues/1040","labels_url":"https://api.github.com/repos/RobotLocomotion/drake/issues/1040/labels{/name}","comments_url":"https://api.github.com/repos/RobotLocomotion/drake/issues/1040/comments","events_url":"https://api.github.com/repos/RobotLocomotion/drake/issues/1040/events","html_url":"https://github.com/RobotLocomotion/drake/issues/1040","id":70441582,"number":1040,"title":"Optimization failure for a rolling disk using `ContactImplicitTrajectoryOptimization`","user":{"login":"zamzami","id":9399029,"avatar_url":"https://avatars.githubusercontent.com/u/9399029?v=3","gravatar_id":"","url":"https://api.github.com/users/zamzami","html_url":"https://github.com/zamzami","followers_url":"https://api.github.com/users/zamzami/followers","following_url":"https://api.github.com/users/zamzami/following{/other_user}","gists_url":"https://api.github.com/users/zamzami/gists{/gist_id}","starred_url":"https://api.github.com/users/zamzami/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zamzami/subscriptions","organizations_url":"https://api.github.com/users/zamzami/orgs","repos_url":"https://api.github.com/users/zamzami/repos","events_url":"https://api.github.com/users/zamzami/events{/privacy}","received_events_url":"https://api.github.com/users/zamzami/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"mposa","id":4358424,"avatar_url":"https://avatars.githubusercontent.com/u/4358424?v=3","gravatar_id":"","url":"https://api.github.com/users/mposa","html_url":"https://github.com/mposa","followers_url":"https://api.github.com/users/mposa/followers","following_url":"https://api.github.com/users/mposa/following{/other_user}","gists_url":"https://api.github.com/users/mposa/gists{/gist_id}","starred_url":"https://api.github.com/users/mposa/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mposa/subscriptions","organizations_url":"https://api.github.com/users/mposa/orgs","repos_url":"https://api.github.com/users/mposa/repos","events_url":"https://api.github.com/users/mposa/events{/privacy}","received_events_url":"https://api.github.com/users/mposa/received_events","type":"User","site_admin":false},"milestone":null,"comments":3,"created_at":"2015-04-23T15:28:44Z","updated_at":"2015-06-12T17:25:18Z","closed_at":"2015-06-12T17:25:18Z","body":"Hi everyone,\r\n  I'm trying to find an optimized trajectory (state, control and contact) for a simple actuated 2D rolling disk on a `FlatTerrain`. The disk is dropped from a certain height and should roll `z` meters to arrive at `xf` So I Just modified the `testNewTrajOpt.m` for the KneedCompassGait by changing the URDF file and providing adequate `traj_init` & `BoundingBoxConstraint` for `x0 and xf` while removing the periodic constraint. \r\n\r\n**The problem is** that optimization terminates with the flag `info=41` which according to SNOPT manual means `current point cannot be improved,SNOPT was unable to improve on a non-optimal point` the given result is physically unrealistic. \r\n\r\nI have managed to add `infeasible_constraint_name` to the `ContactImplicitTrajectoryOptimization.m` class while naming the dynamic constraints and the `NonlinearComplementarityConstraint.m`. Then I found out that optimization violates almost all the dynamic constraints on `qdot` as well as the contact NCP constraints. \r\n\r\n**Is there a remedy for such a problem?** \r\nis there a way to enforce the dynamic constraints? \r\nis there a way to add the dynamics to the objective funnction?\r\nDo I need to hard code the dynamics gradient of the plant? \r\n \r\nPS: If I run `setCheckGrad` I get\r\n`maximum gradient error is in row 132 for x[74], with error 72738.446987\r\nuser gradient 0.000000, numerical gradient 72738.446987`\r\n\r\nI appreciate your effort I understand that you are extremely busy for the DRC, all best wishes. "}}