The intelligent agent architecture widely employs methods of logic of belief. The goal of the paper is to find a correct and effective inference mechanism that can substantially improve resolution based traditional me...
详细信息
ISBN:
(纸本)0819436526
The intelligent agent architecture widely employs methods of logic of belief. The goal of the paper is to find a correct and effective inference mechanism that can substantially improve resolution based traditional methods. The semantics of the mechanism is based on Minsky's frames. Each agent is modeled by Minsky's frames with their slots representing what agent believes in. Inference process is realized by daemons filling the frames slots. The filling in this context means setting unknown slot values. The order of reasoning is established by a directed acyclic graph and driven by the topological sorting as a reasoning strategy. The inference algorithm analysis shows that the new method works in polynomial time. Therefore it is more efficient than NP, resolution based traditional methods. The correctness of objectoriented implementation of the algorithm is established by considering the inference process in terms of abstract relational systems and their isomorphisms. Finally an implementation methodology of agents and their inference process in objectoriented language is presented. All the considered conceps and methodology are illustrated in objectoriented solution to "Three wisemen problem" implemented in Smalltalk.
Determining the potential targets of virtual method invocations is essential for inter-procedural optimizations of object-oriented programs. It is generally hard to determine such targets accurately. The problem is es...
详细信息
Determining the potential targets of virtual method invocations is essential for inter-procedural optimizations of object-oriented programs. It is generally hard to determine such targets accurately. The problem is especially difficult for dynamic languages such as Java, because additional targets of virtual calls may appear at runtime. Current mechanisms that enable inter-procedural optimizations for dynamic languages, repeatedly validate the optimizations at runtime. This paper addresses this predicament by proposing a novel technique for conservative devirtualization analysis, which applies to a significant number of virtual calls in Java programs. Unlike previous work, our technique requires neither whole program analysis nor runtime information, and incurs no runtime overhead. Our solution is very efficient to compute and is based on a newly introduced, seemingly unrelated security feature of Java file archives. On average, our analysis "seals" (safely devirtualizes) about 39% of the virtual calls (to non-final methods) that appear in SPECjvm98 programs, and about 29% of the calls invoked while executing these programs. In the runtime library ***, about 10% of the packages contain a significant percentage (20-60%) of sealed calls, with a total average of about 8.5%. Most of these calls are also shown to be monomorphic, a fact which can be safely exploited by aggressive inter-procedural optimizations such as direct inlining. These results indicate that our technique has a strong potential for enhancing the analysis and optimization of Java programs.
An adaptive program is an object-oriented program which is abstracted over the particular class structure. This abstraction fosters! software reuse, because programmers can concentrate on specifying how to process the...
详细信息
ISBN:
(纸本)3540672575
An adaptive program is an object-oriented program which is abstracted over the particular class structure. This abstraction fosters! software reuse, because programmers can concentrate on specifying how to process the objects which are essential to their application. The compiler of an adaptive program takes care of actually locating the objects. The adaptive programmer merely writes a traversal specification decorated with actions. The compiler instantiates the specification with the actual class structure and generates code that traverses a collection of objects, performing visits and actions according to the specification. Previous approaches to compiling adaptive programs rely on, standard methods from automata theory and graph theory to achieve their goal. We introduce a new foundation for the compilation of adaptive programs, based on the algebraic properties of traversal specifications. Exploiting these properties, we develop the underlying theory for an efficient compilation algorithm. A key result is the derivation of a normal form for traversal specifications. This normal form is the basis for directly generating a traversal automaton with a uniformly minimal number of states.
Java has many powerful attractions as a platform for software development. In this paper, the author explains how developers of embedded systems can exploit its strengths to maximum advantage and describes how realisi...
详细信息
Java has many powerful attractions as a platform for software development. In this paper, the author explains how developers of embedded systems can exploit its strengths to maximum advantage and describes how realising the full benefits of Java technology in embedded applications requires a degree of optimisation.
An adaptive program is an object-oriented program which is abstracted over the particular class structure. This abstraction fosters software reuse, because programmers can concentrate on specifying how to process the ...
详细信息
ISBN:
(纸本)354067263X
An adaptive program is an object-oriented program which is abstracted over the particular class structure. This abstraction fosters software reuse, because programmers can concentrate on specifying how to process the objects which are essential to their application. The compiler of an adaptive program takes care of actually locating the objects. The adaptive programmer merely writes a traversal specification decorated with actions. The compiler instantiates the specification with the actual class structure and generates code that traverses a collection of objects, performing visits and actions according to the specification. Earlier work on adaptive programming merely stated but never verified that compilation of adaptive programs is nothing but partial evaluation. We employ an algebraic framework based on derivatives of traversal specifications to develop an interpretive semantics of adaptive programming. This semantics is naturally staged in up to three stages. Compilation can be achieved using a standard partial evaluator. Slight changes in the binding-time properties yield several variants of the compiler, by trading compile-time computations for run-time computations.
Many factors are responsible for the continued shift in industry prototyping preference from device fabrication to device simulation. One of the incentives for this transition is the generality and flexibility gained ...
详细信息
ISBN:
(纸本)0966613570
Many factors are responsible for the continued shift in industry prototyping preference from device fabrication to device simulation. One of the incentives for this transition is the generality and flexibility gained by avoiding a physical prototype. Unfortunately, much of the existing simulation software was written to solve a specific problem and therefore lacks flexibility. To combat this problem, we have developed an ensemble Monte-Carlo particle-based simulator for performing device simulations with a high degree of generality. Much of the generality comes simply from using a dedicated object-oriented coding philosophy in which implementation is separated from interface as much as possible. The use of 'smart' objects also increases the flexibility of this device simulator. Finally, the simulation software uses recursively encapsulated scattering tables, allowing a reduction in memory requirements and/or processing speed when simulating devices with complicated doping profiles.
Using an object-oriented programming approach, ROBOOP, a robotic manipulator simulation package which is both platform and vendor independent, compares favorably against a package requiring similar coding effort, Perf...
详细信息
Using an object-oriented programming approach, ROBOOP, a robotic manipulator simulation package which is both platform and vendor independent, compares favorably against a package requiring similar coding effort, Performance tests show that with ROBOOP the class inverse dynamics of a 6 DOF robot can be computed in Less than 5ms with a Pentium 100Mhz computer.
From the Book: PREFACE: Introduction Ever since software development became an engineering discipline, software development teams everywhere in the world have faced similar development and deployment problems. Among o...
详细信息
ISBN:
(纸本)9780130886743;0130886742
From the Book: PREFACE: Introduction Ever since software development became an engineering discipline, software development teams everywhere in the world have faced similar development and deployment problems. Among other things, developers today are concerned about: Reusing code that has been tested and used in other applications Developing flexible applications that can be customized to the users needs, but not at the expense of overburdening the development team Addressing anomalies and add features after the application has been shipped, while avoiding a complete rewrite of the application Improving application development time by leveraging against software code developed by third party software vendors Developing distributed and non-distributed applications in a similar manner All of these challenges and many more are addressed by a single technology: the Microsoft Component object Model, better known as COM. COM is a framework for developing software components, small binary executables, that provide services to applications and other components. The incredible explosion of the Internet has caused a revolution in the way information has to be made available to the users. In developing enterprise systems, the traditional client/server model has been replaced with a three-tier programming model, enhanced for Internet applications. Developing such enterprise systems is a time- and resource-consuming affair, as the system has to meet extra enterprise-level requirements such as scalability, robustness, security, transaction support, etc. COM+ is an advanced run-time environment that providesservicesto meet many of the above-mentioned enterprise-level requirements. It is an integral part of the Windows 2000 Operating System. Developers can leverage the services provided by COM+, instead of building the services themselves. This book focuses on understanding the COM+ architecture from a developer's perspective and building COM+ applications using Microsoft Visual C+
The paper describes modelling and simulation of Electric Are Furnace (EAF) melting shop. This is a batch process and can be classified as a hybrid system in which discrete events such as material transportation operat...
详细信息
ISBN:
(纸本)0780355202
The paper describes modelling and simulation of Electric Are Furnace (EAF) melting shop. This is a batch process and can be classified as a hybrid system in which discrete events such as material transportation operations and sequencing of the power supply to the furnace are combined with the continuous time melting of steel. The continuous part of the system is described by a non-linear dynamic model. The discrete event part of the system is described by decision rules. The objectoriented approach to the task of building the simulation model is outlined and the specific requirements for the EAF melt shop problem are determined. Examples of using the simulation for solving problems in managing the furnace melt shop are presented.
暂无评论