TiViPE is a component based visual programming environment (VPE) that enables users to build programs by construction of a network of components interactively. A single module (component), represented by a graphical i...
详细信息
TiViPE is a component based visual programming environment (VPE) that enables users to build programs by construction of a network of components interactively. A single module (component), represented by a graphical icon, is a computational unit. Multiple icons can be connected to each other to yield a directed graph (a network) that represent a program. TiViPE is, in appearance similar to programs such as AVS, Vee, OpenDX, Khoros, LabVIEW, NeatVision, and ViPEr, but presents some fundamental differences. TiViPE integrates documentation with an existing routine call (that has been programmed in C++, C, Fortran, or Java), and automatically generates C++ code that is compiled to stand-alone program. This program is able to execute the specified routine, provide a graphical icon, or give HTML-formatted documentation about the routine. Hence, within TiViPE there is no textual programming for the user TiViPE strongly re-uses code, which is inherent to visual programming, and automatic code regeneration by compounding a network of modules to a single module, which leads to faster programming. TiViPE supports networking and parallel processing in a natural way, and allows the user to modify an activated network. TiViPE also aims at rapid prototyping which demands user friendliness, programming by existing modules for basic users, and focuses on the documentation of a module. TiViPE has been used in the field of computer vision, robotics, and computational neuroscience
Rapid programming of applications with down-times near zero is a key to automation of small lotsize production. This paper proposes an approach to program by gestures. It combines the visual observation and interpreta...
详细信息
Rapid programming of applications with down-times near zero is a key to automation of small lotsize production. This paper proposes an approach to program by gestures. It combines the visual observation and interpretation of human activities and gestures, mapping to technical tasks and autonomous execution. Automated planning/generation of the robot motion combined with automated correction of pose deviations (induced from the visual observation) allows an execution which is independent of the observation accuracy. The industrial application: bores and internal threads play a critical role as integral parts of connections, bearings, engines, hydraulic and pneumatic systems. The increased industrial requirement for high quality components demands 100% surface inspection of bores (here with diameters from 4 to 50 mm) at small lotsizes. Since state-of-the-art automation is limited to high volumes, the main target is to develop a semi-autonomous system for rapid and flexible inspection featuring new programming. The main focus is on rapid and intuitive programming of robotic systems. The paper describes the implementation and techniques in case of a bore inspection system
Image generation, e.g., in computer tomographs, requires the use of sophisticated algorithms which are characterized (i) by a large variability to enable generation of different types of images and (ii) a strong need ...
详细信息
Image generation, e.g., in computer tomographs, requires the use of sophisticated algorithms which are characterized (i) by a large variability to enable generation of different types of images and (ii) a strong need for dynamic reconfiguration to adapt image generation, e.g., to individual patients. On the application level, such characteristics are frequently scattered all over the code of the application. This suggests the use of aspect-oriented programming (AOP) techniques to modularize such crosscutting functionality. In this paper we present an approach to automate image generation tasks using AOP and their application in the context of medical devices from Siemens AG, Germany. Concretely, we present three results: (i) a motivation why imaging software can benefit from dynamic AOP, (ii) a case study of how image generation, in particular for medical devices, can be adapted using the Arachne system for dynamic AOP in C, and (iii) a suitable aspect language and its realization within Arachne
We show how automated support can be provided for identifying refactoring opportunities, e.g., when an application's design should be refactored and which refactoring(s) in particular should be applied. Such suppo...
详细信息
We show how automated support can be provided for identifying refactoring opportunities, e.g., when an application's design should be refactored and which refactoring(s) in particular should be applied. Such support is achieved by using the technique of logic meta programming to detect so-called bad smells and by defining a framework that uses this information to propose adequate refactorings. We report on some initial but promising experiments that were applied using the proposed techniques.
Initial impressions of literate programming tend to the view that this is the software equivalent of the "Faberge egg": ornate beyond all practical uses. However, recent advances in the field have produced t...
详细信息
Initial impressions of literate programming tend to the view that this is the software equivalent of the "Faberge egg": ornate beyond all practical uses. However, recent advances in the field have produced tools that are less ornate, easy to use and eminently practical. We take a critical look at what literate programming has to offer in the practice and teaching of software engineering, and present a brief review of the state-of-the-art tools now (freely) available. No previous experience with literate programming is assumed.< >
Genetic programming (GP) is well-known as an evolutionary method for automatic programming. GP can optimize tree-structural programs. Cartesian GP (CGP) is one of the extensions of GP, which generates the graph struct...
详细信息
Genetic programming (GP) is well-known as an evolutionary method for automatic programming. GP can optimize tree-structural programs. Cartesian GP (CGP) is one of the extensions of GP, which generates the graph structural programs. By using the graph structure, the solutions can be represented by more compact programs. Therefore, CGP is widely applied to the various problems. As a different approach from the evolution, there is the Ant Colony Optimization (ACO), which is an optimization method for combinatorial optimization problems based on the cooperative behavior of ants. By using pheromone communication, the promising solution space can be searched intensively. In this paper, we propose a new automatic programming method, which combines CGP and ACO. In this method, ants generate programs by moving in the node-network used in CGP. We call this method, Cartesian Ant programming (CAP). We examined the effectiveness of CAP by comparing with CGP on the search performance in a symbolic regression and a classification problem.
Invariant based programming is an approach to program construction where we provide the program pre- and postconditions as well as loop invariants before we construct the code itself. This approach allows us to constr...
详细信息
Invariant based programming is an approach to program construction where we provide the program pre- and postconditions as well as loop invariants before we construct the code itself. This approach allows us to construct a program and its correctness proof hand in hand. We describe here an extension to an existing mathematics editor that supports this style of program construction. The main help that the tool provides is automatic simplification of verification conditions that are generated in the programming process. The tool shows the user a check list of those conditions that it was not able to prove automatically. The user can use this check list to complete the proof (either manually or using an interactive theorem prover) or to find errors in the program.
This paper reports on the induction of context free languages using genetic programming. The focus is on language inference, i.e. the inference of formal languages such as those of the Chomsky hierarchy from positive ...
详细信息
This paper reports on the induction of context free languages using genetic programming. The focus is on language inference, i.e. the inference of formal languages such as those of the Chomsky hierarchy from positive (and negative) sample strings. In this paper, the inference process is extended to the class of context-free grammars. Deterministic pushdown automata are induced from samples of context free languages. The algorithm is a variation of genetic algorithms using free shaped chromosomes to represent the transition tables of the various automata.< >
The risks of virtual enterprises exist almost everywhere for they are dynamic, temporary and multi-partners. In order to restrict the risk to the acceptable level, the Multi strategies multi choices (MSMC) risk progra...
详细信息
The risks of virtual enterprises exist almost everywhere for they are dynamic, temporary and multi-partners. In order to restrict the risk to the acceptable level, the Multi strategies multi choices (MSMC) risk programming model is proposed in this paper considering the fuzzy characteristics and project organization mode of virtual enterprises. There are many control strategies can be selected for each risk to reduce the global risk level of project in this model. In addition, the multi-layer strategies process mechanism and two properties, are presented in this paper. To solve this model, the ant colony algorithm is designed, which combines with the Fuzzy Synthetic Evaluation (FSE) embed HFMFs (Hyper-trapezoidal Fuzzy Membership Functions) evaluation. Simulation has shown that this method is both effective and efficient in achieving satisfied solutions for risk programming of virtual enterprises.
Today's and future distributed software systems will certainly require combining heterogeneous software components that are geographically dispersed so that its realization not only meets the functional requiremen...
详细信息
Today's and future distributed software systems will certainly require combining heterogeneous software components that are geographically dispersed so that its realization not only meets the functional requirements, but also satisfies the nonfunctional criteria such as the desired quality of services (QoS). The unified approach (UA) incorporates the concepts of product line practice (PLP) and generative programming with the unified meta-component model (UMM) to achieve automatic development, maximal reuse and seamless interoperation. The creation of a software solution for a distributed computing system (DCS), using the UA has two levels, the component level and the system level. In this paper, the system-level generative programming of the UA is described.
暂无评论