Technology > NIMS Networked Infomechanical Systems > NIMS Software Architecture for Adaptive Sampling and Task Allocation
The combined Adaptive Sampling and Task Allocation methods have been introduced to both enable efficient measurement (for a specified accuracy estimate) while also enabling fast response to events. Briefly, when a node detects a phenomenon (sensor reading reaches a predetermined threshold) it notifies the SN and the mobile node. We say that a task is created. The notification message contains the node ID, its location and the sensor reading. Given this information, the TA algorithm will assign robot to the task, navigate the robot to that task and start the adaptive sampling on a limited cell provided by TA.
The systems described above posed the following requirements on the system software architecture:

Figure 1. The NIMS system architecture combines the adaptive sampling and Task Allocation (TA) algorithms providing interfaces to actuation and sensing. While the adaptive sampling relies on mobile sensor inputs, TA responds to events emanating from distributed fixed sensors. The adaptive sampling and TA algorithms are coordinated and hosted by the embedded Stargate platform.
The NIMS software architecture (as illustrated in Figure 1) is based on the Emstar system~\cite{emstar}. This has been selected for NIMS and provides the following benefits. First, Emstar provides a common set of embedded platform interfaces for multiple embedded platforms that compose NIMS field and NIMS-LS systems. This offers the benefit that applications developed for the NIMS-LS system may then be directly applied to NIMS field systems. Second, the Emstar event architecture provides the designer with robust methods for servicing unscheduled events and order of operations. The Adaptive Sampling and Task Allocation systems both benefit from this for implementation of their reactive nature. Third, the Emstar system provides a regular means for implementing the many complex device drivers that appear in NIMS electromechanical systems. Finally, Emstar has enabled NIMS emulation that includes rapid verification of mobile sensing algorithms (on standard x86 workstation platforms) in preparation for testing on the
NIMS-LS platform.
The Adaptive Sampling and Task Allocation algorithms operate on the Stargate platform and communicate over socket interfaces as shown in Figure 1. Both Adaptive Sampling and Task Allocation exploit Emstar device drivers. The degree to which this Emstar-based architecture accommodates diverse applications is illustrated by this example. Here, the Adaptive Sampling algorithm (with its interfaces to motor control systems) is developed in C and C++. However, the Task Allocation algorithm is implemented in Java. The NIMS-LS architecture has incorporated this diversity and enables robust operation of the combined complex and event-ware Adaptive Sampling and Task Allocation processes.
Faculty:
Prof Deborah Estrin
Prof William J Kaiser
Graduate Students:
Maxim Batalin
Lewis Girod
Steve Liu
Mohammad Rahimi
Yan Yu