CHAPTER 2: PLANNING ALGORITHMS FOR LIQUID TRANSFER
2.5 Convergent Planning Algorithm using Simplified Dynamic Model
2.5.1 Learning the Simplified Liquid Model
In order to find the unknown coefficients involved in our simplified model, we need to solve the linear regression Equation 2.10 from a set of training data. The dataset is generated using Algorithm 1. For each source container shape and each liquid material setting, we need to solve for a separate set of coefficientsa, b, c, d, e andf. In order to compute the training data, we ran 127 3D liquid simulations of pouring liquids out of a container by tilting it fromθ= 0◦ to a final tile angle θ ∈[90◦,150◦] using a random θ. This results in approximately 20000 training samples, each of˙ which is a tuple< vout, θ,∆h >. To extract these samples for the set of particles in every timestep of the simulation, we extract their 2D axial symmetric cross-section. In this cross section, we compute vout by averaging the magnitude of velocities of all particles that leave the source container at the current timestep. We can identify these leaving particles by the fact that these particles should be inside the bounding volume of the source container in the previous timestep, but outside it in the current timestep. We also compute the characteristic height∆h, which is found by fitting a cubic curve to the free surface, and evaluating it at the step boundary. A snapshot of the training data is illustrated in Figure2.11.
2.5.2 Results
After solving for the coefficients, we would like to evaluate the accuracy of our simplified model. We plot the change of several related variables with respect to physical time in Figure 2.12. We note from Figure2.12(c,d) that, for the oval-shaped container, the Bernoulli approximation p2kgk∆h can already achieve acceptable accuracy. However, for the cylindrical container, the Bernoulli approximation leads to large errors when θ ≥ π/2. In these cases, sin(max(θ−π2)) is a better approximation tovout. By combining the six terms in Equation 2.9, we can achieve much better agreement with the groundtruth vout. Further, by plugging the function g into Equation (2.11), we can even predict the entire liquid trajectory, i.e. predicting PgivenQ. Two of such predicted trajectories are illustrated in Figure 2.13. Our model is flexible enough to account for different container shapes. Note that Bernoulli approximation can result in some false predictions when ∆h= 0(and thusA= 0), e.g. the yellow dots in the early timesteps of Figure 2.12, but this will not cause any problems since our objective function in Equation2.13 does not take effect in such degenerate cases. 0 0.5 1 1.5 2 2.5 3 0 100 200 300 400 500 600 700 800 900 0 0.5 1 1.5 2 2.5 3 0 100 200 300 400 500 600 700 800 900 0 0.5 1 1.5 2 2.5 0 100 200 300 400 500 600 0 0.5 1 1.5 2 2.5 0 100 200 300 400 500 600
vout(m/s) √2gh(m/s) θ(rad) ∆h(m) g(θ, vol)(m/s)
(a) (c)
(b) (d)
Figure 2.12: For two simulated testing trajectories and two container shapes, we plot changes of the five variables vout,p2kgkh, θ,∆h andg(θ,vol)over time. Both testing and training trajectories are generated by simulating the liquid while tilting the container according to a random, monotonically increasingθ curve shown in orange. The green curve is the groundtruth vout, the outflowing velocity magnitude; the gray curve is the groundtruth ∆h, and the yellow curve is the prediction of vout made by the Bernoulli equationp2kgk∆h. Finally, the blue curve is the predictedvout generated using our simplified dynamic modelg(θ,vol). The error between vout andg(θ,vol) is small over the effective range wherevout>0.
To evaluate the motion planning pipeline, we plug the functions f¯and Equation 2.13 into Algorithm 2. We evaluated the system on the two liquid transfer problems with different sets of obstacles in the environment as illustrated in Figure1.2. For each benchmark, we used two sets of
0 0.5 1 1.5 2 2.5 3 3.5 4 0 100 200 300 400 500 600 700 800 900 0 0.5 1 1.5 2 2.5 0 100 200 300 400 500 600
vout(m/s) vol(m3) θ(rad) ∆h(m)
Figure 2.13: We use our simplified dynamic model Equation2.11to simulated a simplified trajectory and plot the synthetic vout as (green). Over time, the tilt angleθ increases monotonically (orange) while the total volume decreases accordingly (yellow). Note that the change of vout (green) closely resembles the groundtruth data (Figure 2.12 green): for the cylindrical container, vout is always increasing while for the oval-shaped container,vout first increases and then decreases.
Benchmark Viscosity
Time Planning
Time
Validation Quality Figure1.2 (a) µ= 0.01 5min 2.1h 95.7% Figure1.2 (a) µ= 0.001 5min 2.5h 89.5% Figure1.2 (b) µ= 0.01 7min 1.9h 93.2% Figure1.2 (b) µ= 0.001 7min 2.2h 87.1%
Table 2.2: From left to right: benchmark environment, viscosity of liquid, time spent solving Equation 2.4, time spent running forward liquid simulation for validation and quality of planned trajectory. The quality is measured by the fraction of particles that fall inside target container. liquid materials that differ only in their viscosity (µ= 0.01,0.1), so that two trained models are needed for each material and each source container S. We sampled each trajectory with 100 nodes (N = 100). Quality measures and time cost of planning are summarized in Table 2.2. Compared with a full-featured liquid simulation that takes 0.9 hours in Section 2.4, we achieve at least two orders of magnitude speedup using our simplified dynamic model.