Advanced driving assistance systems (ADAS) have huge potential for improving road safety and travel times. However, their take-up in the market is very slow;and these systems should consider driver's preferences t...
详细信息
Advanced driving assistance systems (ADAS) have huge potential for improving road safety and travel times. However, their take-up in the market is very slow;and these systems should consider driver's preferences to increase adoption rates. The aim of this study is to develop a model providing drivers with the optimal trajectory considering the motorist's driving style in real time. Travel duration and safety are the main parameters used to find the optimal trajectory. A simulation framework to determine the optimal trajectory was developed in which the ego car travels in a highway environment scenario, using an agent-oriented approach. The performance of the algorithm was compared against optimal trajectories computed offline with the hybrid A* algorithm. The new framework provides trajectories close to the optimal trajectory and is computationally achievable. The agents were shown to follow safe and fast trajectories in three tests scenarios: emergency braking, overtaking and a complex situation with multiple vehicles around the ego vehicle. Different driver profiles were then tested in the complex scenario, showing that the proposed approach can adapt to driver preferences and provide a solution close to the optimal solution given the defined safety constraints.
Using object-oriented programming (OOP) techniques and philosophies, a collection of C++ tools for the rapid development of finite element applications has been created. The object-oriented finite element analysis (OO...
详细信息
Using object-oriented programming (OOP) techniques and philosophies, a collection of C++ tools for the rapid development of finite element applications has been created. The object-oriented finite element analysis (OOFEA) toolkit provides both the geometrical and mathematical management tools necessary for this task in the form of useful class hierarchies. In particular, the OOFEA toolkit features methods for evaluating arbitrary weak forms provided by the user in order to solve particular problems of interest. A description of the underlying concepts, philosophies and techniques used to develop the toolkit are included. A strong effort has been made to concentrate on its possibly beneficial usage in the computational fluid dynamics area. In order to demonstrate the toolkit capabilities of managing complex projects, a simulator for laminar and turbulent natural convective flows in enclosures has been developed and a numerical study of some of these flows has been conducted. Using a primitive variable approach, the Galerkin FEM is used to obtain the weak form of the coupled unsteady Navier-Stokes and energy equations for incompressible, viscous, Newtonian fluids in two and three dimensions. By including a k-epsilon turbulence model in the governing equations, the analysis of both laminar and turbulent convective flows in enclosures is possible. With the help of a semi-implicit time stepping scheme, combined with a projection scheme, the resulting systems of equations are solved iteratively using the preconditioned conjugate gradient (PCG) algorithm. Time accurate two-dimensional simulations have been performed for a differentially heated square cavity in the laminar and turbulent regimes, for air with a Prandtl number of 0.71, and values of the Rayleigh number ranging between 10(3) and 10(10). Consistency tests show that the simulator correctly implements the k-epsilon turbulence model, and the numerical results compare well with results reported in the literature. T
FC++ is a library for programming functionally in C++. Compared to other C++ functional programming libraries, FC++ is distinguished by its powerful type system which allows the manipulation of parametrically polymorp...
详细信息
FC++ is a library for programming functionally in C++. Compared to other C++ functional programming libraries, FC++ is distinguished by its powerful type system which allows the manipulation of parametrically polymorphic functions (e.g., passing them as arguments to other functions and returning them as results). In this paper, we show how FC++ can be used in common object-oriented programming tasks. We demonstrate FC++ implementations of several common design patterns (Adapter, Builder, Command, and more). Compared to conventional C++ implementations of these patterns, our implementations are either simpler (in that fewer classes/dependencies are needed), more efficient, or more type-safe (thanks to parametric polymorphism and type inference). Copyright (C) 2002 John Wiley Sons, Ltd.
The design, implementation and application of a concept for object-oriented in finite element analysis of multi-field problems is presented in this paper. The basic idea of this concept is that the underlying governin...
详细信息
The design, implementation and application of a concept for object-oriented in finite element analysis of multi-field problems is presented in this paper. The basic idea of this concept is that the underlying governing equations of porous media mechanics can be classified into different types of partial differential equations (PDEs). In principle, similar types of PDEs for diverse physical problems differ only in material coefficients. Local element matrices and vectors arising from the finite element discretization of the PDEs are categorized into several types, regardless of which physical problem they belong to (i.e. fluid flow, mass and heat transport or deformation processes). Element (ELE) objects are introduced to carry out the local assembly of the algebraic equations. The object-orientation includes a strict encapsulation of geometrical (GEO), topological (MSH), process-related (FEM) data and methods of element objects. Geometric entities of an element such as nodes, edges, faces and neighbours are abstracted into corresponding geometric element objects (ELE-GEO). The relationships among these geometric entities form the topology of element meshes (ELE-MSH). Finite element objects (ELE-FEM) are presented for the local element calculations, in which each classification type of the matrices and vectors is computed by a unique function. These element functions are able to deal with different element types (lines, triangles, quadrilaterals, tetrahedra, prisms, hexahedra) by automatically choosing the related element interpolation functions. For each process of a multi-field problem, only a single instance of the finite element object is required. The element objects provide a flexible coding environment for multi-field problems with different element types. Here, the C++ implementations of the objects are given and described in detail. The efficiency of the new element objects is demonstrated by several test cases dealing with then no-hydro-mechanical (THM) cou
One of the techniques employed by programmers during the development process is the use of code and design conventions. These are rules-of-thumb or best practices that improve the maintainability of software applicati...
详细信息
One of the techniques employed by programmers during the development process is the use of code and design conventions. These are rules-of-thumb or best practices that improve the maintainability of software applications. In general, these conventions are maintained manually by the programmer since automated support is usually restricted to the automatic generation of code. However, the late discovery of convention errors can result in significant costs due to the effort required to correct them. In order to facilitate the early detection of these errors, the Practical Preprocessor for programming Conventions system, P-3 (pronounced P3), is proposed. This tool acts as a preprocessor to the Java compiler by providing facilities for the maintenance of specific object-oriented code conventions and design principles during the creation of Java programs. This paper presents the design and implementation of the P-3 system and also the practical experience of using this facility in a University programming environment. Copyright (C) 2002 John Wiley Sons, Ltd.
The Grid Services Base Library (GSBL) is a procedural application programming interface (API) that abstracts many of the high-level functions performed by Globus Grid services, thus dramatically lowering the barriers ...
详细信息
The Grid Services Base Library (GSBL) is a procedural application programming interface (API) that abstracts many of the high-level functions performed by Globus Grid services, thus dramatically lowering the barriers to writing Grid services. The library has been extensively tested and used for computational biology research in a Globus Toolkit-based Grid system, in which no fewer than twenty Grid services written with this API are deployed. (c) 2006 Elsevier B.V. All rights reserved.
Transforming programs to alter their semantics is of wide interest, for purposes as diverse as off-the-shelf component adaptation, optimizatiom. trace generation, and experimentation with new language features. The cu...
详细信息
Transforming programs to alter their semantics is of wide interest, for purposes as diverse as off-the-shelf component adaptation, optimizatiom. trace generation, and experimentation with new language features. The current wave of interest in advanced technologies for better separation of concerns, such as aspect-orientedprogramming, is a solid testimony of this fact. Strangely enough, almost all proposals are formulated in the context of Java, in which tool providers encounter severe restrictions due to the rigidity of the environment. This paper presents BYTESURGEON, a library to transform binary code in Smalltalk. BYTESURGEON takes full advantage of the flexibility of the Squeak environment to enable bytecode transformation at runtime, thereby allowing dynamic, on-the-fly modification of applications. BYTESURGEON operates on bytecode in order to cope with situations where the source code is not available, while providing appropriate high-level abstractions so that users do not need to program at the bytecode level. We illustrate the use of BYTESURGEON via the implementation of method wrappers and a simple MOP, and report on its efficiency. (c) 2005 Elsevier Ltd. All rights reserved.
The BQM-an acronym that stands for Bottom-up Query machine, the role played by our system in the framework of the KIWIS system [2]-system extends deductive database technology with knowledge structuring capabilities t...
详细信息
The BQM-an acronym that stands for Bottom-up Query machine, the role played by our system in the framework of the KIWIS system [2]-system extends deductive database technology with knowledge structuring capabilities to provide an advanced environment for the development of data and knowledge-based applications. The system relies on a knowledge representation language that combines the declarativeness of logic programming with the notions of object, inheritance with exceptions, and message passing. Exceptions are supported by allowing rules with negated heads. The use of exceptions inside the inheritance mechanism makes the language inherently nonmonotonic. The paper contains a comprehensive description of both the language and the implementation principles of the BQM system. It begins by providing a model-theoretic semantics of the language based on the notion of least model. A fixpoint semantics, providing a constructive definition of the least model, is given as well. Then, a number of implementation techniques for efficient query evaluation are described. Such techniques significantly extend ''traditional'' deductive database query evaluation strategies to deal with monotonic reasoning. A description of the architecture of the current prototype of the BQM system is also given.
A major challenge facing software libraries for scientific computing is the ability to provide adequate flexibility to meet sophisticated, diverse, and evolving application requirements. object-oriented design techniq...
详细信息
A major challenge facing software libraries for scientific computing is the ability to provide adequate flexibility to meet sophisticated, diverse, and evolving application requirements. object-oriented design techniques are valuable tools for capturing characteristics of complex applications in a software architecture. In this paper, we describe certain prominent object-oriented features of the SAMRAI software library that have proven to be useful in application development. SAMRAI is used in a variety of applications and has demonstrated a substantial amount of code and design re-use in those applications. This flexibility and extensibility is illustrated with three different application codes. We emphasize two important features of our design. First, we describe the composition of complex numerical algorithms from smaller components which are usable in different applications. Second, we discuss the extension of existing framework components to satisfy new application needs. Published in 2002 by John Wiley Sons, Ltd.
The vehicle routing and facility location Fields are well-developed areas in management science and operations research application. There is an increasing recognition that effective decision-making in these Fields re...
详细信息
The vehicle routing and facility location Fields are well-developed areas in management science and operations research application. There is an increasing recognition that effective decision-making in these Fields requires the adoption of optimization software that can be embedded into a decision support system. In this paper, we describe the implementation details of our software components for solving the vehicle routing and facility location problems.
暂无评论