Image 01

21st Century AI

A blog about achieving meaningful Artificial Intelligence

Archive for the ‘Computational Military Reasoning’ Category

How a dinosaur is not like a tank.

Tuesday, July 23rd, 2013

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 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.

(This blog is reposted from my other site: Dinosaur-Island.com)

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 and 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.

I’ll be presenting at Defense Gametech 2012

Thursday, January 5th, 2012

Just a brief plug: I will be presenting a lecture entitled, “Artificial Intelligence in Modern Military Games,” at the Defense Gametech 2012 conference in Orlando, Florida, on March 29, 2012. Link to the conference here: Gametech 2012.

During this lecture I will be demonstrating MATE as well as going into great detail describing the underlying algorithms in MATE.

If you’re interested and in the area I would love to meet you.

 

 

MATE (Machine Analysis of Tactical Environments)

Sunday, October 30th, 2011

MATEI’ve been working on this project since about 2003 (you could reasonably argue that I actually started development in 1985 when I began work on UMS: The Universal Military Simulator) and I’m finally in a position to share some of this work with the world at large. TIGER (for Tactical Inference GenERator) was my doctoral research project and it was funded, in part, by a DARPA (Defense Advanced Research Project Agency) ‘seedling-grant’.

After I received my doctorate, DARPA funded my research on computational military reasoning. Since DARPA was already funding a project called TIGR (Tactical Ground Reporting System) my TIGER was renamed MATE.

MATE was created to quickly arrive at an optimal tactical solution for any scenario (battlefield snapshot) that is presented to the program. It also designed to facilitate quickly entering unit data (such as location, strength, morale, etc.) via a point and click graphical user interface. (GUI). There are three main sections to MATE’s decision making process:

  1. Analysis of the terrain and opposing forces (REDFOR and BLUFOR) location on the terrain. This includes the ability to recognize certain important tactical situations such as ‘anchored’ or ‘unanchored flanks’, ‘interior lines of communication’, ‘restricted avenues of attack’, ‘restricted avenues of retreat’ and the slope of attack.
  2. Ability to implement the five canonical offensive maneuvers: turning maneuver, envelopment, infiltration, penetration and frontal assault. This includes the ability to determine flanking goals, objectives and optimal route planning (including avoiding enemy line of sight and enemy fire).
  3. Unsupervised Machine Learning which allows MATE to classify the current tactical situation within the context of previously observed situations (including historically critiqued battles).

I wished to test MATE with an actual tactical situation that occurred recently in either Afghanistan or Iraq. Even though my research was supported by DARPA I did not have access to recent ‘after action’ reports. However, when I saw the HBO documentary, “The Battle for Marjah,” I realized that enough information was presented to test MATE.

The clip, below, from the HBO documentary, shows the tactical situation faced by Bravo Company, 1/6 Marines February 13, 2010:

It took only a few seconds to enter RED and BLUE unit locations to MATE (the map was downloaded from Google Earth):

The Battle for Marjah as shown on MATE (actual screen capture).

Screen capture of MATE showing the Battle for Marjah tactical situation. Click on image to see full-size.

After clicking on the ‘Calculate AI’ icon, the ‘Analyze and Classify Current Situation’ button and the, ‘Generate HTML Output and Launch Browser’ button, MATE’s analysis of the tactical situation was displayed. Total elapsed time was less than 10 seconds (on a Windows XP system, or 5 seconds on a Windows 7 system).

MATE then automatically generated HTML pages of its recommendations including graphically displaying optimal paths for an envelopment maneuver that encircled enemy positions:

MATE output for Envelopment Maneuver COA.

MATE output for Envelopment Maneuver COA. Click on image to see full-size.

MATE automatically produced HTML pages of its analysis and optimal course of action (COA) routes and instructions and launched the default browser on the computer.

To see the actual HTML output of MATE’s analysis of, “The Battle for Marjah” situation click here (opens in a new window).

For more information about MATE contact sidran [at] RiverviewAI.com.