Ptolemy II--Heterogeneous Concurrent Modeling and Design in Java

Adam Cataldo, Chris Chang, Elaine Cheong, Christopher Hylands1, Edward A. Lee2, Xiaojun Liu, Steve Neuendorffer, Claudius Ptolemaeus3, John Reekie4, Mary P. Stewart5, James Yeh, Yang Zhao, Haiyang Zheng, and Ye Zhou
(Professor Edward A. Lee)
Agilent Technologies, Cadence Design Systems, Defense Advanced Research Projects Agency (DARPA), Hitachi, Microelectronics Advanced Research Corporation (MARCO), National Semiconductor, and Philips

Ptolemy II [1] is a set of Java packages supporting heterogeneous, concurrent modeling, simulation, and design of component-based systems. The emphasis is on a clean, modular software architecture, divided into a set of coherent, comprehensible packages. The kernel package supports definition and manipulation of clustered hierarchical graphs, which are collections of entities and relations between those entities. The actor package extends the kernel so that entities have functionality and can communicate via the relations. The domains extend the actor package by imposing models of computation on the interaction between entities. Domains that have been created include:

The Ptolemy II software architecture supports interaction between domains (heterogeneous modeling). For example, FSM can be combined with CT to model hybrid systems.

Ptolemy II includes a number of support packages, such as

For more information about Ptolemy II, see .

Figure 1: Claudius Ptolemaeus

S. S. Bhattacharyya, E. Cheong, J. Davis II, M. Goel, C. Hylands, B. Kienhuis, E. A. Lee, J. Liu, X. Liu, L. Muliadi, S. Neuendorffer, J. Reekie, N. Smyth, J. Tsay, B. Vogel, W. Williams, Y. Xiong, and H. Zheng, Heterogeneous Concurrent Modeling and Design in Java, UC Berkeley Electronics Research Laboratory Memorandum No. UCB/ERL M02/23, August 2002.
4Postdoctoral Researcher

More information ( or

Send mail to the author : (

Edit this abstract