Achieving Autonomous AI Is Closer Than We Think
Written by Nikos Vaggalis   
Monday, 11 July 2016

AI powered software running on a Raspberry Pi is already capable of beating an experienced pilot in simulated air combat. We look at the ALPHA algorithm and how it might be deployed in the future.

Back in February, when we covered a meeting of experts taking place at the World Economic Forum in Davos to discuss the issue of autonomous robot weaponry, Stuart Russell, professor of Computer Science at UC Berkeley had warned that AI capable of acting on the battlefield with no human intervention necessary was much closer to reality than the rest of the panel expected.

Not much further down the road and we can now begin to experience the super intelligence he had described. A joint effort of the University of Cincinnati, Psibernetix Inc. and the US Air Force developed artificially intelligent powered software that is capable of beating even the best of human pilots in air to air combat simulations.

What's remarkable is that ALPHA, as the project is called, despite being a complex piece of engineering, does not require the clustered power of a super computer as most AI powered solutions of today do, but can successfully operate on a Raspberry Pi.

Like in clinical trials that are first run on lab mice, ALPHA has been given the green light to get tested against human pilots after first taking on the baseline AI's used by US Air Force for training humans in flight simulators.  It goes without saying that it beat them without much effort.  

The subject pilot, retired United States Air Force Colonel Gene Lee, possesses extensive aerial combat experience as an instructor and Air Battle Manager and considerable fighter aircraft expertise in a high-fidelity air combat simulator, is the one who  took ALPHA on and who later described his experience as:

“the most aggressive, responsive, dynamic and credible AI I’ve seen to date.”

It's important to note that the battles fought were not mere head to head dog fights between two aircraft but a complete and realistic tactical affair involving a number of aircraft on both sides. It's an act of warfare that merges many parameters: processing situational awareness, determining reactions, selecting tactics and managing weapons.

ALPHA's squadron comprised four fighters, the reds which begin over a defended coastline, while Lee controlled two, the blues 54 nautical miles due west. The blues each had four long range missiles (LRMs) and four acrobatic short range missiles (SRMs), whereas each red had four medium range missiles (MRMs) onboard. The red’s radar was long range with a +/- 70° azimuth angle and a 15 degree elevation angle.

ALPHA's numeric advantage over the blue forces was to compensate for the fact that for the simulation the red fighters were handicapped in comparison to the blues which benefited from some distinct advantages. While the ALPHA squadron was mechanically the same as the blue aircraft, it was equipped with shorter range missiles, reduced missile payload and limited prior intelligence of the blue forces, forcing it to rely on its organic sensors for situational awareness.

Despite those barriers, every repetition of encounter saw the same the outcome: ALPHA would prevail as the winner.

alpha.battleplan

The algorithm
How was ALPHA able to pull off such a feat and what kind of evolutionary algorithm lies behind its making?

The algorithm responsible goes by the name of "Genetic Fuzzy Tree" and its secret lies in the act of splitting a complex decision, such as "is the time right to fire a missile?" into smaller manageable sub-decisions, which coupled together would produce optimal solutions to the if/then scenarios that result out of each input data combination.  

The genetic part of it
ALPHA's instances and new versions are generated through genetic programming. Genetic Programming's roots are founded in the theory of biological evolution where a population is transformed into another population following the Darwinian principle of natural selection, using operations that are patterned after naturally occurring genetic operations, such as crossover and mutation. A population is comprised of individuals who are tested for their fitness, with those fittest being the ones to survive and produce offspring.

The parallel with biology continues in that through the acts of mutation and interbreeding the population is evolved into a newer population that performs better than its ancestors. This evolutionary process runs  continuously until a termination criterion is satisfied whereby the single best program in the population is harvested and designated as the result of the run. If the run is successful, the result may be a solution (or approximate solution) to the problem.

ALPHA's fitness function which measures the performance has been designed to completely capture the meaning of good behaviour :


"Merely rewarding friendly kill shots and punishing friendly misses and deaths could produce a competent controller. This can be improved upon though, as it is both possible to complete a mission with the enemy just barely being unable to get kill shots off and alternatively finish missions in which no red was ever close to a blue"

 

As such the ALPHA instances that fit the description survive the evolution and improve from the one generation to the next.

The Fuzzy part
Clearly apparent from its name, "Genetic Fuzzy Tree" is a tree based algorithm with branches, where each branch is burdened with the monitoring of a unique aspect's of ALPHA's control: high-level tactics, firing, evasion, situational awareness, and defensiveness. The defensiveness branch for example is responsible for determining when defensive missile firings should occur, when to engage in manoeuvres or when to adjust tactics.
 
Each branch then, is comprised of a collection of "Fuzzy Inference Systems" (FISs), in essence controllers that linguistically classify and combine  input data taken into ALPHA by its sensors, such as positional, velocity, and acceleration states or estimated missile range etc. In other words, FIS transform numbers, states and raw data, into language. For example the reading coming in from the radar fact that the enemy aircraft is 54 miles away would be classified as "far away", while the fact that the enemy aircraft has fired 3 missiles, would result into has "one missile left". The input data is then combined together to form as many as plausible scenarios there can be, such as "If
missile launch computer confidence is moderate and mission kill shot
accuracy is very high, fire missile”

alpha.gft 
This form of linguistic interpretation of data was chosen for a number of reasons. First of all it renders the verifying, “did I build it right?”, and the validating,“did I build the right thing?”, of the algorithm possible, not an easy task when tackling autonomous implementations since they can adapt and learn by themselves, therefore being in a continuous non-deterministic state; there's just to many possible outcomes for every possible input, which makes quantifying impossible.

And here's where Fuzzy logic comes into play, as it can understand, verify and validate requirements set in natural language as well as transforming them into real world models.

An example is that of communicating the human expertise in a specific domain or problem, directly as a FIS into the GFT, i.e a well tested solution to a given problem alike design patterns in software engineering, exhibiting the tree structure's ease of expandability.

Also, because ALPHA is a software agent that is destined to control Unmanned Combat Aerial Vehicles (UCAVs) which will act as wingmen flying side by side with the human pilots (until finally replacing them?), linguistic control will allow the seamless exchange of data and commands between humans and AI.

It seems that artificial intelligence is conquering yet another complex domain of human activity, that of warfare. The truth is that you can't pass on this opportunity, or miss the massive potential and impact AI would have on the field, when its stellar performance renders it capable of not just do millions of calculations in the scale of microseconds but also devise as well as dynamically and in real time amend tactical battleplans comprising of any number of manned or unmanned aircraft.

The motive is to phase out human mistakes in an air to air combat occurring due to the randomness, dynamicity and uncertainty of the environment which requires the taking of complex and accurate decisions in split seconds.
 
And that's the current plan for ALPHA; to become an extraordinary wingman who fires missiles in defence because it was programmed to do so. That does of course not rule out that its role won't change into another, more proactive, one in the future. It's just a matter of tweaking the genetic algorithm to change the meaning of 'fitness' and wait until a new ALPHA breed with that in mind emerges.

All this, will render ancient history the days when AI had such barriers that limited their hardware representatives (robots,UCAVs) into just lifting and ordering boxes onto shelves, or into displaying their most extreme, out of the box and not 'forseen' activity when escaping the testing ground and going out in the 'wild' for a walk.

After many AI winters riddled with failures, we are now confidently entering an era where it's not just that autonomous AI is expected faster than initially thought, but we are already  entangled in an arms race of fierce competition between the super powers. A prime example of that, is Russia's autonomous border control robots who will be able to automatically collect and analyze information on any violations as well as predict situations for producing ready-made proposals for the border protection.

The coin has a flip side too, however. Applications that are initially funded and supported by the military soon find use in commercial applications, see DARPA and the advent of Internet as the most famous example. As such there is no quality of the GFT methodology that specializes it for aerial combat or military use. It can be applied to any problem domain with the following characteristics:

  • a need to be verified and validated for either safety or performance assurance
  • to be computationally efficient
  • unable to pre-script control due to uncertainties in the environment
  • be able to transparently monitor the system and its intent at all times.

Such problem domains are robotic surgery, design automation, and cyber security, among many others.

As such, Psibernetix's gesture to give back to the Python community, (as the GFT was implemented in Python and cross-compiled into C using Cython so it can run on embedded devices), by open sourcing and contributing the library used in creating fuzzy logic controllers through a python3 callable package (PsiberLogic 2.1.0 available on the PyPI - the Python Package Index), is a very welcome move that encourages AI's application to good deeds.

 

More Information

Psibernetix Inc.

PsiberLogic 2.1.0 - Python package

Journal of Defense Management "Genetic Fuzzy based Artificial Intelligence for Unmanned Combat Aerial
Vehicle Control in Simulated Air Combat Missions"

"Beyond video games: New artificial intelligence beats tactical experts in combat simulation"

Robots on Patrol: Russian Borders to be Guarded by Artificial Intelligence

Related Articles

Autonomous Robot Weaponry - The Debate

 

To be informed about new articles on I Programmer, sign up for our weekly newsletter,subscribe to the RSS feed and follow us on, Twitter, FacebookGoogle+ or Linkedin

 

Banner


Lightbend Announces Akka 3
15/11/2024

Lightbend, the company that developed Akka, has announced Akka 3, and has changed its name to Akka. The company produces cloud-native microservices frameworks, and Akka is used for building distribute [ ... ]



Gender Differences In Coding Style
13/11/2024

A novel investigation into the gender gap between men and women regarding coding ability was undertaken by Dr Siân Brooke. Her conclusion? There is a difference in the Python code [ ... ]


More News

 

espbook

 

Comments




or email your comment to: comments@i-programmer.info

 

Last Updated ( Wednesday, 13 July 2016 )