The PILOTS Programming Language

 PILOTS is a ProgrammIng Language for spatiO-Temporal data Streaming applications, especially designed to be used for building applications that run on moving objects such as airplanes, cars, and so on. With very high-level specifications, users can easily build applications that take spatio-temporal data streams as an input and produce streams as outputs for use by other applications such as actuator controls, data mining/analyses/visualization, and error correction codes. These applications can be treated as components of a larger stream processing system.

 PILOTS is declarative in nature and follows a syntax similar to Pascal. The unique language features in PILOTS are first-class support for data selection, data interpolation, and error recovery. Data selection is used when no data is available at a specific location and time. By interpolating the selected data, an application can view a set of heterogeneous data streams as a homogeneous data stream. This enables a separation of concerns: application programmers can focus on their application model. Error recovery is achieved by measuring an error function over time, and comparing its behavior to expert-created error signatures. Alternatively, error detection/recovery models can be learned from data, in particular, using linear regression and dynamic Bayesian learning.

 The PILOTS programming language was created by Carlos Varela and Shigeru Imai at Rensselaer Polytechnic Institute.
 Current administrator(s) of the language are: Shigeru Imai (shigeru.imai1 AT gmail DOT com).
 For information on PILOTS (such as motivation, specifications, techniques), refer to our PILOTS related publications.
 For information on the Worldwide Computing Laboratory, and other work in progress, please see

Open Source Software and Data

(See the full release list here)


 Here is a video that demonstrates how a PILOTS program works with erroneous Angle-of-Attack sensor data such as allegedly observed in accidents involving the Boeing 737 Max 8 (Lion Air Flight 610, Ethiopian Airlines Flight 302)

 Here is a video that demonstrates how a PILOTS program works with failed airspeed sensor data from Air France Flight 447 accident.

Child Projects


Invited Talks

Press Coverage


 This project has been partially supported by the DDDAS program of the Air Force Office of Scientific Research (AFOSR), Grants No. - FA9550-19-1-0054, FA9550-15-1-0214, and FA9550-11-1-0332; National Science Foundation (NSF) Grants No. - CNS 1816307 and ECCS 1462342; and a Yamada Corporation Fellowship.

Worldwide Computing Laboratory

Department of Computer Science

Rensselaer Polytechnic Institute

Last modified: September 2, 2019