The Ptolemy Project

Ptolemy image 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.

Current Research Thrusts

  • 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 white paper and the PRET workgroup.
  • Real-time software: Models of computation with time and concurrency, metaprogramming techniques, code generation and optimization, domain-specific languages, schedulability analysis, programming of sensor networks. See a relevant position paper.
  • Distributed computing: Models of computation based on distributed discrete events, backtracking techniques, lifecycle management, unreliable networks, modeling of sensor networks. See recent results on distributed real-time computing, for example.
  • 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 the 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 targets scientific workflows.
  • Abstract 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.

Upcoming Events

News archive.