11,593 research outputs found

    Evolutionary improvement of programs

    Get PDF
    Most applications of genetic programming (GP) involve the creation of an entirely new function, program or expression to solve a specific problem. In this paper, we propose a new approach that applies GP to improve existing software by optimizing its non-functional properties such as execution time, memory usage, or power consumption. In general, satisfying non-functional requirements is a difficult task and often achieved in part by optimizing compilers. However, modern compilers are in general not always able to produce semantically equivalent alternatives that optimize non-functional properties, even if such alternatives are known to exist: this is usually due to the limited local nature of such optimizations. In this paper, we discuss how best to combine and extend the existing evolutionary methods of GP, multiobjective optimization, and coevolution in order to improve existing software. Given as input the implementation of a function, we attempt to evolve a semantically equivalent version, in this case optimized to reduce execution time subject to a given probability distribution of inputs. We demonstrate that our framework is able to produce non-obvious optimizations that compilers are not yet able to generate on eight example functions. We employ a coevolved population of test cases to encourage the preservation of the function's semantics. We exploit the original program both through seeding of the population in order to focus the search, and as an oracle for testing purposes. As well as discussing the issues that arise when attempting to improve software, we employ rigorous experimental method to provide interesting and practical insights to suggest how to address these issues

    Reconstructing Rational Functions with FireFly\texttt{FireFly}

    Full text link
    We present the open-source C++\texttt{C++} library FireFly\texttt{FireFly} for the reconstruction of multivariate rational functions over finite fields. We discuss the involved algorithms and their implementation. As an application, we use FireFly\texttt{FireFly} in the context of integration-by-parts reductions and compare runtime and memory consumption to a fully algebraic approach with the program Kira\texttt{Kira}.Comment: 46 pages, 3 figures, 6 tables; v2: matches published versio

    Production and Logistics Systems Improvements - Biim Ultrasound AS

    Get PDF
    A crucial aspect of the supply chain network design process is deciding on optimal locations to situate new facilities. Facility location decisions rely on many factors, some of which might be conflicting with each other. The decision factors can be either quantitative or qualitative, thus a brute-force prioritization of one over another could be detrimental overall. To ensure the efficacy of the selection process, decision makers must consider both the quantitative and qualitative factors in tandem. Some of the common methods employed in the literature by organizations to facilitate their decision-making process include: optimization models and algorithms, decision support systems and computerized analytics tools. To this end, this thesis proposes a hybrid Multi-Criteria Decision Making (MCDM) model to aid the selection of an optimal location that suits the strategic fit of an organization. The proposed model integrates the Analytic Hierarchy Process (AHP) methodology for Multi-Attribute Decision Making (MADM) with Mixed Integer Programming (MIP). The solution is modeled and implemented with the AIMMS modeling language as well as the Gurobi Optimization tool in Python. This thesis work is based on a case study from Biim Ultrasound
    corecore