| CPC G06F 30/23 (2020.01) [G06F 17/16 (2013.01); G06F 30/27 (2020.01); G06N 3/08 (2013.01); G06T 1/20 (2013.01); G06T 15/005 (2013.01); G06T 15/06 (2013.01); G06T 17/20 (2013.01); G06F 2111/04 (2020.01); G06F 2113/12 (2020.01)] | 20 Claims |

|
1. A system, comprising:
one or more computers having one or more processors to:
determine one or more forces in a simulation of one or more objects to determine a set of constraints to be satisfied for the simulation where the one or more objects are to be simulated using a force-based formulation, wherein the set of constraints include at least one of velocity approximations, contact forces, or friction coefficients between the one or more objects;
apply a preconditioner to the force-based formulation to perform a gradient descent;
solve an energy minimization problem, using a primal formulation, to solve one or more constraints of the set of constraints for simulation; and
simulate the one or more objects to satisfy the set of constraints of the simulation by updating states of the one or more objects based on results from performing the gradient descent.
|