Specification of a Satellite Constellation Constraint-based Planning Control

Under construction...

SC Domain | Related Papers | Issues | Satellite Specification | Application Scenario | I-Psc | Links

The Satellite Constellation Domain

The satellites' constellation domain consists of a group of low-Earth orbiting satellites that have cross-link communication capability, each carrying nearly the same suite of instruments. Each satellite receives high-level goals from ground station operators, or other satellites. Then, it will perform its own planning by decomposing a goal into a set of sub-goals to be achieved with its onboard subsystems (satellites' resources) and in cooperation with other satellites.

A wide variety of missions can be better implemented with satellites working together to meet a single objective. Reasons cited for using constellations include lower mission cost, the need for coordinated science and special coverage of survey requirements. For example storms and other phenomena observed from multiple angles can be used to generate 3-D views; or a cluster of satellites flying in formation and working together can form a virtual lens hundreds of miles across.

Design generated via AVM Dynamics tool.

However the most widely used application of satellite constellations is for reasons of extended area coverage. Low earth orbiting constellations such as Globalstar use dozens of satellites to provide continuous global or near-global coverage. The GPS system uses a constellation to provide global coverage and spatial diversity of the multiple satellites in view. Earth mapping missions can use multiple satellites to shorten the time between successive observations of the same area. NASA is planning missions of up to 100 satellites for magnetosphere research with orbits nearly as distant as the moon. A single-satellite approach would require many years of data collection to match what the constellation can survey in a short amount of time.



Some Related Papers

Zetocha, P., Self, L., Wainwright, R., Burns, R., Brito, M. and Surka, D. (2000). Commanding and Controlling Satellite Clusters. IEEE Intelligent Systems 15(1):8-13.
Summary: presents a proposal of satellite constellation control based on three principal technologies: ObjectAgent architecture, the Spacecraft Command Language (SCL) and CASPER (Continuous Activity Scheduling Planning Execution and Replanning). Roles of each of these components are discussed during the development of spacecraft and cluster managers. Functions of cluster managers are listed as: command and control, cluster data management, formation flying and fault management. Such functions are detailed, as for example, to determine what information the cluster manager should keep in its database. Types of ground system commands are also discussed (satellite-assigned and no-assigned commands) and related to the problem of autonomy in the last case. Finally a summary about the TechSat 21 testbed (system for operation simulations) is presented.
Richards, R., Houlette, R. and Mohammed, J. (2001). Distributed Satellite Constellation Planning and Schedulling. Proceedings of 14th FLAIRS Conference, Key West, Florida, USA.
Summary: presents a distributed coordination architecture (D-SpaCPlanS) to constellations, which intends to minimise the reliance of the whole system on any single component. The architecture is based on HTN planning methods, also presenting a reactive component. The principal idea is to spread authority and responsibility to minimise the impact of changes into the constellation and also allow a self-reorganisation to adapt to such changes. The abstract design of satellites is discussed and the principal components listed as: social coordinator (hierarchy management), group manager (take orders and pass them, local P/S (local deliberative and reactive planning and control) and local database (repository for local information).
Verfaillie, G., Garcia, F. and Peret, L. (2003). Deployment and Maintenance of a Constellation of Satellites: a Benchmark. Proceedings of 13th International Conference on Automatic Planning & Scheduling, Trento, Italy.
Summary: deals with the deployment and maintenance of constellations as a sequential decision problem under uncertainty , using the Markov Decision Process framework to formulate such a problem. The goal is to minimise over a given timeline the sum of unavailability costs. This formulation does not prejudge the use of any specific solving approach, so that several approaches are canalised and classified in three categories: knowledge-based (expert or case-based systems), model-based (planning or sequential decision making) and simulation-based;
Barrett, A. (1999). Autonomy Architectures for a Constellation of Spacecraft. Proceedings of 5th International Symposium on AI, Robotics and Automation for Space, Noordwijk, The Netherlands.
Summary: analyses architectures for constellations based on four components: mission manager, planner/scheduler, executive/diagnostician and reactive controller. Among the features of these components, the paper discusses the idea of varying the constellation's level of autonomy by varying the abstractness of the mission profile (part of mission manager). The architectures are master/slave coordination, teamwork and peer-to-peer coordination. Communication is the principal feature discussed, together with knowledge boundaries. In brief architectures are characterised via the use components by the satellites, which give more or less autonomy to them;
Damiani, S., Verfaillie, G. and Charmeau, M. (2005). An Earth Watching Satellite Constellation: How to Manage a Team of Watching Agents with Limited Communications. Proceedings of 4th International Joint Conference on Autonomous Agents and Multiagent Systems, Utrecht, The Netherlands.
Summary: presents a detailed domain related to watching missions (volcanic eruptions and forest fires). Then a proposal of anytime reasoning mechanism is discussed to deal with the problem of constellation management. Three architectures are compared in terms of coordination/communication: strong coordination (more control communication to update some activity status), weak coordination (only initial control communication to setup the activities) and no coordination (no control communication).
Surka, D., Brito, M. and Harvey, C. (2001). The Real-Time ObjectAgent Software Architecture for Distributed Satellite systems. Proceedings of IEEE Aerospace Conference.
Summary: discusses the implementation of a software to support the development of satellite constellations control. The two principal features of this software is a messaging architecture approach to agent-to-agent communication and the idea of skills that enable agents to be dynamically added to a system to improve the system capabilities or recover from a failure. AI techniques are not built in to the software core, however they can be incorporated at. The paper also presents a technical discussion about the implementation of such a software in two different platforms: Matlab and C++. Operational system and hardware are also commented.
Zetocha, P. and Brito, M. (2001). Development of a Testbed for Distributed Satellite Command and Control. Proceedings of the IEEE Aerospace Conference.
Summary: discusses a testbed for satellite constellations based on three major components: the ground system, the flight system and the simulation environment. The paper gives an explanation about the cluster manager, principal component of the flight system detailing the functions of command and control, constellation data management, formation flying and fault management.
Mohammed, J. (2001). Mission Planning for a Formation-Flying Satellite Cluster. Proceedings of 14th International FLAIRS Conference, Key West, Florida, USA.
Summary: lists some advantages of constellations over single large satellites and describes some planning and schedule requirements/goals for this domain. The architecture proposed employs a dynamic hierarchical social organisation, which plans at three levels of abstraction: constellation, clusters and individual satellites. The paper details the activities of each of these levels. Details about the activity model (resources required, conditions and constraints) and an optimisation algorithm (constructive and iterative repair techniques) are also given. In brief, an initial schedule that satisfies all constraints is built up and the iterative repair technique then iteratively reduces the number of resource contention conflicts by selecting observations to be adjusted or removed.
Breger, L., Ferguson, P., How, J., Thomas, S., McLoughlin, T. and Campbell, M. (2003). Distributed Control of Formation Flying Spacecraft Built on OA, MIT, Cambridge, MA
Summary: presents extensions of some guidance and control algorithms for satellites formation flying.

Issues in SC Domain

  • Structural Architecture: The first issue to the development of systems for satellites constellations (henceforth SC) control is the number of satellites that could compose the constellation. The scenario that we intend to use is represented by 30 satellites divided in 6 subgroups. However, future missions will tend to use more satellites so that the idea of scalability must be considered. According to previous works in this area, the management role of the Earth operation centre could be simplified by a hierarchical organisation, since the operation centre needs to interact with a few entities in order to direct the activities of several satellites;

  • Dynamic organisation: Architectures for SC are likely to employ a dynamic organisation to combine the efficiency of hierarchical activity delegation with the robustness afforded by dynamic reorganisation. The idea behind dynamic organisations is that they are able to reorganise themselves to adapt to changes and minimise, for example, the impact caused by the introduction of new members or the loss of old members due to failures;

  • Resource reasoning: the idea of resources is very important because decisions of employing satellites must consider the availability of onboard resources (e.g., memory, power, downlink accesses and bandwidth) as well as the satellites' current status (e.g., viewing geometry, reference trajectory, sensor states, etc.). For example, in low Earth orbit, micro-satellites are in view of a ground station for approximately four minutes at a time, about four times a day. If we consider 35 Gigabytes the total amount of data generated during a 2 minutes observation, and that such data could be continuously downlinked at the bandwidth of 150 Mbps, this process will take about 32 minutes. However, with the previous restriction (16 minutes a day), this process can take two days to downlink the data from a short two-minutes observation session. We can note that resources such as onboard memory, downlink accesses and bandwidth capabilities, are elements that in fact limit the number of experiments that can be performed, so that they should be explicitly represented;

  • Temporal reasoning: time is also fundamental to SC. For example, an image of a certain region of Earth can only be taken within a certain time frame while a satellite is over that location. In a general way, satellites whose missions involve observations and/or communication with the ground must take into account access windows, which are intervals of opportunity defined by when the satellite is in view of the target on the ground. However, for SC the problem is more complex because the relative position of individual satellites must be taken into account when assessing viewing geometry. In other words, all the satellites need to be in a specific position during a specific time;

  • Commitments and reports: consider that a satellite leader is trying to form a specific 6-size viewing geometry. In this case it must delegate activities and receive back commitments of the participants so that it can confirm the experiment. Approaches in SC control system are already considering this issue, so that knowledge bases of satellites are being developed to store information and to support reasoning about commitments of other satellites. Together with commitments we must also stress the importance of reports. Consider the situation where all satellites commit on the observation activity. However when one of them reaches the pre-defined position, it notes that its vision is blocked by clouds. In this case, such a satellite must report this fact so that the leader decides what must be done, such as changing (replanning) or cancelling the previous commitments;

  • Mutual Support: The idea of mutual support can be used in this domain to generalise the concept of collaboration. Consider the following example: a satellite sat moves out of the range of a ground station for a specified time period, such that it can lose important messages. In this case the system should account for informing this fact to other satellites so that the required messages may be relayed through the system using other agents in the constellation to still allow messages to reach their destination;

  • Autonomy: A last issue is associated with the autonomy of SC control systems. In general, important uses of autonomy in SC are: to enable that satellites fly within specified tolerance levels; avoid collisions; address fault detection, isolation and resolution; share knowledge, and plan and schedule activities. Autonomy entails a higher level of risk, so that safeguards must be put in place to ensure that no adverse conditions arise.


Satellite Specification

This section gives an idea about the low Earth orbit satellite (LEO) that we intend to use in our application. This satellite description, which was based on [Damiani, Verfaillie & Charmeau, 2005], is carried out via the definition of its resources and possible interactions with external components.



Satellite's Resources
  • Infrared detection instrument
    • Swath: 2500 km wide
    • Data: alarm to GEO satellites
    • Consume: permanently active (1 energy-unit/s)
  • Obsevation camera
    • Swath: 176 km wide.
    • Data: upload observations to memory (9600bps)
    • Consume rate: not permanently active (2 energy-unit/s)
  • Memory
    • Capacity: 280Mbyte
    • Downloading rate: 28800bps
    • Downloading consume: 1 energy-unit/s
  • Solar Panels and battery
    • Battery capacity: 60.000 energy-units
    • Produce rate: 2 energy-unit/s
Satellite's Communication Schema


Geostationary satellites (GEO) are spacecrafts that are positioned at an exact height above the earth (about 36000 Km). At this height they rotate around the earth at the same speed as the earth rotates around its axis, so in effect remaining stationary above a point on the earth (normally directly overhead the equator). A set of 3 GEO satellites can cover the whole Earth surface, providing a constant channel of communication to low rate communication, such as phenomenon alarms. Differently, the transmission of observation requests and data is only possible via the tracking stations and specific time windows, as discussed later.

We are considering that the solar panels are able to supply the battery during 12 hours a day. The others 12 hours the satellite must "survive" with the current charge of the battery. It is important to note the dependency between memory load and battery charge. Observations consume energy and memory and because downloading produces memory, by releasing memory space, but consumes energy.



Application Scenario

For the application scenario, based on [Damiani, Verfaillie & Charmeau, 2005], we are considering 4 identical LEO satellites ina orbital plan on a circular orbit at an altitude of 700 km. Tracking stations are localised in Kourou (French Guiana), Villafranca (Spain) and Perth (Australia). The operations center is represented by ESOC (Germany). At any time each LEO satellite is covered by one of the GEO satellites so that it can always send alarms to the ground.

There is an one minute delay between the detection of an unexpected phenomenon by a satellite and its possible observation by the same satellite. Each LEO satellite has a revolution period round the Earth of about 99 minutes and they can receive or emit data from or to a tracking station only when it is inside of one of the red circles. Time between two successive visibility windows depends of the current position (latitude/longitude) and satellite orbit. The orbit that we have chosen is reached by three tracking stations so that we can consider a 30 minutes between each visibility windows (we can also consider that each window has a timeline of 3 minutes).


The operation objectives of this constellation are to detect, observe and track forest fires. Starting fires must be automatically detected for a satellite, which must immediately send an alarm to the operation centre. Then the operation centre analyses the alarm information, deciding about to trigger an observation of the associated ground area. After that and as long as it is necessary, this area must be tracked by this satellite and by the others of the constellation, which will deliver related observation data to tracking stations.

Because the time between two successive flights of the same satellite is about 100 minutes, the task of tracking an are cannot be performed by a satellite alone. This requires a cooperative work of the satellites. Thus, tracking must be planned between all the constellation.



I-Psc Application

is an multiagent planning application that intends to evaluate the use of the I-X architecture to the development of a command and control sytem for satellite constelations. Psc is the acronym of the Pisces Constellation, set of stars better visualised during the month of November when the motivations for this project have emerged. I-X is an issue-handling workflow style of architecture, with reasoning and functional capabilities provided as plug-ins. Also via plug-ins it allows for sophisticated management of the internal model representations. I-X agents may be recursively or fractally composed, and may interwork with other processing cells or architectures.

The following concepts are going to be tested in this project:
  • Use of the I-Space tool to organise the constellation structure and to define the role of the satellites and ground components. I-Space allows the definition of relationships, such as superior-subordinate/leader-follow and peer-peer, and the capabilities of each individual agent. Currently the architecture does not provide ways of an organisational self-reconfiguration, so that the agent role are fixed and the constellation cannot adapt itself to new situations. This is an important future direction that should be considered so that the architecture can be applied in more diverse types of constellations;

  • Description of resources as constraints via the <I-N-C-A> ontology so that the resources can be naturally manipulated during the two-cycles constraint processing of the architecture;

  • Specification of time and temporal relations using the timeline approach, which is also codified via the <I-N-C-A> ontology. Note that this kind of domain requires a strong notion of activities synchronisation so that satellites can correctly cooperate during joint performances;

  • Representation of levels of autonomy associated with scenarios where specific kinds of decisions can be taken. Autonomy is being considered as a kind of constraint so that the adjustable autonomy mechanism is also a problem of constraint validation;

  • Investigation of the commitment and report mechanisms in this kind of scenario. Note that this is a trick problem due to very limited communication scheme. However satellite commitments to joint tasks can give a better idea about the availability of resources and performance of tasks.

Activities Formalisation

To be completed...

Example of Plan Operation

To be completed...

Implementation and Results

To be completed...


Related Links

- Cluster Mission, ESA project that uses a 4-satellites constellation to study small scale structures of the magnetosphere and its environment in three dimensions.

- Distributed Spacecraft, NASA page for Distributed Self-Commanding Robotic Systems.

- Standard O-Plan Demonstration in a satellite control domain.

- Open-SESSAME, a spacecraft simulation framework.

- Lloyd's satellite constellations page with lots of information and references about satellite constellations.

- SaVi, system that allows simulation of satellite orbits and coverage.

- Spacecraft Control Toolbox, package for design, analysis and simulation of satellites.

- SC Modeler, software that allows conceptual design, visualization and analysis of satellite constellations.


AIAI Artificial Intelligence Applications Institute
Centre for Intelligent Systems and their Applications
School of Informatics, The University of Edinburgh
Page maintained by c.siebra@ed.ac.uk, Last updated: Sat Apr 01 20:07:41 2006