Best T. rex hunting strategy may have been a direct attack.

Even when stalking upwind a T. rex is frequently able to get within 40 meters before being detected. (Screen capture, click to enlarge.)

Even when stalking upwind a T. rex is frequently able to get within 40 meters of the prey before being detected. (Screen capture, click to enlarge.)


After five weeks at the Bone Marrow Transplant center at the University of Iowa Hospital I’m finally back home and working on Dinosaur Island again!


As part of my work on scent ‘plumes’ or ‘cones’ and the ability of prey animals, like the Edmontosaurus, to detect the scent of a nearby T. rex and respond accordingly, I was wondering if it would be beneficial for a T. rex to adopt a hunting strategy in which it purposefully maneuvered downwind of the prey and then attacked. Consequently, I created a simulation in the Dinosaur Island AI test bed program (see screen shot above) with one T. rex (Bob) and one Edmontosaurus (Gertie), entered wind direction and velocity (as shown by the plume) and let the AI control Bob’s hunting with two different methods:

  1. An AI routine that maneuvered Bob downwind of Gertie and then attacked.
  2. An AI routine that maneuvered Bob directly towards Gertie using the fastest path (considering for terrain and slope).

After running a small number of tests today (about 25) it appears that the maneuvering downwind of the prey strategy is not as beneficial as I would have thought. Frequently Bob was observed by Gertie while maneuvering downwind. But, more importantly, when Bob adopted strategy #2 (the direct rush), Gertie didn’t smell or see Bob until he was within less than 40 meters.

Keep in mind that these experiments are just preliminary and, most importantly, they only involve a T. rex stalking an isolated Edmontosaurus (who almost always traveled in herds) but this is still food for thought. When a T. rex encountered a single isolated prey animal, it’s best hunting strategy was probably a direct rush.

Share

How fast could a hungry dinosaur run?

A slide from my comprehensive examination explaining how to calculate the cost of traversing different terrain types.

A slide from my comprehensive examination explaining how to calculate the cost of traversing different terrain types. Different terrain types have different ‘costs’ associated with them. When a vehicle (or a dinosaur) travels across a map divided into a grid the distance is calculated (axis or diagonal) and then multiplied by the terrain modifier. (Click to enlarge.)

There are a lot of fascinating web sites that attempt to answer the question, “how fast could a dinosaur run?” One site (The University of Sheffield) even has an online calculator (click here). However, all of these sites – and the University of Sheffield calculator – are based on measuring the stride (the space between dinosaur footprints) and then using a formula (v = 0.25*g0.5*SL1.67*h-1.17¬† where¬† (v) is the animal’s speed, (h) its hip height and its (SL) its stride length) to calculate the speed of a particular dinosaur in a particular place ‘frozen in time’.

Was the dinosaur running as fast as she could? What kind of terrain was the dinosaur walking on? Since the measurements are made from preserved dinosaur trackways, the dinosaur was probably walking across wet sand. Dinosaurs could certainly run faster on dry flat land than on swampy land. What effect did walking up a slope have on a dinosaur’s speed?

Dialog box from Dinosaur Island that allows the user to modify the cost of traversing different terrain types and climbing up slopes.

Dialog box from Dinosaur Island that allows the user to modify the cost of traversing different terrain types and climbing up slopes.

Above is a dialog box just added to Dinosaur Island for adjusting the values of the ‘cost’ of walking across various terrains and the cost associated with climbing slopes of different steepness. These costs are used in the least weighted path algorithm that we discussed yesterday (see How a dinosaur is not like a tank). Least weighted path algorithms are what make computer controlled characters (like dinosaurs) behave naturally and make intelligent decisions. As Ed Isenberg commented yesterday (here) there is no reason to think that dinosaurs, especially predators, could not make intelligent decisions about the most efficient way to get to their dinner.

Least weighted path algorithms and terrain and slope costs, are some of the methods that ensure that Dinosaur Island will be the most accurate and detailed simulation of life in the Cretaceous yet created.

SmallRuleBelow is a screen capture of the current values that we are using in Dinosaur Island for least weighted path calculations. These are the values that were used when calculating the movement paths displayed here.

The current values being used for terrain and slope least-weighted path calculations (screen capture).

The current values being used for terrain and slope least-weighted path calculations (screen capture).

Share

How a dinosaur is not like a tank.

A cross-section view of the elevation that a T. Rex (named Bob) will have to traverse to get to an Edmontosaurus regalis (named Gertie). Click to enlarge.

A cross-section view of the elevation that a T. Rex (named Bob) will have to traverse to get to an Edmontosaurus regalis (named Gertie). A very steep riverbank is between Bob and Gertie. Vertical axis: elevation in meters, horizontal axis: distance to goal in meters. Click to enlarge.

A few days ago I wrote about Dinosaurs, tanks and line of sight algorithms and how my previous work in modeling and simulations (M&S) for military wargames (specifically line of light algorithms) was applicable in Dinosaur Island. Today I am working on the models for dinosaur movement, speed, and what are called “least weighted path” algorithms.

You are probably familiar with least weighted path algorithms even if the term is new to you. Least weighted path algorithms are used to calculate routes in GPS units for cars or smartphones or for various internet sites like MapQuest, Google or Bing. When calculating a route there are a number of criteria to chose from. Does the user want:

  • The fastest route?
  • The shortest route?
  • The most fuel efficient route?
  • The route that avoids certain features (such as specific terrain, topography or extreme slopes)?

These options are what ‘weight’ the potential routes in a ‘least weighted’ path algorithm. For example, taking the Interstate is often the fastest route (least amount of time) but frequently is not the shortest route (least amount of distance).

Back in grad school I did my ‘comprehensive exam’ for PhD students on the subject of least weighted path algorithms. There are two very popular algorithms that solve this problem: one is Dijkstra’s algorithm (which is an exhaustive search solution) and the other is the A* algorithm, by Peter Hart, Nils Nilsson and Bertram Raphael. The primary difference between Dijkstra’s algorithm and the A* algorithm is that Dijkstra’s is guaranteed to return the optimal solution but it often takes the most time to calculate. The A* algorithm is much faster to calculate but is not guaranteed to return the optimal (or perfect) solution. In computer games we almost always use the A* algorithm because speed of calculations (especially over large maps) is more important than having the absolutely perfect route. At the bottom of this blog are links to descriptions of these algorithms and my research paper discussing an optimization of A*.

But, what does this have to do with dinosaurs and tanks?

When working on an M&S involving vehicles (like tanks) our primary concern is finding the fastest way for the tank to get from Point A to Point B. Sometimes, we want the tank to avoid entering into an area where the enemy (called OPFOR, or ‘Opposition Forces’ in military parlance) can hit it with their weapons (this is called ‘range of influence’ or ROI). This is illustrated below:

This image shows how MATE will calculate the least weighted path for a unit using roads, terrain, elevation and avoiding enemy weapons range for 'path weights'. (Click to enlarge.)

This image shows how MATE will calculate the least weighted path for a unit using roads, terrain and elevation and avoiding enemy weapons range for ‘path weights’. (Click to enlarge.)

We also want the tank to take advantage of roads and avoid swamps, rivers and ponds.The maximum speed of a tank traveling on a road is higher than the maximum speed of a tank traveling across a field. This is not the case with a T. rex or an Edmontosaurus regalis.

Another difference between tanks and dinosaurs is that as long as a tank has fuel it can go at 100% of their maximum speed (on a specific terrain) without problems. This simply isn’t the case with dinosaurs. As dinosaurs expend energy (and remember, energy is the ‘currency’ of Dinosaur Island, see: The currency of Dinosaur Island) they get tired and they can’t run as fast or as far. Also, dinosaurs run at their maximum speed only for short distances and only in extreme emergencies or at the very end of a hunt when they attack.

The illustration at the top of the blog also points out another major difference between tanks and dinosaurs: modern tanks (specifically the M1A1) has a published specification of being able to climb a 60 degree slope at a speed of 7.2 km/h (see here). That’s pretty impressive. It’s unlikely that that a T. rex could navigate a slope that steep. In the cross-section at the top of this blog we show the slopes that Bob, the T. rex, will encounter following a straight line to Gertie, the Edmontosaurus.

Clearly we’re going to need to use a least weighted path algorithm for calculating dinosaur movement so that they will avoid steep riverbanks and crevices. We also will create a table of ‘energy costs’ that dinosaurs will incur as they travel across various terrains (like swamp). These values will be used in our least weighted path algorithm.

SmallRule

Some links about least weighted path algorithms:

  • Dijkstra’s algorithm on Wikipedia has a very easy to follow description with a couple of cool animations to show how it works. Link here.

  • A* search algorithm on Wikipedia also has a couple of very nice animations to show how it works and pseudocode. Link here. By the way, I once sent Nils Nilsson an email asking him what the ‘A’ in A* stood for and he replied, “algorithm.” Now you know.

  • “An Analysis of Dimdal’s (ex-Jonsson’s) ‘An Optimal Pathfinder for Vehicles in Real-World Terrain Maps,‘ the paper for my Comprehensive Exam can be downloaded here.
Share