858750
Operational Semantics of Hybrid Systems
Hybrid systems are heterogeneous systems that include continuous-time (CT) subsystems interacting with discrete-event (DE) subsystems. They are effective models for physical systems interacting with software or experiencing discrete mode changes. 
This dissertation discusses an interpretation of hybrid systems as executable programs written in a programming language with a hybrid system semantics. The semantic properties of such a programming language affect our ability to understand, execute, and analyze a hybrid system model. This dissertation focuses on a few semantic issues that come in defining such a programming language, such as the interpretation of discontinuities in CT signals and simultaneous discrete events in DE signals, liveness property, and the consequences of numerical ODE solver techniques. 
The interactions between CT and DE subsystems and between DE subsystems themselves are captured by discontinuities in continuous-time signals and simultaneous discrete events in discrete-event signals. In order to precisely represent them in compute execution results, a two-dimension domain, called "super-dense time," is used as the domain for defining signals. This domain allows a signal to have multiple values at the same time point while keeping the values ordered. 
CT and DE subsystems are modeled as actors, which are functions that map a set of signals to another set of signals. In this way, a hybrid system model is just a network of actors interacting via signals. We can always transform a network of actors into a composite actor with feedback, where the function of the composition actor is the composition of functions of the component actors. The least fixed point solution to the function of the composite actor, which is a set of signals, gives the denotational semantics of the hybrid system model. 
The operational semantics takes the denotational semantics as a mathematical foundation and defines a set of rules for evaluating actors such that the least fixed point solution can be constructed. Rather than constructing the whole signals, the operational semantics only computes a discrete subset of the signals called a discrete representation of the signals. The constructive procedure is formalized with the Abstract State Machine semantics, where a hybrid system is treated as a state transition system and the rules specify how state transformations are performed. 
This operational semantics supports heterogeneous and hierarchical composition of different models of computation, such as CT, DE, finite state machines, and synchronous languages, and modular execution of the composition as a whole. This ability makes it easy to jointly model and design software controlled systems. 
The operational semantics proposed in this dissertation has been implemented in HyVisual, which is a software tool for modeling and simulating hybrid systems. HyVisual is part of the Ptolemy II software framework, which is available in open-source form at http://ptolemy.org.
1955659
A framework for comparing models of computation
We give a denotational framework (a "meta model") within which certain properties of models of computation can be compared. It describes concurrent processes in general terms as sets of possible behaviors. A process is determinate if, given the constraints imposed by the inputs, there are exactly one or exactly zero behaviors. Compositions of processes are processes with behaviors in the intersection of the behaviors of the component processes. The interaction between processes is through signals, which are collections of events. Each event is a value-tag pair, where the tags can come from a partially ordered or totally ordered set. Timed models are where the set of tags is totally ordered. Synchronous events share the same tag, and synchronous signals contain events with the same set of tags. Synchronous processes have only synchronous signals as behaviors. Strict causality (in timed tag systems) and continuity (in untimed tag systems) ensure determinacy under certain technical conditions. The framework is used to compare certain essential features of various models of computation, including Kahn process networks, dataflow, sequential processes, concurrent sequential processes with rendezvous, Petri nets, and discrete-event systems.
10518317
Embedded Software
Syntax It is useful to separate syntactic issues from semantic issues. An abstract syntax defines how a design can be decomposed into interconnected components, without being concerned with how a design is represented on paper or in a computer file (that is the concern of the concrete syntax). An abstract syntax is also not concerned with the meaning of the interconnections of components, nor even what a component is. A design is a set of components and relationships among them, where the relationships conform to this abstract syntax. Here, we describe the abstract syntax using informal diagrams that illustrate these sets and relations by giving use cases, although formalizing the abstract syntax is necessary for precision. Port Port Actor Actor
10851913
Taming heterogeneity - the Ptolemy approach
Modern embedded computing systems tend to be heterogeneous in the sense of being composed of subsystems with very different characteristics, which communicate and interact in a variety of ways-synchronous or asynchronous, buffered or unbuffered, etc. Obviously, when designing such systems, a modeling language needs to reflect this heterogeneity. Today's modeling environments usually offer a variant of what we call amorphous heterogeneity to address this problem. This paper argues that modeling systems in this manner leads to unexpected and hard-to-analyze interactions between the communication mechanisms and proposes a more structured approach to heterogeneity, called hierarchical heterogeneity, to solve this problem. It proposes a model structure and semantic framework that support this form of heterogeneity, and discusses the issues arising from heterogeneous component interaction and the desire for component reuse. It introduces the notion of domain polymorphism as a way to address these issues.
5648139
The problem with threads
For concurrent programming to become mainstream, we must discard threads as a programming model. Nondeterminism should be judiciously and carefully introduced where needed, and it should be explicit in programs. In general-purpose software engineering practice, we have reached a point where one approach to concurrent programming dominates all others namely, threads, sequential processes that share memory. They represent a key concurrency model supported by modern computers, programming languages, and operating systems. In scientific computing, where performance requirements have long demanded concurrent programming, data-parallel language extensions and message-passing libraries such as PVM, MPI, and OpenMP dominate over threads for concurrent programming. Computer architectures intended for scientific computing often differ significantly from so-called general-purpose architectures.
61727598
Comparing models of computation
We give a denotational framework (a meta model) within which certain properties of models of computation can be understood and compared. It describes concurrent processes as sets of possible behaviors. Compositions of processes are given as intersections of their behaviors. The interaction between processes is through signals, which are collections of events. Each event is a value-tag pair, where the tags can come from a partially ordered or totally ordered set. Timed models are where the set of tags is totally ordered. Synchronous events share the same tag, and synchronous signals contain events with the same set of tags. Synchronous systems contain synchronous signals. Strict causality (in timed systems) and continuity (in untimed systems) ensure determinacy under certain technical conditions. The framework is used to compare certain essential features of various models of computation, including Kahn process networks, dataflow, sequential processes, concurrent sequential processes with rendezvous, Petri nets, and discrete-event systems.
7453458
Designing time-based interactions with multimedia
The current model of time in multimedia frameworks poses particular problems when designing multimedia systems with time-based interaction. We propose to expand and extend an existing distinction between semantic time and real time from music and film theory to multimedia systems design. The semantic time concept also forms the foundation of a new software framework for multimedia systems that we are building, that, unlike most existing frameworks, includes mechanisms for time-based effects such as time-stretching.
38798257
A hardware-software codesign methodology for DSP applications
The authors describe a systematic, heterogeneous design methodology using the Ptolemy framework for simulation, prototyping, and software synthesis of systems containing a mixture of hardware and software components. They focus on signal-processing systems in which the hardware typically consists of custom data paths, finite-state machines (FSMs), glue logic and programmable processors. The software is one or more embedded programs running on the programmable components.<<ETX>>
36370882
Multi-agent Based Hybrid System for Dynamic Web-Content Adaptation
Context-aware adaptation service is rapidly becoming an important issue. This service overcomes the limitations of wireless devices and maintains adequate service levels in changing environments. The majority of existing studies concentrate on adaptation modules on the client, proxy, or server. These existing studies thus suffer from the problem of having the workload concentrated on a single system. This means that increasing the number of users increases the response time of a user’s request. In this paper, the adaptation module is dispersed and arranged over the client, proxy, and server. The module monitors the context of each system and creates a dispersed adaptation system, optimized for efficient operation. Through this method, faster adaptation work is made possible, even when the number of users increases, and the dividing workload makes more stable system operation possible. In order to evaluate the proposed system, a prototype is constructed and dispersed operations are tested using multimedia content, simulating server overload and comparing the response times and system stability with existing server based adaptation systems. The effectiveness of the system is confirmed through the results.
26848095
Effects of "gender" of the computer on informational social influence: the moderating role of task type
The present experiment examined if and how "gender" of the computer, manifested in character representation, would affect its informational influence on individuals' decisions on masculine (sports) or feminine (fashion) topics. In a 2 (participant's gender) × 2 (character gender) × 2 (nature of topic: masculine vs. feminine) between-subjects experiment, participants played a trivia quiz game with the computer. During the game, they were given a chance to change their initial answer after seeing the computer's answer, which they knew was not necessarily correct. Results suported the match-up hypothesis such that while the male computer elicited greater conformity on the masculine topic than on the feminine topic, the opposite was true for the female counterpart. In addition, men were less likely to yield to the computer's suggestion than women on the masculine topic whereas women, were less likely to succumb to the computer's influence on the feminine topic. These findings are discussed in terms of the robustness of gender-stereotyping in human-computer interaction and the implications for Computers Are Social Actors paradigm.
1540671
Bangarama: Creating Music with Headbanging
Bangarama is a music controller using headbanging as the primary interaction metaphor. It consists of a head-mounted tilt sensor and a guitar-shaped controller that does not require complex finger positions. We discuss the specific challenges of designing and building this controller to create a simple, yet responsive and playable instrument, and show how ordinary materials such as plywood, tin foil, and copper wire can be turned into a device that enables a fun, collaborative music-making experience.