Automatically Distributing Eulerian and Hybrid Fluid Simulations in the Cloud

Omid Mashayekhi, Chinmayee Shah, Hang Qu, Andrew Lim, Philip Levis
Distributing a simulation across many machines can drastically speed up computations and increase detail. The computing cloud provides tremendous computing resources, but weak service guarantees force programs to manage significant system complexity: nodes, networks, and storage occasionally perform poorly or fail. We describe Nimbus, a system that automatically distributes grid-based and hybrid simulations across cloud computing nodes. The main simulation loop is sequential code and launches distributed computations across many cores. The simulation on each core runs as if it is stand-alone: Nimbus automatically stitches these simulations into a single, larger one. To do this efficiently, Nimbus introduces a four-layer data model that translates between the contiguous, geometric objects used by simulation libraries and the replicated, fine-grained objects managed by its underlying cloud computing runtime. Using PhysBAM particle level set fluid simulations, we demonstrate that Nimbus can run higher detail simulations faster, distribute simulations on up to 512 cores, and run enormous simulations (10243 cells). Nimbus automatically manages these distributed simulations, balancing load across nodes and recovering from failures. Implementations of PhysBAM water and smoke simulations as well as an open source heat-diffusion simulation show that Nimbus is general and can support complex simulations.

Automatically Distributing Eulerian and Hybrid Fluid Simulations in the Cloud

FEPR: Fast Energy Projection for Real-Time Simulation of Deformable Objects

Dimitar Dinev, Tiantian Liu, Jing Li, Bernhard Thomaszewski, Ladislav Kavan
We propose a novel projection scheme that corrects energy fluctuations in simulations of deformable objects, thereby removing unwanted numerical dissipation and numerical “explosions”. The key idea of our method is to first take a step using a conventional integrator, then project the result back to the constant energy-momentum manifold. We implement this strategy using fast projection, which only adds a small amount of overhead to existing physics-based solvers. We test our method with several implicit integration rules and demonstrate its benefits when used in conjunction with Position Based Dynamics and Projective Dynamics. When added to a dissipative integrator such as backward Euler, our method corrects the artificial damping and thus produces more vivid motion. Our projection scheme also effectively prevents
instabilities that can arise due to approximate solves or large time steps. Our method is fast, stable, and easy to implement—traits that make it well-suited for real-time physics applications such as games or training simulators.

FEPR: Fast Energy Projection for Real-Time Simulation of Deformable Objects

Anderson Acceleration for Geometry Optimization and Physics Simulation

Yue Peng, Bailin Deng, Juyong Zhang, Fanyu Geng, Wenjie Qin, Ligang liu

Many computer graphics problems require computing geometric shapes subject to certain constraints. This often results in non-linear and non-convex optimization problems with globally coupled variables, which pose great challenge for interactive applications. Local-global solvers developed in recent years can quickly compute an approximate solution to such problems, making them an attractive choice for applications that prioritize efficiency over accuracy. However, these solvers suffer from lower convergence rate, and may take a long time to compute an accurate result. In this paper, we propose a simple and effective technique to accelerate the convergence of such solvers. By treating each local-global step as a fixed-point iteration, we apply Anderson acceleration, a well-established technique for fixed-point solvers, to speed up the convergence of a local-global solver. To address the stability issue of classical Anderson acceleration, we propose a simple strategy to guarantee the decrease of target energy and ensure its global convergence. In addition, we analyze the connection between Anderson acceleration and quasi-Newton methods, and show that the canonical choice of its mixing parameter is suitable for accelerating local-global solvers. Moreover, our technique is effective beyond classical local-global solvers, and can be applied to iterative methods with a common structure. We evaluate the performance of our technique on a variety of geometry optimization and physics simulation problems. Our approach significantly reduces the number of iterations required to compute an accurate result, with only a slight increase of computational cost per iteration. Its simplicity and effectiveness makes it a promising tool for accelerating existing algorithms as well as designing efficient new algorithms.

Anderson Acceleration for Geometry Optimization and Physics Simulation

An Advection-Reflection Solver for Detail-Preserving Fluid Simulation

Jonas Zehnder, Rahul Narain, Bernhard Thomaszewski

Advection-projection methods for fluid animation are widely appreciated for their stability and efficiency. However, the projection step dissipates energy from the system, leading to artificial viscosity and suppression of small-scale details. We propose an alternative approach for detail-preserving fluid animation that is surprisingly simple and effective. We replace the energy-dissipating projection operator applied at the end of a simulation step by an energy-preserving reflection operator applied at mid-step.We show that doing so leads to two orders of magnitude reduction in energy loss, which in turn yields vastly improved detail-preservation. We evaluate our reflection solver on a set of 2D and 3D numerical experiments and show that it compares favorably to state-of-the-art methods. Finally, our method integrates seamlessly with existing projection-advection solvers and requires very little additional implementation.

An Advection-Reflection Solver for Detail-Preserving Fluid Simulation

Projective Skinning

Martin Komaritzan, Mario Botsch

We present a novel approach for physics-based character skinning. While maintaining real-time performance it overcomes the well-known artifacts of commonly used geometric skinning approaches, it enables dynamic effects, and it resolves local self-collisions. Our method is based on a two-layer model consisting of rigid bones and an elastic soft tissue layer. This volumetric model is easily and efficiently computed from an input surface mesh of the character and its underlying skeleton. In particular, our method neither requires skinning weights, which are often expensive to compute or tedious to hand-tune, nor a complex volumetric tessellation, which fails for many real-world input meshes due to self-intersections.

Projective Skinning

Interactive Two-Way Shape Design of Elastic Bodies

Rajaditya Mukherjee, Longhua Wu, Huamin Wang
We present a novel system for interactive elastic shape design in both forward and inverse fashions. Using this system, the user can choose to edit the rest shape or the quasistatic shape of an elastic solid, and obtain the other shape that matches under the quasistatic equilibrium condition at the same time. The development of this system is based on the discovery that inverse quasistatic simulation can be immediately solved by Newton’s method with a direct solver. To implement our simulator, we propose a Jacobian matrix evaluation scheme for the inverse elastic problem and we present step length and matrix evaluation techniques that improve the simulation performance. While our simulator is efficient, it is still not fast enough for the system to generate the result in real time. Our solution is a shape initialization method using the recent projective dynamics technique. Shape initialization not only works as a fast preview function during the user editing process, but also speeds up the convergence of quasistatic or inverse quasistatic simulation afterwards. The use of a heterogeneous algorithm structure allows the system to further reduce its preview cost, by utilizing the power of both the CPU and the GPU. Our experiment demonstrates that the whole system is fast, robust, and convenient for the designer to use in both forward and inverse elastic shape design. It can handle a variet of nonlinear elastic material models, and its runtime performance has space for more improvement.

Learning Nonlinear Soft-Tissue Dynamics for Interactive Avatars

Dan Casas, Miguel Otaduy

We present a novel method to enrich existing vertex-based human body models by adding soft-tissue dynamics. Our model learns to predict per-vertex 3D offsets, referred to as dynamic blendshapes, that reproduce nonlinear mesh deformation effects as a function of pose information. This enables the synthesis of realistic 3D mesh animations, including soft-tissue effects, using just skeletal motion. At the core of our method there is a neural network regressor trained on high-quality 4D scans from which we extract pose, shape and soft-tissue information. Our regressor uses a novel nonlinear subspace, which we build using an autoencoder, to efficiently compact soft-tissue dynamics information. Once trained, our method can be plugged to existing vertex-based skinning methods with little computational overhead (<10ms), enabling real-time nonlinear dynamics. We qualitatively and quantitatively evaluate our method, and show compelling animations with soft-tissue effects, created using publicly available motion capture datasets

Learning Nonlinear Soft-Tissue Dynamics for Interactive Avatars

Comparison of Mixed Linear Complementarity Problem Solvers for Multibody Simulations with Contact

Andreas Enzenhofer, Sheldon Andrews, Marek Teichmann, Jozsef Kövecses

The trade-off between accuracy and computational performance is one of the central conflicts in real-time multibody simulations, much of which can be attributed to the method used to solve the constrained multibody equations. This paper examines four mixed linear complementarity problem (MLCP) algorithms when they are applied to physical problems involving frictional contact. We consider several different, and challenging, test cases such as grasping, stability of static models, closed loops, and long chains of bodies. The solver parameters are tuned for these simulations and the results are evaluated in terms of numerical accuracy and computational performance. The objective of this paper is to determine the accuracy properties of each solver, find the appropriate method for a defined task, and thus draw conclusions regarding the applicability of each method

Comparison of Mixed Linear Complementarity Problem Solvers for Multibody Simulations with Contact

A Material Point Method for Thin Shells with Frictional Contact

Qi Guo, Xuchen Han, Chuyuan Fu, Theodore Gast, Rasmus Tamstorf, Joseph Teran

We present a novel method for simulation of thin shells with frictional contact using a combination of the Material Point Method (MPM) and subdivision finite elements. The shell kinematics are assumed to follow a continuum shell model which is decomposed into a Kirchhoff-Love motion that rotates the mid-surface normals followed by shearing and compression/extension of the material along the mid-surface normal. We use this decomposition to design an elastoplastic constitutive model to resolve frictional contact by decoupling resistance to contact and shearing from the bending resistance components of stress. We show that by resolving frictional contact with a continuum approach, our hybrid Lagrangian/Eulerian approach is capable of simulating challenging shell contact scenarios with hundreds of thousands to millions of degrees of freedom. Without the need for collision detection or resolution, our method runs in a few minutes per frame in these high resolution examples. Furthermore we show that our technique naturally couples with other traditional MPM methods for simulating granular and related materials.

A Material Point Method for Thin Shells with Frictional Contact

Fluid Directed Rigid Body Control Using Deep Reinforcement Learning

Yunsheng Tian, Pingchuan Ma, Zherong Pan, Bo Ren, and Dinesh Manocha

We present a learning-based method to control a coupled 2D system involving both fluid and rigid bodies. Our approach is used to modify the fluid/rigid simulator’s behavior by applying control forces only at the simulation domain boundaries. The rest of the domain, corresponding to the interior, is governed by the Navier-Stokes equation for fluids and Newton-Euler’s equation for the rigid bodies. We represent our controller using a general neural-net, which is trained using deep reinforcement learning. Our formulation decomposes a control task into two stages: a precomputation training stage and an online generation stage. We utilize various fluid properties, e.g., the liquid’s velocity field or the smoke’s density field, to enhance the controller’s performance. We set up our evaluation benchmark by letting controller drive fluid jets move on the domain boundary and allowing them to shoot fluids towards a rigid body to accomplish a set of challenging 2D tasks such as keeping a rigid body balanced, playing a two-player ping-pong game, and driving a rigid body to sequentially hit specified points on the wall. In practice, our approach can generate physically plausible animations.

Fluid Directed Rigid Body Control Using Deep Reinforcement Learning