645,603 research outputs found

    Can Network Analysis Techniques help to Predict Design Dependencies? An Initial Study

    Full text link
    The degree of dependencies among the modules of a software system is a key attribute to characterize its design structure and its ability to evolve over time. Several design problems are often correlated with undesired dependencies among modules. Being able to anticipate those problems is important for developers, so they can plan early for maintenance and refactoring efforts. However, existing tools are limited to detecting undesired dependencies once they appeared in the system. In this work, we investigate whether module dependencies can be predicted (before they actually appear). Since the module structure can be regarded as a network, i.e, a dependency graph, we leverage on network features to analyze the dynamics of such a structure. In particular, we apply link prediction techniques for this task. We conducted an evaluation on two Java projects across several versions, using link prediction and machine learning techniques, and assessed their performance for identifying new dependencies from a project version to the next one. The results, although preliminary, show that the link prediction approach is feasible for package dependencies. Also, this work opens opportunities for further development of software-specific strategies for dependency prediction.Comment: Accepted at ICSA 201

    COSMOS: A Hybrid N-Body/Hydrodynamics Code for Cosmological Problems

    Get PDF
    We describe a new hybrid N-body/hydrodynamical code based on the particle-mesh (PM) method and the piecewise-parabolic method (PPM) for use in solving problems related to the evolution of large-scale structure, galaxy clusters, and individual galaxies. The code, named COSMOS, possesses several new features which distinguish it from other PM-PPM codes. In particular, to solve the Poisson equation we have written a new multigrid solver which can determine the gravitational potential of isolated matter distributions and which properly takes into account the finite-volume discretization required by PPM. All components of the code are constructed to work with a nonuniform mesh, preserving second-order spatial differences. The PPM code uses vacuum boundary conditions for isolated problems, preventing inflows when appropriate. The PM code uses a second-order variable-timestep time integration scheme. Radiative cooling and cosmological expansion terms are included. COSMOS has been implemented for parallel computers using the Parallel Virtual Machine (PVM) library, and it features a modular design which simplifies the addition of new physics and the configuration of the code for different types of problems. We discuss the equations solved by COSMOS and describe the algorithms used, with emphasis on these features. We also discuss the results of tests we have performed to establish that COSMOS works and to determine its range of validity.Comment: 43 pages, 14 figures, submitted to ApJS and revised according to referee's comment

    Relating Training Instances to Automatic Design of Algorithms for Bin Packing via Features (Detailed Experiments and Results)

    Get PDF
    Automatic Design of Algorithms (ADA) shifts the burden of algorithm choice and design from developer to machine. Constructing an appropriate solver from a set of problem instances becomes a machine learning problem, with instances as training data. An efficient solver is trained for unseen problem instances with similar characteristics to those in the training set. However, this paper reveals that, as with classification and regression, for ADA not all training sets are equally valuable. We apply a typical genetic programming ADA approach for bin packing problems to several new and existing public benchmark sets. Algorithms trained on some sets are general and apply well to most others, whereas some training sets result in highly specialised algorithms that do not generalise. We relate these findings to features (simple metrics) of instances. Using instance sets with narrowly-distributed features for training results in highly specialised algorithms, whereas those with well-spread features result in very general algorithms. We show that variance in certain features has a strong correlation with the generality of the trained policies. Our results provide further grounding for recent work using features to predict algorithm performance, and show the suitability of particular instance sets for training in ADA for bin packing. The data sets, including all computed features, the evolved policies, and their performances, and the visualisations for all feature sets, are available from http://hdl.handle.net/11667/108.Work funded by UK EPSRC [grants EP/N002849/1, EP/J017515/1]. Results obtained using the EPSRC funded ARCHIE-WeSt HPC [EPSRC grant EP/K000586/1]

    On-the-fly adaptivity for nonlinear twoscale simulations using artificial neural networks and reduced order modeling

    Get PDF
    A multi-fidelity surrogate model for highly nonlinear multiscale problems is proposed. It is based on the introduction of two different surrogate models and an adaptive on-the-fly switching. The two concurrent surrogates are built incrementally starting from a moderate set of evaluations of the full order model. Therefore, a reduced order model (ROM) is generated. Using a hybrid ROM-preconditioned FE solver, additional effective stress-strain data is simulated while the number of samples is kept to a moderate level by using a dedicated and physics-guided sampling technique. Machine learning (ML) is subsequently used to build the second surrogate by means of artificial neural networks (ANN). Different ANN architectures are explored and the features used as inputs of the ANN are fine tuned in order to improve the overall quality of the ML model. Additional ANN surrogates for the stress errors are generated. Therefore, conservative design guidelines for error surrogates are presented by adapting the loss functions of the ANN training in pure regression or pure classification settings. The error surrogates can be used as quality indicators in order to adaptively select the appropriate -- i.e. efficient yet accurate -- surrogate. Two strategies for the on-the-fly switching are investigated and a practicable and robust algorithm is proposed that eliminates relevant technical difficulties attributed to model switching. The provided algorithms and ANN design guidelines can easily be adopted for different problem settings and, thereby, they enable generalization of the used machine learning techniques for a wide range of applications. The resulting hybrid surrogate is employed in challenging multilevel FE simulations for a three-phase composite with pseudo-plastic micro-constituents. Numerical examples highlight the performance of the proposed approach

    Development of a manufacturing feature-based design system

    Get PDF
    Traditional CAD systems are based on the serial approach of the product development cycle: the design process is not integrated with other activities and thus it can not provide information for subsequent phases of product development. In order to eliminate this problem, many modern CAD systems allow the composition of designs from building blocks of higher level of abstraction called features. Although features used in current systems tend to be named after manufacturing processes, they do not, in reality, provide valuable manufacturing data. Apart from the obvious disadvantage that process engineers need to re-evaluate the design and capture the intent of the designer, this approach also prohibits early detection of possible manufacturing problems. This research attempts to bring the design and manufacturing phases together by implementing manufacturing features. A design is composed entirely in a bottom-up manner using manufacturable entities in the same way as they would be produced during the manufacturing phase. Each feature consists of parameterised geometry, manufacturing information (including machine tool, cutting tools, cutting conditions, fixtures, and relative cost information), design limitations, functionality rules, and design-for-manufacture rules. The designer selects features from a hierarchical feature library. Upon insertion of a feature, the system ensures that no functionality or manufacturing rules are violated. If a feature is modified, the system validates the feature by making sure that it remains consistent with its original functionality and design-for-manufacture rules are re-applied. The system also allows analysis of designs, from a manufacturing point of view, that were not composed using features. In order to reduce the complexity of the system, design functionality and design-for manufacture rules are organised into a hierarchical system and are pointed to the appropriate entries of the feature hierarchy. The system makes it possible to avoid costly designs by eliminating possible manufacturing problems early in the product development cycle. It also makes computer-aided process planning feasible. The system is developed as an extension of a commercially available CAD/CAM system (Pro/Engineer), and at its current stage only deals with machining features. However, using the same principles, it can be expanded to cover other kinds of manufacturing processes

    Machine planning in a product model environment

    Get PDF
    The aim of this research was to understand and solve problems associated with the integration of a Machine Planner within a product model environment. This work was carried out in conjunction with other researchers, pursuing parallel integration issues related to pre-production proving and product data representation. Product data representations of component level planned, processes and feature level process data have been explored as sub-sets of -a product data model to aid integration. Geometric queries on a cell decomposition solid, model. have been explored as a means of providing feature geometric interaction data, while the dimensional interactions between features have also been addressed. Product data representations have been modelled using a prototype software tool, providing an environment for the exploration of the integration of a Machine Planner using a feature based design approach. Necessary Machine Planning functions have been implemented, using the ADA programming language, to explore the integrating capability of the product model environment, concentrating on the use of a prismatic benchmark component. Using the experimental implementation, setup and operation plans have been produced and machining part programs generated from product model representations of variants on the benchmark component. These have been successfully machined using a3 axis vertical machining centre. Such experiments, as well as others in conjunction with co-researchers, have shown that a product data model can provide a common base of data for the integration of a range of design and manufacturing activities
    corecore