Developing a Simple Model for Sand-Tool Interaction and Autonomously Shaping Sand

by   Wooshik Kim, et al.
Carnegie Mellon University

Autonomy for robots interacting with sand will enable a wide range of beneficial behaviors, from earth moving for construction and farming vehicles to navigating rough terrain for Mars rovers. The goal of this work is to shape sand into desired forms. Unlike other common autonomous tasks of achieving desired state of a robot, achieving a desired shape of a continuously deformable environment like sand is a much more challenging task. The state of robot can be described with a couple of states-x, y, z, roll, pitch, yaw-but the desired shape of sand can not be described with just a few values. Sand is an aggregation of billions of small particles. After simplifying the model of sand and tool interaction by looking only at the surface of the heightmap, we can formulate the problems into something that is still high dimensional (hundreds to thousands of state dimensions) but much more solvable. We show how this problem can be formulated into a graph search problem and solve it with the A-star algorithm and report preliminary results on using deep reinforcement learning methods like Deep Q-Network and Deep Deterministic Policy Gradient.



There are no comments yet.


page 1

page 5

page 6

page 9


Robot gains Social Intelligence through Multimodal Deep Reinforcement Learning

For robots to coexist with humans in a social world like ours, it is cru...

Deep Reinforcement Learning in a Monetary Model

We propose using deep reinforcement learning to solve dynamic stochastic...

Visual Foresight: Model-Based Deep Reinforcement Learning for Vision-Based Robotic Control

Deep reinforcement learning (RL) algorithms can learn complex robotic sk...

Towards continuous control of flippers for a multi-terrain robot using deep reinforcement learning

In this paper we focus on developing a control algorithm for multi-terra...

Robot Navigation in a Crowd by Integrating Deep Reinforcement Learning and Online Planning

It is still an open and challenging problem for mobile robots navigating...

Tool Macgyvering: A Novel Framework for Combining Tool Substitution and Construction

Macgyvering refers to solving problems inventively by using whatever obj...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

In this work, we introduce an interesting new problem: shaping a continuously deformable environment, sand. Shaping sand is a challenging task that can benefit both the industry and the academy. In construction, dumping operations (removing soil) account for 25-50% of total operational costs [25]. In the US alone, gross output of construction and agriculture industry accounts for $1,970 billion [4]. The global market for earth moving equipment valued at $81.5 billion in 2017 and expected to cross $145 billion by 2026 [1]. Many big industries like John Deere, Caterpillar, Komatsu, and CNH are already investing on autonomous construction vehicles, which could benefit from autonomous operations.

Autonomous sand shaping also has potential applications in planetary exploration; enabling rovers to modify terrain can greatly increase their capabilities [23]. For example, by digging a trench a rover can access subsurface soil for sampling; by pushing sand into a ramp a rover could climb otherwise untraversable terrain; or by levelling uneven terrain it could construct a landing site for future missions. In this context, sand would be shaped either by a simple, lightweight tool or the existing mobility systems of the robot (e.g. wheels), as planetary missions are highly weight constrained.

In this paper we categorize different types of sand modelling methods and discuss works on automation of earthmoving. We then provide our own solution to shaping sand along with the necessary models. This paper is organized as follows: First, in Section 2, we will look at four different approaches of simulating sand and robot interaction. This survey will reveal different approaches that we integrate into our model. We also look at how other researchers have approached the problem of shaping sand autonomously in Section 2.5. Our method for simulating sand–robot interaction is presented in Section 3 followed by a comparison of a trench profiles with other model and sand experiment. Then algorithms for planning motions to shape the sand are presented in Section 4, using A*. Finally, we will share our insights and analysis in Section 5 and conclusions in Section 6.

2 Previous Works

Numerous models and approaches have been proposed by researchers from different fields of studies to describe the dynamics of sand. Terramechanics research describes the dynamic effects of sand with respect to vehicles, and it also studies how microscopic interactions among grains result in sand’s macroscopic behavior like soil compression and erosion [11, 34]. Computer graphics research mostly focuses on how to render realistic animations [8]. In robotics, researchers focus on implementing models that are computationally efficient yet accurate in their steady state behavior to use for control and planning purposes [17, 5]. Here, we categorize these into four different general methods used for describing sand.

2.1 Solid Mechanics and Empirical Formulas

The most extensive and iconic work in the mechanics of sand is that of Bekker [11] and Wong [34]. Most of the analyses are based on extensive empirical results and application of theory of plastic equilibrium to the mechanics of vehicle-terrain interaction. Because of its accuracy and computational efficiency, Bekker’s terramechanics are often implemented in conjunction with other simulator environments [17, 24, 5]. It is also often used as a criteria for comparing accuracy of a simulation [21]. Some of the most common results from terramechanics that finds their way to vehicle-soil simulators are: i) pressure sinkage relationship [11, 34] to simulate vehicle wheel compressing soil; ii) maximum shear stress to simulate vehicle wheel slippage [34]; iii) force calculation for soil-tool interaction [29]. Force calculation proves quite useful in tillage and bulldozing applications and hence are often implemented in conjunction with other simulations [24].

2.2 Discrete Element Methods

The dynamics of sand is the result of many, many small grains interacting with each other. Therefore, the most accurate way to model it is with numerical simulations based on the discrete element method (DEM) proposed by [8]. This approach studies granular materials by solving Newton’s equation of motion for individual particles. The simulation of the dynamics of large collections of solid particles have become efficient enough to allow both the macroscopic description of the behavior and some microscopic details about local phenomena [21]. The interaction between particles is defined by translational and rotational contact dynamics at their contact points. The contact force acting on a particle is decomposed into normal and tangential components where each component is modeled by using spring, dashpot, and a frictional slider. The number of particles used in DEM simulation is usually in the range of few hundred thousands [21].

DEM methods are also often used in conjunction with other modeling methods to simulate soil-tool interaction. Holz generates particles locally where interaction takes place and uses Height Map (Section 2.4 to represent the rest of the terrain [15]. The addition of cohesive forces between particles (wet sand) enables simulation of cohesive soil as well [32]. Although this method captures how the grains of sand behave in various situations, the computational load is heavy and therefore not appropriate for learning or planning.

2.3 Fluid Mechanics

To overcome the computational load from discrete element methods and render realistic animations, researchers have borrowed ideas from fluid dynamics. Here Eulerian approaches are utilized rather than Lagrangian methods as DEM does. The material point method keeps track of the force and velocity field at each grid instead of keeping track of individual particles [9]. State of the art methods are able to render realistic animations of sand and fluid mixture in DreamWorks’ most recent work [30]. These methods, although aesthetically beautiful, are not fit for robotic applications. Although it is less computationally expensive than discrete element methods, it is still computationally burdensome for robotic applications. Second, it inevitably comes with volume error because it does not track particles, which is an important aspect for shaping sand. Finally, it cannot provide a good way to analyze force interaction between the sand and the robot.

2.4 Height-map Approach

To describe sand realistically, yet computationally efficiently for robotic applications, the height-map approach works the best. Instead of describing the entire volume of sand, as the two earlier approaches did, height-map approach considers the dynamics at the surface: by describing the surface with a height-map. Soil erosion, wheel interaction, and tool interactions (bulldozer and excavators) are interactions that happens on the surface of sand. Therefore with this simplification, this method can accurately model sand and tool interactions incredibly efficiently. Starting from the simple idea that sand piles up only up to certain angle, the angle of repose, one can model sand by relaxing the local slope of sand by “flowing” down the slope until it reaches the angle of repose. This phenomenological approach intrigued physicists in the 1990s starting from [33]. Those studies were focused on the “self-organized criticality”, the scale and time-invariant dynamics of soil erosion [16, 35, 6]. These early studies focused on how this local governing behavior propagates to create an “avalanche”.

Application of this height-map idea were developed further by understanding that the surface of sand behaves differently than the pile beneath. When there is a soil erosion, the soil on top rolls down the slope, rather than the pile beneath. Developing these ideas were Hwa and Kardar’s anistropic “Driven Diffusion Equation” [16] and Bouchad, Cates, Prakash, and Edwards BCRE method [3].

Actually using these ideas to simulate and visualize interactions were done recently. For simulating excavator and sand interaction, theory of BCRE was applied to simulate the time evolution of sand pile [24]. This work also used an additional height-map to describe sand on the flat excavator tool. When sand fell out of bounds from the excavator, that sand was added to the corresponding location on the height-map of ground. Another interesting take on using height-map approach is from [22]. Describing each collision object in the simulator with Height Span Map (HS Map), sand on top of each HS map follow same rule for soil erosion. So sand can sit inside a concave bucket or on top of its convex outer surface. Simulator by Rainer Krenn et al. from Germany Aerospace Center (DLR) combines the height-map approach and Bekker’s terramechanics [17, 5]. This work merged the ideas from the height-map approach with the multi-body physics engine SIMPACK. In addition to soil erosion with height-map approach, this work incorporates soil-compaction and wheel slip from Bekker’s terramechanics [31]. Height of soil is reduced appropriately on the trail where rover passed by according to soil-compaction equation. Wheel slip is calculated beforehand according to Janosi-Hanamoto’s equation for the rover. This paper’s approach is most similar to this work as Krenn also proposed the model for robotic application. However the focus of this work is to shape the sand, meaning we are more interested in how the sand looks after interaction.

DEM and fluid mechanics methods are very successful for rendering sand dynamics, but they are computationally too expensive for robot application and is actually unnecessary. For most robotic application, like bulldozer and excavator, robots move slow relative to the flow of sand. So how the sand flows down the slope over time is not of concern, the resulting surface profile is. Therefore, the empirical formulas from Bekker’s terrachmechanics comes in handy. But for simulating sand, the height-map method is computationally the most efficient, accurate, and easy for describing sand’s steady state behavior. Therefore, in this paper the height-map method is used.

2.5 Automation in Earthmoving

Most of the automation research in earthmoving has been focused on dig and unload tasks for excavators [28]. Many interesting approaches have been proposed to aid workers in the construction industry from tele-operation of construction vehicles [19] to planning sequences of actions to produce an overall desired shape [26]. Romero creates a tree of excavation sections and actions to generate a plan that minimizes task completion time. Another interesting take is Sanjiv Singh’s planner for robotic excavators where the agent determines the optimal dig parameters (angle of attack, length of dig, and height to enter) for given constraints (reachability, volume, shaping, and force) per action [27]

. More recently, there has been couple of approaches on creating an autonomous agent for bulldozers. Hirayama developed an agent for bulldozer dumping operation by segmenting mound into blocks and using integer linear programming to find optimal sequence of trajectories that will dump the material over the edge position

[14, 13].

The complexity of soil to robot interaction makes it challenging to develop a decent controller for both low level tracking and high level planners [10]

. Recent development in artificial intelligence and machine learning may hold the key for tackling the high dimensionality of sand-robot interaction. For example, Clarke developed a neural network that uses audio feedback to scoop the right amount of granular materials


3 Method: Simple Simulator for Sand and Robot Interaction

The simulation of sand-robot interaction happens in two steps. First an action is taken. An action is when a robot changes state, either interacting with sand or not. For bulldozing tasks, as we consider in this work, the action is pushing sand. For excavator, it would be removing (scooping) and depositing sand. For mobile robots, it would be leaving track behind, which is similar to pushing sand. After each action, an update step iteratively displaces sand to simulate soil erosion. The number of steps it takes to reach steady state depends on the resolution; a finer sand profile requires more iterations. For the planning examples in Section 4, the size of the height map is 32 by 32 and it takes around 50 steps to reach steady state. For the trench profile comparison in Section 3.3, the size of height map is 160 by 160 and it takes around 140 steps to reach steady state.

This simulator does not consider the transient response of the soil erosion and the dynamics of robot are assumed to be much slower compared to the sand. Also the dynamics between the robot and sand is also neglected, there is no force feedback to the robot (i.e. we assume the robot is stiff). The focus of this work is to find trajectory of the robot that produce a certain height map.

Figure 2: Tool interaction and soil erosion during update after two actions: placement of object and movement of object

3.1 Soil Erosion

The proposed model represents the sand’s surface with a height-map as described in Section 2.4. The volume of granular material is divided into vertical columns in an equally divided grid. Height values are saved in a two dimensional matrix. There are two main components of this simple model: soil erosion and tool interaction. Soil erosion makes sure the profile of sand satisfies the angle of repose constraint. Tool interactions allows a robot (robot arm, bulldozer, or rover) to push and move sand around.

Soil erosion starts from the simple idea that sand flows downward if it is piled too steeply. The maximum slope sand can reach before grains start rolling is called the angle of repose, and this is a property of sand that changes depending on things like grain size and humidity. After each action, the local slope of the sand profile is evaluated at every point of the grid and compared to the angle of repose during each update. The amount of sand, and consequently the height of each grid, that flows during steps of the update is as follows:


At each step of the update, each height of the height-map matrix is updated according to the local slope with its neighbors (four connectivity or eight connectivity). The number of steps needed to reach steady state is proportional to the square of grid resolution (complexity of ). Then the question that remains is how much of the soil imbalance flows during each step: the value of . The must be chosen to allow maximum flow during each step without overshooting. For eight connectivity worked best.

3.2 Tool Interaction

Each object is represented by collision points at each grid point (step a of Figure 2). For tool interaction, the overlapping volume of the height-map that is in collision with the tool is moved to an adjacent grid (step b) in the direction of the tool movement. At initial contact, the sand is moved radially outwards from the center of the tool (step 1-b). After overlapping volumes are moved to adjacent grid cells, soil erosion iteratively revises the local slope by updating the profile (step c). Soil does not flow into the grid occupied by the tool (though instead one could represent tools as height span map as proposed by [22]).

3.3 Results: Trench Profile Comparison with Experiment and Soil Model

The sand model presented in this section was validated with a set of experiments originally presented in [23] in the soft-soil testbed in Carnegie Mellon’s Field Robotics Center. These experiments collected 2D profiles of trenches of wheels towed across a prepared sand surface at fixed sinkage () and angle (

) at a velocity of 3 cm/s. Each trench was then imaged with a LIDAR scanner at 12 locations along with length to collect a surface profile with 300-400 data points. The LIDAR scanner was found to have a standard deviation of 0.6mm error for measurements of a flat sand surface, which is considerably smaller than the typical feature scale in these experiments. The wheel measurements and soil parameters for these experiments are listed in Table


The sand model presented here was compared both to the trench scans and to the theoretical model described in [23], with results summarized in Table 2. Compared to LIDAR scans of the trench surface, the sand simulator had an average error of 2.2 mm and median error of 1.7 mm along the trench profile, with a 0.9mm error in the predicted depth of the trench. Compared to [23], the sand simulator had an average error of 1.1 mm and median error of 0.4 mm, with a depth error of 0.6mm. Given the accuracy of the LIDAR scanner, the soil simulator was able to predict the shape of the trench very well. The close match to the trenches predicted by [23] is notable given the different approaches taken to modeling soil flow.

Figure 3: Plots of measured (blue), trench model predicted (red) [23], and simulation (yellow) trenches for varied slip angle and sinkage. All 12 measurements of each trench (blue) are shown. Note that there is no trench measurement for the 25mm sinkage trial at due to excessive deflection of the test rig.

4 Method: Planning Algorithms

The goal of this work is to manipulate sand into arbitrary shapes autonomously. What kinds of arbitrary shapes are there? First, within the construction industry, the tasks can be divided according to the types of construction vehicles they require: 1) digging and excavating with excavators 2) leveling and trenching with bulldozers, and 3) building a mound and ramp with excavators or bulldozers. In this work, we will only consider trenching tasks with bulldozers. The goal is to make a certain shape trench after a sequence of pushes from an initial state of flat surface. We imagine a scenario where a robotic arm that has a flat blade for its end-effector pushes the sand. The robot will always push sand perpendicularly, so the goal is to find a trajectory sequence that will shape sand into a desired shape. We also assume desired trenches are at constant depth.

Figure 4: Two Environment Settings: single stroke trenching and multi stroke trenching

4.1 Problem Definition

Given a goal height-map and a initial level surface , the objective is to find a sequence of actions to minimize the difference between and , where is the final time. The state at time is , where describes the state of the robot.

We then formulate two problem scenarios for the trenching task as shown in Figure 4. The single stroke shaping is where the end-effector never leaves the trenching depth and has to dig the trench in one go. At each step the agent will choose one of the four discrete actions, . This formulation allows discrete planners like A-star (A*) and Deep Q-Network (DQN) [12, 20]. The multi-stroke shaping assumes a more relaxed scenario where at each step, the agent chooses a start point and end point to perform a variable length of a single straight push. Here, the action is continuous , where . This formulation will require continuous planners like Deep Deterministic Policy Gradient (DDPG) [18].

4.2 A-star Planner for Trenching

For single stroke shaping, we can simplify the sand state into a binary map. As shown in Figure 5, we represent the continuous heightmap with a binary height map of ones and zeros. Each push “digs” a portion of the map into zeros. But this simplification entails some loss of expressivitiy, even with discrete actions and fixed depth. For example, the box in Fig 5 right has two maps that result in the same representation. Nevertheless, this assumption is still acceptable because we are 1) assuming a constant blade depth for pushing the sand, 2) interested only in the dug portion of the sand and not interested in the pile that accumulates adjacent to the trench. This reduces the dimension of the problem further so we can use graph-search algorithm without continuously expanding the search tree. Yet it is relevant and accurate enough to dig trenches into desired shape.

Figure 5: Simple representation of sand height-map for A-star planning

The A-star algorithm, which is a heuristic optimal weighted sequential planner, uses an estimate of the cost-to-go

, in addition to cost-so-far , to expand the search tree efficiently [12]. The objective here is to reach desired height-map while taking the minimum number of actions. So the cost should include the height-map difference and the distance traveled. We combine the two costs to estimate the optimal path cost . The cost-so-far is the distance traveled , and the distance-to-go is , where the weight is determined so that the value of sand displaced after an action is the same as the step distance, . Our approximation is admissible as since we can not achieve the goal shape with less than left.

4.3 Results: A-star Planner Trenching in a Single Stroke

Once we formulate the problem into a graph search algorithm, we can use A* for single stroke shaping. Figure 6 shows a few shapes the algorithm achieved with actions overlaid. All planned path are optimal; it achieved the desired height map in the minimum number of steps.

After discretization of the state space into the binary heightmap, the problem of single stroke shaping becomes more feasible to solve. However, the number of nodes the algorithm has to open to find the optimal path quickly explodes as soon as it has to do multiple passes (i.e. come back the way we came). For each of the examples in Figure 6, the number of nodes opened and steps it took were: A-18,532 nodes and 23 steps; S-788,492 nodes and 27 steps; T-23,864 nodes and 18 steps; R-28,096 nodes and 25 steps (though note that the state of the map can take any of possible values for a relatively small 7x7 grid, so these are still a small fraction of the total state space).

Figure 6: Optimal Path for Shaping with Single Stroke

4.4 Deep Reinforcement Learning for Shaping Sand

Graph search algorithms like A-star quickly becomes infeasible for tasks involving continuous action and non-trivial shapes. We will apply deep reinforcement learning to achieve a desired height map. Deep reinforcement learning (RL) using convolutional neural network proved to be useful for tackling problems with large state space (i.e. input is a three channel 2-D image). Our task can utilize such tools as the heightmap is like a 2-D image. In this work, we will explore two popular RL algorithms: Deep Q-Network (DQN) and Deep Deterministic Policy Gradient (DDPG)

[20, 18].

State and Transition Function The state space is constructed by all possible information that the agent can observe in the environment. We define a state with two parts: the goal height-map and current height-map, . The transition function gives the transition process between states, which is implemented by the sand simulator developed above.

Action The action space is the set of actions that the agent can perform. An action is a set of parameters that control the position of our robot’s end-effector at step . We define the behavior of an agent as a policy function that maps states to deterministic actions, . At step , the agent observes state then gives the stroke parameters of the next stroke . The state evolves based on the transition function until going on for steps. For DQN, we use single stroke shaping scheme where the actions are discrete. For DDPG, we use the multi-stroke shaping scheme where the actions are continuous. The points determine the start and end points of one stroke.

Reward The reward function acts to evaluate the action decided by the policy. Selecting a suitable metric to measure the difference between the goal height-map and current height-map is crucial for the trenching agent. The reward is designed as,


where is the reward at step , is the measured loss between and and is the measured loss between and . We used

distance for the loss function in this work.

To make sure the final height-map resembles the goal height-map, the agent should be driven to maximize the cumulative rewards in the whole episode. At each step, the objective of the agent is to maximize the sum of discounted future reward with a discounting factor .

4.5 Results: Deep RL for trenching alphabets

To test our algorithm we set the goal shape to be trenched alphabets. The algorithm we are currently testing is Deep Deterministic Policy Gradient (DDPG) with hindsight experience replay (HER) [2]. With the hindsight experience replay, we add additional experience with the new goal set as the next state after each action. This speeds up training in the sparse reward environment. Figure 7 shows some example results after 10,000 episodes. So far the best results typically have two correct letters (X and Z) and 20/26 letters with at least one correct stroke. Further improvement in the network structure and additional training will be necessary to achieve a practical level of success.

Figure 7: Trenching Alphabets with DDPG

5 Analysis

5.1 Simulation of Sand Robot Interaction

There were some insights we learned while trying to speed up the simulation. First is choosing the flow rate. To find the optimal , the flow rate from Equation 1, consider two height blocks that are not in equilibrium (Figure 8).

Figure 8: The flow rate should be just right to reach equilibrium in the least number of steps. If too much is transferred to the adjacent block, the local slope changes sign or becomes zero. If not enough is transferred, it will take more steps to reach equilibrium.

The right amount of flow rate is when the local slope reaches the angle of repose after a single step, which is the equilibrium state. If the perfect amount of flow to the adjacent block is , which is 1 unit in Figure 8, then to find the perfect from equation 1, we need so that the amount of flow is the perfect amount ,


We observe the rate of flow is proportional to the grid size, and it is for the 1D case. For 2D with eight-point connectivity and using similar reasoning, works best, as validated experimentally.

Another method to speed up the simulation is by updating only a portion of the height map. Because the soil erosion happens only near a tool interaction, we can have a bounding box of update so that we update only a portion of the height map. Instead of a bounding box we could have checked the grids to update only when change happens, however this method required more computation time.

5.2 A* Planner Order of Complexity

The problem of finding the optimal single stroke path for drawing actually grows rather quickly. For trenching the S shape, the planner had to open 788,492 nodes, although the shape looks simple. Every step after the planner has to back-track (for S, after the first U-turn), the number of nodes it has to open grows by order. Because a single step backwards is equivalent to growing the search tree, it increases by four-fold for our four connectivity problem. By changing the ratio , we can aggressively look for path that is suboptimal but that opens considerably fewer nodes. For the S example, by reducing alpha from 7.2 to 3.0, the planner had to open 63,568 nodes to find the same optimal path of 27 steps. So for this case it was still able to find the optimal path without opening as many nodes. In the T example, by reducing alpha from 7.2 to 3.0, the planner had to open 820 nodes to find path that took 21 steps (while the optimal path has 18 steps).

6 Conclusions

This work introduced a new interesting problem: shaping sand autonomously. Although it is baffling to think about how we can start tackling the problem, by dividing the tasks into simpler ones and by formulating the problem into something more concrete, we can find different ways to go about this. The simple simulator shows great promise since we can incorporate this with other sand simulation methods (like force interaction which is important in actual robots). The previous works we looked at would be a good starting point in the future. Another interesting formulation is the A* planner. We were able to simplify the problem into discrete form and actually found a interesting problem. A single stroke shaping is somewhat like the traveling salesman problem. We can play with the heuristics to find a faster algorithm that can find the optimal path without opening too many nodes.

Future work will apply deep reinforcement learning for shaping sand. Because a deep neural network will be able to capture the high dimensionality of sand, it will be able to shape sand without the need for simplification of the sand model as it was necessary for A-star. Also, force-interaction can be added to the model which will allow more accurate representation of the sand and robot dynamics. We believe this work provides a good starting point for shaping continuously deformable environment for many situations.


  • [1] Acute Market Reports (2018-04) Global earthmoving equipment market size, market share, application analysis, regional outlook, growth trends, key players, competitive strategies and forecasts, 2018 to 2026. External Links: Link Cited by: §1.
  • [2] M. Andrychowicz, F. Wolski, A. Ray, J. Schneider, R. Fong, P. Welinder, B. McGrew, J. Tobin, O. P. Abbeel, and W. Zaremba (2017) Hindsight experience replay. In Advances in Neural Information Processing Systems, pp. 5048–5058. Cited by: §4.5.
  • [3] J. P. Bouchaud, M. E. Cates, J. R. Prakash, and S. Edwards (1994) A model for the dynamics of sandpile surfaces. Journal de Physique I 4 (10), pp. 1383–1410. External Links: ISSN 1155-4304 Cited by: §2.4.
  • [4] Bureau of Economic Analysis (2019-02) Gross domestic product by industry: third quarter 2018. External Links: Link Cited by: §1.
  • [5] F. Buse, R. Lichtenheldt, and R. Krenn (2016-05) SCM - a novel approach for soil deformation in a modular soil contact model for multibody simulation. In 4th Joint International Conference on Multibody System Dynamics, Vol. 4, pp. . Cited by: §2.1, §2.4, §2.
  • [6] J. M. Carlson, J. T. Chayes, E. R. Grannan, and G. H. Swindle (1990-11) Self-orgainzed criticality and singular diffusion. Phys. Rev. Lett. 65, pp. 2547–2550. External Links: Document, Link Cited by: §2.4.
  • [7] S. Clarke, T. Rhodes, C. Atkeson, and O. Kroemer (2018-10) Learning audio feedback for estimating amount and flow of granular material. In Conference on Robot Learning, Vol. 87, pp. 529–550. Cited by: §2.5.
  • [8] P.A. Cundall and O. Strack (1979-01) A discrete numerical mode for granular assemblies. Geotechnique 29, pp. 47–65. Cited by: §2.2, §2.
  • [9] H.L. S. D. Sulsky (1994) A particle method for history-dependent materials. Computer Methods in Applied Mechanics and Engineering 118 (1-2), pp. 179–196. External Links: ISSN 0045-7825, Link Cited by: §2.3.
  • [10] S. Dadhich, U. Bodin, and U. Andersson (2016) Key challenges in automation of earth-moving machines. Automation in Construction 68, pp. 212 – 222. External Links: ISSN 0926-5805, Document, Link Cited by: §2.5.
  • [11] M. G. Bekker (1969-05) Introduction to terrain–vehicle systems. University of Michigan Press. Cited by: §2.1, §2.
  • [12] P. E. Hart, N. J. Nilsson, and B. Raphael (1968-07) A formal basis for the heuristic determination of minimum cost paths. IEEE Transactions on Systems Science and Cybernetics 4 (2), pp. 100–107. External Links: Document, ISSN 0536-1567 Cited by: §4.1, §4.2.
  • [13] M. Hirayama, J. Guivant, J. Katupitiya, and M. Whitty (2019) Path planning for autonomous bulldozers. Mechatronics 58, pp. 20 – 38. External Links: ISSN 0957-4158, Document, Link Cited by: §2.5.
  • [14] M. Hirayama, M. Whitty, J. Katupitiya, and J. Guivant (2018) An optimized approach for automatic material distribution operations of bulldozers. International Journal of Advanced Robotic Systems 15 (2), pp. 1729881418764716. External Links: Document, Link Cited by: §2.5.
  • [15] D. Holz, T. Beer, and T. Kuhlen (2009) Soil deformation models for real-time simulation: a hybrid approach. In Workshop on Virtual Reality Interaction and Physical Simulation, Cited by: §2.2.
  • [16] T. Hwa and M. Kardar (1989-04) Dissipative transport in open systems: an investigation of self-organized criticality. Phys. Rev. Lett. 62, pp. 1813–1816. External Links: Document, Link Cited by: §2.4, §2.4.
  • [17] R. Krenn and G. Hirzinger (2008-11) Simulation of rover locomotion on sandy terrain – modeling verification and validation. In 10th ESA Workshop on Advanced Space Technologies for Robotics and Automation, Vol. , pp. . Cited by: §2.1, §2.4, §2.
  • [18] T. P. Lillicrap, J. J. Hunt, A. Pritzel, N. Heess, T. Erez, Y. Tassa, D. Silver, and D. Wierstra (2015) Continuous control with deep reinforcement learning. arXiv preprint arXiv:1509.02971. Cited by: §4.1, §4.4.
  • [19] M. S. M. Ostoja-Starzewski (1989) A master-slave manipulator for excavation and construction tasks. Robotics and Autonomous Systems 4, pp. 333–337. Cited by: §2.5.
  • [20] V. Mnih, K. Kavukcuoglu, D. Silver, A. Graves, I. Antonoglou, D. Wierstra, and M. Riedmiller (2013) Playing atari with deep reinforcement learning. arXiv preprint arXiv:1312.5602. Cited by: §4.1, §4.4.
  • [21] C. Nouguier, C. Bohatier, J. J. Moreau, and F. Radjai (2000-10-01) Force fluctuations in a pushed granular material. Granular Matter 2 (4), pp. 171–178. External Links: ISSN 1434-5021, Document, Link Cited by: §2.1, §2.2.
  • [22] K. Onoue and T. Nishita (2003-10) Virtual sandbox. In 11th Pacific Conference on Computer Graphics and Applications, Vol. , pp. 252–259. External Links: Document, ISSN Cited by: §2.4, §3.2.
  • [23] C. Pavlov and A. M. Johnson (2019) Soil displacement terramechanics for wheel-based trenching with a planetary rover. In 2019 IEEE International Conference on Robotics and Automation (ICRA), Vol. , pp. . External Links: Document, ISSN Cited by: Figure 10, Figure 11, Figure 9, Table 2, Appendix A: Sand model comparison, §1, Figure 3, §3.3, §3.3.
  • [24] M. Pla-Castells, I. García-Fernández, and R. Martínez (2015-01) Modelling and simulation of several interacting cellular automata. International Journal of Computer Aided Engineering and Technology 7, pp. 192–206. Cited by: §2.1, §2.4.
  • [25] R. A. R. G. Adam and Bertinshaw (1992) Waste dumps - the new frontier. Third Large Open Pit Mining Conference, pp. 255–259. Cited by: §1.
  • [26] H. Romero-Lois, C. Hendrickson, and I. J. Oppenheim (1989-06) A strategic planner for robot excavation. In Sixth International Symposium on Automation and Robotics in Construction, Cited by: §2.5.
  • [27] S. Singh (1994-02) Developing plans for robotic excavators. In Proc. ASCE Conference on Robotics for Challenging Environments, Cited by: §2.5.
  • [28] S. Singh (1997-10) The state of the art in automation of earthmoving. ASCE Journal of Aerospace Engineering 10 (4). Cited by: §2.5.
  • [29] W.C. Swick and J.V. Perumpral (1988) A model for predicting soil-tool interaction. Journal of Terramechanics 25 (1), pp. 43 – 56. External Links: ISSN 0022-4898, Document, Link Cited by: §2.1.
  • [30] A. P. Tampubolon, T. Gast, G. Klár, C. Fu, J. Teran, C. Jiang, and K. Museth (2017-07) Multi-species simulation of porous sand and water mixtures. ACM Trans. Graph. 36 (4), pp. 105:1–105:11. External Links: ISSN 0730-0301, Link, Document Cited by: §2.3.
  • [31] K. Terzaghi (1943) Theoretical soil mechanics. John Wiley & Sons. External Links: ISBN 9780470172766 Cited by: §2.4.
  • [32] T. Tsuji, Y. Nakagawa, N. Matsumoto, Y. Kadono, T. Takayama, and T. Tanaka (2012) 3-d dem simulation of cohesive soil-pushing behavior by bulldozer blade. Journal of Terramechanics 49 (1), pp. 37 – 47. External Links: ISSN 0022-4898, Document, Link Cited by: §2.2.
  • [33] K. Wiesenfeld, C. Tang, and P. Bak (1989-03-01) A physicist’s sandbox. Journal of Statistical Physics 54 (5), pp. 1441–1458. External Links: ISSN 1572-9613, Document, Link Cited by: §2.4.
  • [34] J. Y. Wong (2008) Theory of ground vehicles. John Wiley & Sons. Cited by: §2.1, §2.
  • [35] Y. Zhang (1989-07) Scaling theory of self-organized criticality. Phys. Rev. Lett. 63, pp. 470–473. External Links: Document, Link Cited by: §2.4.

Appendix A: Sand model comparison

Figure 9 shows the test bed we used to compare trench profiles [23], with system parameters listed in Table 1. The results are listed in Table 2, and we show a histogram of height errors compared to the experimental data (Figure 10) and the first principles model (Figure 11) reported in [23].

Figure 9: The single-wheel testbed setup (right). For each trench, the wheel is lowered to a fixed sinkage () and moves across level sand at a fixed slip ratio () and slip angle (). [23]
Sym. Description Value
Angle of repose [ ] 29
Cohesion [Pa] 0
Wheel radius [mm] 48.0
Wheel width [mm] 50.0
Grouser height [mm] 5.0
Grouser volume fraction 0.1
Table 1: Soil and wheel parameters used for model validation.
Trench Type Avg. Error Median Error Depth Error
[mm] [mm] [mm]
Comparison to Trench Data
All trenches 2.2 1.7 0.9
2.3 1.4 1.2
2.0 1.7 0.5
2.1 1.6 0.7
2.1 1.4 0.2
2.6 2.0 1.7
mm 2.0 1.6 0.7
mm 2.1 1.6 0.8
mm 2.6 2.6 1.1
Comparison to [23]
All trenches 1.1 0.4 0.6
0.5 0.4 0.03
1.6 0.4 0.3
1.7 0.7 0.7
1.2 0.5 0.6
0.4 0.1 0.2
mm 0.4 0.1 0.1
mm 0.6 0.4 0.1
mm 2.2 1.9 0.9
Table 2: Comparison of proposed model to trench measurements and model proposed in [23]
Figure 10: Frequency of errors in proposed model compared to trench data collected in [23].
Figure 11: Frequency of errors in proposed model compared to trench model presented in [23].