NASA Logo, National Aeronautics and Space Administration


The first step towards creating a distributed prognostics systems is the design of algorithms that can be efficiently parallelized. This involves scheduling of subsystems such that the overall communication time is less than the computation time. Since most algorithms are not designed with a distributed system in mind, this involves extensive analysis of the algorithms for various patterns such as data access and instruction overlaps, which can then be exploited to formulated optimized systems. Alternatively, new algorithm designs are also being pursued that specially cater to distributed systems. For example, particle filters lend themselves very well towards parallelization except for one step called resampling. Thus, the design of new resampling algorithms for distributed implementation is a major step towards efficient system design.


The design methodology starts with identifying the key components in a system and analyzing them to locate data parallelizable portions. An analysis of the memory access patterns is also made. Based on the above analysis, partitioning and scheduling of the various components is performed. The final partitioning and scheduling may not be statically determined and can depend on run-time inputs.

The system architecture in general comprises multiple computing elements (CE) as shown in the figure below, each of which comprises of a sensor or a set of sensors and a communication device i.e., a wireless transreceiver or wired communication capabilities besides an embedded processing element. Under most operating conditions these devices would use both the sensor and embedded processing capabilities. However, in many cases they could also be used just as a computing device in which case they could act as monitors for the rest of the system – schedule tasks, detect failures and initiate recovery, provide access to resources such as an external database etc. – or act as “helpers” to offload the computation requirements from other such devices in order to maintain real-time constraints of the application.

System architecture

In many instances, the computing devices may not have sufficient computational capabilities for a large and complex system in which case a more powerful central server can be used. Such a server would collect data from smaller embedded devices that have preprocessed the sensor data, processes them and communicates the result back. Note that the central server can be a multiprocessor platform and therefore use parallel computations and can vary from a single processor system to a cluster of microprocessors.

A very important design element of such a system is the network connection architecture which determines how the various components are interconnected with each other. The network connection varies chiefly depending on the following factors:

  • Wired or wireless connection capability
  • Processing power of CEs
  • Communication bandwidth

The nodes in our system have two principal modes of functionality - diagnostics and prognostics. In the diagnostics mode, the nodes collect sensor data and process them to look for signature for faults. When such a signature is detected participating nodes switch to the prognostics mode. Note that only nodes that can support extra computation participate in the prognostics routine while the rest continue with their individual tasks.

System architecture in details. Click image to enlarge.


Automated design environments such as Matlab SIMULINK are used universally for fast system design and prototyping. Such environments also allow automatic code generation that reduces design and implementation time while resulting in systems with fewer human-generated errors. They also allow for extensive design space exploration resulting in better solutions. However, often such generic tools are not suitable for special applications such as prognostics which is fairly new. Furthermore, distributed prognostics involves complex optimizations which cannot be elegantly handled by most standard tools. Motivated by these factors, an automated synthesis environment for distributed prognostics is being designed. Such an environment will enable a designer to build and test a complete distributed prognostics system.

First Gov logo
NASA Logo -