The Ptolemy Project

Ptolemy Watercolor by David Broman
(Watercolor by David Broman)
The Ptolemy project studies modeling, simulation, and design of concurrent, real-time, embedded systems. The focus is on assembly of concurrent components. The key underlying principle in the project is the use of well-defined models of computation that govern the interaction between components. A major problem area being addressed is the use of heterogeneous mixtures of models of computation. A software system called Ptolemy II is being constructed in Java. The work is conducted in the Center for Hybrid and Embedded Software Systems (CHESS) in the Department of Electrical Engineering and Computer Sciences of the University of California at Berkeley. The project is directed by Prof. Edward Lee. The project is named after Claudius Ptolemaeus, the second century Greek astronomer, mathematician, and geographer.

New Book:

About the Ptolemy Project:

Current Research Thrusts:

  • Swarm technologies: This effort is addressing the enormous potential (and associated risks) enabled by billions of networked sensing and actuating devices. See the TerraSwarm Research Center.
  • Precision-timed (PRET) machines: This effort reintroduces timing into the core abstractions of computing, beginning with instruction set architectures, using configurable hardware as an experimental platform. See the PRET workgroup.
  • Cyber-physical systems: Models of computation with time and concurrency, metaprogramming techniques, code generation and optimization, domain-specific languages, schedulability analysis, programming of sensor networks. See the iCyPhy (industrial cyber-physical systems) consortium and early position paper and publications page for elaborations.
  • Distributed real-time systems: Models of computation for orchestrating real-time tasks across a network. See our 2007 RTAS paper on distributed real-time computing, and the PTIDES workgroup.
  • Understandable concurrency: This effort focuses on models of concurrency in software that are more understandable and analyzable than the prevailing abstractions based on threads. See a position paper.
  • Systems of systems: This effort focuses on modeling and design of large scale systems, those that include networking, database, grid computing, and information subsystems. See for example the Kepler project, which is a scientific workflow management system.
  • Semantics: Domain polymorphism, behavioral type systems, meta-modeling of semantics, comparative models of computation. See papers on semantics.
  • Hybrid systems: Blended continuous and discrete dynamics, models of time, operational semantics, language design. See the paper on hybrid systems semantics and paper on semantics of mixed continuous and discrete systems.

News:

News archive.