Synthetic Terrain for Simulated Missions developed in a collaboration between Parallel Applications Technologies Group and Optical Navigation.

Rover missions benefit from Synthetic Terrain package.



Contributors:
Robert Gaskell
James Collier
Laura Ekroot Husman
Richard L. Chen




Synthetic terrains offer space flight projects an opportunity to perform rapid, comprehensive, and rigorous modeling of the critical elements of a mission in order to compute quantitative measures of design performance, associated risk, and actual mission utility value. Significantly, these studies can be performed early in the mission cycle, long before actual hardware is available for testing.

JPL engineers with the Parallel Applications Technologies and Optical Navigation groups have developed the Synthetic Terrain Package to generate synthetic terrains on parallel, high-performance computers and serve them to remote simulations at near-interactive speeds. The terrain generation software realistically and consistently models physical phenomena such as rocks and craters at arbitrary resolutions, typically ranging from 0.01 to 10 meters. The terrain server has been used for two rover simulations, one using the actual Sojourner autonomy flight code, and the other a more general algorithm. Monte Carlo studies of rover designs interacting with synthetic terrains were executed in parallel in order to quickly compute performance statistics and risk estimates.

Rock distribution on simulated terrain Rock distribution on simulated terrain

Testing for rover applications can be and is done on Mars-like surfaces on Earth. However, there are in general only a few such physical test sites, and a limited number of the expensive spacecraft available with which to test. The ability to run and test designs, algorithms and interfaces is critical to mission success. Run on high performance multiprocessor machines, additional value is gained in numbers and types of parameters than can be explored early in the process. A baseline system can be run using a rover of a given size, a given navigation algorithm, and a synthetic terrain with an expected rock density. The ability to run the simulation many times with varying parameters increases the confidence in performance results. Users may set parameters such as rock and crater resolution and density. Though the current modeling is for Martian terrain, with some modifications these same generation techniques have been used for other solar systems bodies including asteroids and comets.

The artificial surfaces provided by the terrain server are characterized by maps that give the elevation and albedo at regularly spaced surface points. Other information, such as dust characteristics and coverage, could easily be included. For example, one additional map is used to keep track of the fractional rock coverage, so that rocks need only be added in the final stages of construction.

Surfaces are built sequentially. A preexisting surface is acted upon by a module representing some geological process such as cratering, to produce a new surface. Additional modules can then act upon that surface. Cratering is done one crater at a time, so that later craters can impact on earlier ones.

At any given resolution, the surface properties sampled at a point are representative of that point and not averaged over a bin. Higher resolution surfaces retain the subset of lower resolution points, resulting in a consistent zooming behavior.

A portion of the terrain, such as the area seen by a rover, can be computed "on the fly" at a resolution of a few millimeters.

The goal of the current work is to enhance a preexisting topographic and albedo map of a real Martian surface with consistent subresolution terrain. An enhanced form of stereo-photoclinometry, which has been developed over the last few years, is used to create high resolution real surfaces. Images from Mars Global Surveyor (MGS) and Viking, plus MGS Mars Orbiter Laser Altimeter (MOLA) data will be used to obtain elevation and albedo maps at a resolution nearly as good as the imaging itself, and much better than stereo alone.

Synthetic Terrain Package.    The synthetic terrain package consists of three software components: a terrain generator, a terrain server, and a terrain client. The generator generates synthetic terrain. The server manages terrains and serves portions of them on demand to remote simulation clients such as a rover simulator.

Terrain generator features include detailed modeling of physical phenomena, fractal-based algorithms, and parallelized execution for rapid generation. User controls include specifying the physical phenomena which should occur to shape the surface, the order in which these phenomena occur, and critical parameters constraining these phenomena. For example, the user could request:

  1. a base terrain sloped toward the southeast, then
  2. rocks randomly distributed with a density of 17.6% (the same as at the Viking II landing site), and finally
  3. craters having diameters between 10 and 1000 meters.

The generator algorithms are based on fractals, resulting in any piece of terrain having consistent features regardless of the resolution. In addition, parallel execution of code has resulted in up to a 98% reduction in terrain generation time from previous versions of the software.

The terrain server was created to reduce the execution time for simulations by eliminating the recomputation of terrain. When a client requests a terrain patch, the server checks the directory for the library of already generated terrain. This directory is referred to as the metadata. If the terrain already exists, the requested patch is returned. If not, then the requested patch is generated and added to the metadata directory before being returned. In addition, the server can perform simple imaging processing to bi-linearly interpolate between pixels, rotate or flip terrain, and down-sample pixels.

A standard library of functions or application programming interfaces (APIs) connects the client to the remote terrain server and manages communication with the server. Simplicity was a primary goal in development of this interface. A client can recover most of the terrain information it needs through calling a single function, getDEM(), which takes location, size, and phenomena as inputs and provides a digital elevation map (DEM) as output. Additional entry points return the albedo map.

Rover Simulations.   Simulations for the study of rover navigation algorithms on the Martian surface where the actual flight code or candidate flight code can be used directly in the simulation are ideal applications for synthetic terrains.

Rovers are positioned on the synthetic terrain and given another location as a goal to reach. As a performance metric for this task, the linear distance of the goal from the start location divided by the actual distance traveled by the rover was used. Rover efficiency is always some value between 0 and 1 where 1 is the best possible performance and 0 is the worst.

The first client to use this environment was a simulation of the Sojourner Rover, created and navigated on a simulated Martian terrain using the actual Sojourner flight code. Large numbers of identical rovers having different initial conditions were asked to traverse terrain with different levels of rock and crater density. Conditions were chosen to correspond to the known conditions encountered by missions such as Viking. This approach makes it possible to perform orders of magnitude more trials on flight software than could possibly be achieved using physical rovers. The introduction of rapid synthetic terrain on demand using the Synthetic Terrain server and the parallel execution of all rovers simultaneously on a 256 node supercomputer can now execute a 100-rover Monte Carlo experiment in about 30 minutes.

Rover simulations using rock density equal to 5.9 percent

The green lines show the paths of rovers using the Sojourner navigation algorithm traversing synthetic terrains with rock densities of 5.9, 8.8, and 11.7%. These rock surface coverages are, respectively, one-third, one-half and two-thirds of the 17.6% rock density at the Viking Lander II site.

Rover simulations using rock density equal to 11.8 percent Rover simulations using rock density equal to 17.6 percent

The team performed similar experiments using rock densities of 5.9%, 8.8%, and 11.7%. For this algorithm, using limited input parameters, variance in rover behavior was unacceptably high except for the 5.9% density surface. Using a second generation navigation algorithm applicable to a wider class of rovers led to a marked improvement. The second simulation included numerous parameters, such as critical rover dimensions. Monte Carlo experiments with this rover design on an 8.8% rock density terrain resulted in an average efficiency of 0.89 (averaging 44.9 meters to reach a goal 40 meters away) whereas the Sojourner model has an average efficiency of 0.21 (averaging 116.8 meters to reach a goal 25 meters away) for this same rock density.

Future work.   Future work for the team includes generating synthetic terrain that is an elaboration of an actual location being considered as a mission target site. The terrain data that a client can access currently consists of an elevation map, an albedo map, and an optional grayscale image. Additionally, the terrain server could produce views from specific locations with simple sensors such as a laser ranger or a CCD. In order to simulate the scientific activity of a rover it may become important to return additional information about the terrain surface such as a classification map; for example, the geologic composition of the terrain pixel by pixel.

The synthetic terrain package will also expand to provide a rich set of simulation services and easy programming interfaces to make adopting this package an attractive and even dominant choice for a wide spectrum of system modelers and designers.


The Synthetic Terrain Package is discussed in more detail in "Synthetic Environments for Simulated Missions", R. W. Gaskell, J. B. Collier, L. E. Husman, and R. L. Chen, Proceedings of the IEEE Aerospace Conference, Big Sky, MT, March 10-17, 2001.

Readers interested in more information about the Synthetic Terrain Environment project may contact Dr. Laura Ekroot Husman, or Dr. James B. Collier, at JPL's Advanced Laboratory for Parallel High-perfomance Applications.