140 likes | 257 Views
This paper discusses a novel middleware framework designed for building dependable, sentient computing applications, targeting contexts where human intervention is minimal. It highlights advances in intelligent vehicles and smart environments, emphasizing the need for context-aware and autonomous systems. Leveraging the CORTEX project, the framework supports dynamic configuration, enabling real-time adaptivity in complex environments. Through component models and cooperative systems, the middleware addresses safety and QoS concerns, fostering the development of responsive applications across various domains, including automotive and Ubiquitous Computing.
E N D
Novel Component Middleware for Building Dependable Sentient Computing Applications Maomao Wu, Adrian Friday, Gordon Blair, Thirunavukkarasu Sivaharan, Paul Okanda, and Hector Duran Limon Lancaster University Carl-Fredrik Sørensen Norwegian University of Science and Technology Gregory Biegel and René Meier University of Dublin, Trinity College
Introduction • Advances in Ubiquitous Computing • Novel applications without direct human control • Intelligent vehicles • Traffic management systems • Smart working/living environment • Activity from automobile industry • BMW, DaimlerChrysler, General Motors, etc. ECOOP'04 Workshop
Research Challenges • Application requirements • Sentience or context-aware • Autonomy • Decentralisation • Proactivity • Adaptivity • Time and Safety Criticality • Appropriate computational model • Programming abstraction • Middleware support ECOOP'04 Workshop
CORTEX Project • EU funded collaborative project • CO-operating Real-time senTient objects: architecture and EXperimental evaluation • Universidade de Lisboa (Portugal) • Lancaster University (United Kingdom) • Trinity College (Ireland) • Universität Ulm (Germany) • Sentient object model • Middleware and demo application ECOOP'04 Workshop
Sentient Object Model ECOOP'04 Workshop
Component Model (1) • Dynamic configuration and reconfiguration • OpenCOM • Is built atop of a subset of Microsoft’s COM • Keeps COM’s core feature • Binary level interoperability standard • Microsoft IDL • COM’s globally unique identifiers • IUnknown Interface • Fundamental Concepts • Interface: a unit of service provision • Receptacle: a unit of service requirement • Connection: binding between interface and receptacle ECOOP'04 Workshop
Component Model (2) • OpenCOM standard runtime • Manage the creation and deletion of components • Act upon requests to connect and disconnect components • A system graph of running components is maintained to support the introspection of a platform’s structure • Component Frameworks (CFs) • “collections of rules and interfaces that govern the interaction of a set of components plugged into them” • Targeted to a specific domain • Publish-Subscribe CF, Context CF, Resource and QoS Management CF. http://www.comp.lancs.ac.uk/computing/research/mpg/reflection/opencom.php ECOOP'04 Workshop
Publish-Subscribe CF • A componentised prototype of the STEAM P-S system • Implicit event model for mobile and ad-hoc network environments • Decentralised approach: does not rely on the presence of any separate infrastructure • Event filtering: subject, content, and context. • Event are represented in XML, and an XML profile defines the generic event dialect • Underlying communication • Group communication CF: probabilistic ad-hoc multicast protocol, IP-multicast based protocol, and a local (shared memory based) group communication protocol ECOOP'04 Workshop
Context CF (1) • Sensor capture and fusion • Multivariate Gaussian modelling • Bayesian networks • Dead-reckoning • Inference engine • A program that reasons about a set of rules (a knowledge base) in order to derive an output. • The knowledge is encoded as a set of production rules, contexts are represented as “fact”. • CLIPS – C Language Integrated Production System, its internal implementation is based on RETE net. ECOOP'04 Workshop
Context CF (2) • CLIPS rule sample • The paradigm facilitates uniform treatment of both context and QoS • Rules to trigger adaptations and actuations based on changes in measure of QoS data • CLIPS DLL and OpenCOM component for WinXP and WinCE (defrule rule-obstacle-near "CLIPS rule for obstacle near" (car-id (id ?id)) ?f1 <- (obstacle (distance near)) => (retract ?f1) (publish ?id stop) ) ECOOP'04 Workshop
Autonomous Cooperative Vehicles ECOOP'04 Workshop
Demo Application • Vehicles travel on virtual circuits • Predefine a set of GPS waypoints • Second car follows the leading one • Collision avoidance • Obey traffic light rules • Pedestrian/obstacle detection • QoS adaptation: network coverage ECOOP'04 Workshop
Software Components Configuration ECOOP'04 Workshop
Concluding Remarks • The sentient object model • has proved to be an excellent programming abstraction for the development of real-time, cooperative, context-aware applications. • The component-oriented approach • offers benefits of flexible configuration and reconfiguration of the middleware components, supporting the development of context and QoS adaptive applications. • The middleware architecture • also provides the management of non-functional concerns such as timeliness and reliability properties. • Our middleware is reusable • we are keen to investigate the generality of our approach by applying our middleware to other application domains involving embedded autonomous components. ECOOP'04 Workshop