Engineering Autonomous Space Software

Lead Research Organisation: University of Liverpool
Department Name: Computer Science


This proposal is based on two premises: that (1) increased autonomy is essential for future space exploration; (2) that existing programming methods are tedious to apply to autonomous components that have to handle an environment with continuous state variables. For well defined discrete-event environments the above rational agent approach is well developed; for a continuous environment, however, perception processes need to be linked with abstractions forming the basis of behaviour. As the environment changes, the abstracted models may also change. Hence, agents are needed that can use these abstractions to aid their decision making processes, use these in the predictive modelling of a continuous world, and connect these abstractions to both planning and goal achievement within rational agents.This project also intends to replace the current complex programming techniques, used for autonomous spacecraftcontrol, with simpler declarative programming. High-level, declarative agent programming languages have been investigated at Liverpool and such theories and languages will be developed further for agents that require predictive modelling capabilities. The Southampton team is experienced both in the formal handling of analytical and empirical models for control and prediction, and in developing control software for real satellites. The merging of these themes is very promising. Although the results will be transferable to ground vehicles and robots, this project will particularly illustrate the new methods in space applications, both in simulation and laboratory hardware demonstrations.


10 25 50
publication icon
Bujorianu M (2012) Preface in Annals of Mathematics and Artificial Intelligence

publication icon
Dennis L (2014) Practical verification of decision-making in agent-based autonomous systems in Automated Software Engineering

publication icon
Dennis L (2010) Satellite Control Using Rational Agent Programming in IEEE Intelligent Systems

publication icon
Dennis L (2011) Model checking agent programming languages in Automated Software Engineering

publication icon
Fisher Michael (2013) Verifying Autonomous Systems in COMMUNICATIONS OF THE ACM

publication icon
Lincoln N (2013) Autonomous Asteroid Exploration by Rational Agents in IEEE Computational Intelligence Magazine

Description One of the problems faced by operations in space is the time taken for communications to reach Earth and for replies to be returned. Enhancing satellites with the capability to make simple decisions, such as to take evasive action or fix internal problems as they arise, should increase their effectiveness and robustness. It should also allow more ambitious missions to be planned in which satellites work in close proximity to each other or objects such as asteroids since they will have a much greater capacity for avoiding collisions.

Satellite control is currently implemented using well understood technology from the field of Control Systems. At the heart of these systems is a _feedback loop controller_ which monitors data from sensors and compares it to the data that is expected. The system then uses standard mathematical equations to tweak things such as output from the thrusters in order to make small corrections. In this way control systems can easily follow smooth paths, and compensate for minor irregularities. However these techniques do not work well in situations where dramatic changes are required, for instance taking sudden evasive action, or switching between internal components.

The field of Artificial Intelligence has developed many techniques for computer decision-making. One of the most successful of these has been _rational agents_ which react to events based upon their "beliefs" about the state of the world and their current "goals" (e.g., mission objectives in the case of satellites). However these techniques are not well equipped for subtle fine-grained control.

This project aimed to combine current state-of-the-art control systems technology with rational agent technology to produce a system that could both perform fine-grained monitoring and make large-scale decisions.

We have carried out theoretical work to describe such a system in a general mathematical way which does not depend upon the particular tools (MatLab and the Gwendolen programming language) which we used to build a demonstrator. This allows the high level ideas developed by the project to be used for other satellite programming set-ups and, particularly, in other autonomous vehicle control situations: for instance, deep-sea exploration is also hampered by unreliable communications; and in search and rescue situations there may be few human operators available but a short-term need for a lot of robots. Preliminary techniques have also been developed for providing guarantees that the decision-making subsystem will always make the correct decisions given the information it receives from the sensors.

An actual system has been implemented and tested both in a simulated environment and on a hardware test bed at the University of Southampton. This system includes a number of experimental sub-systems such as a simulation engine, which can be used to assist in decision making by simulating possible outcomes of actions and events, and an abstraction engine which monitors incoming sensor data and can use it to deduce general facts such as "all the thrusters are working correctly". We have also examined how groups of satellites can make communal decisions about moving into and maintaining formations, or efficiently examining a set of objects such as asteroids.
Exploitation Route The researchers on this project have also helped create a new workshop series: Formal Methods in Aerospace. A new intedisciplinary research centre, The Centre for Autonomous Systems Technologies, has been founded at Liverpool under the direction of Professor Fisher, in order to pursue further research in this area. The work has also lead to a number of follow-on grant applications including the EPSRC funded "Reconfigurable Autonomy", which was the highest rated project in the EPSRC/Industry £16M "Autonomous and Intelligent Systems Partnership" call.
Sectors Aerospace, Defence and Marine,Digital/Communication/Information Technologies (including Software)

Description Techniques developed here have been used beyond the space arena and have been generalised to provide the basis for a broader framework for autonomous systems software. This work has led on to several EPSRC projects, most notably "Reconfigurable Autonomy"
First Year Of Impact 2010
Sector Digital/Communication/Information Technologies (including Software)
Impact Types Economic

Description Reconfigurable Autonomy
Amount £419,422 (GBP)
Funding ID EP/J011770/1 
Organisation Engineering and Physical Sciences Research Council (EPSRC) 
Sector Public
Country United Kingdom
Start 06/2012 
End 05/2016
Description Software development support for Lego Rovers
Amount £15,816 (GBP)
Organisation University of Liverpool 
Sector Academic/University
Country United Kingdom
Start 11/2016 
End 03/2017
Description Verifiable Autonomy
Amount £640,791 (GBP)
Funding ID EP/L024845/1 
Organisation Engineering and Physical Sciences Research Council (EPSRC) 
Sector Public
Country United Kingdom
Start 09/2014 
End 03/2018