17 research outputs found

    Equidistribution of Point Sets for the Traveling Salesman and Related Problems

    Get PDF
    Given a set S of n points in the unit square [0, 1)2, an optimal traveling salesman tour of S is a tour of S that is of minimum length. A worst-case point set for the Traveling Salesman Problem in the unit square is a point set S(n) whose optimal traveling salesman tour achieves the maximum possible length among all point sets S C [0, 1)2, where JSI = n. An open problem is to determine the structure of S(n). We show that for any rectangle R contained in [0, 1 F, the number of points in S(n) n R is asymptotic to n times the area of R. One corollary of this result is an 0( n log n) approximation algorithm for the worst-case Euclidean TSP. Analogous results are proved for the minimum spanning tree, minimum-weight matching, and rectilinear Steiner minimum tree. These equidistribution theorems are the first results concerning the structure of worst-case point sets like S(n)

    Equidistribution in All Dimensions of Worst-Case Point Sets for the TSP

    Get PDF
    Given a set S of n points in the unit square [0, 1]d , an optimal traveling salesman tour of S is a tour of S that is of minimum length. A worst-case point set for the Traveling Salesman Problem in the unit square is a point set S(n) whose optimal traveling salesman tour achieves the maximum possible length among all point sets S ⊂ [0, 1]d , where |S| = n. An open problem is to determine the structure of S(n) . We show that for any rectangular parallelepiped R contained in [0, 1]d , the number of points in S(n) ∩ R is asymptotic to n times the volume of R. Analogous results are proved for the minimum spanning tree, minimum-weight matching, and rectilinear Steiner minimum tree. These equidistribution theorems are the first results concerning the structure of worst-case point sets like S(n)

    Implementation of Genetic Algorithms in FPGA-based Reconfigurable Computing Systems

    Get PDF
    Genetic Algorithms (GAs) are used to solve many optimization problems in science and engineering. GA is a heuristics approach which relies largely on random numbers to determine the approximate solution of an optimization problem. We use the Mersenne Twister Algorithm (MTA) to generate a non-overlapping sequence of random numbers with a period of 219937-1. The random numbers are generated from a state vector that consists of 624 elements. Our work on state vector generation and the GA implementation targets the solution of a flow-line scheduling problem where the flow-lines have jobs to process and the goal is to find a suitable completion time for all jobs using a GA. The state vector generation algorithm (MTA) performs poorly in traditional von Neumann architectures due to its poor temporal and spatial locality. Therefore its performance is limited by the speed at which we can access memory. With an approximate increase of processor performance by 60% per year and a drop of memory latency only 7% per year, a new approach is needed for performance improvement. On the other hand, the GA implementation in a general-purpose microprocessor, though performs reasonably well, has scope for performance gain in a parallel implementation. The parallel implementation of the GA can work as a kernel for applications that uses a GA to reach a solution. Our approach is to implement the state vector generation process and the GA in an FPGA-based Reconfigurable Computing (RC) system with the goal of improving the overall performance. Application design for FPGA-based RC systems is not trivial and the performance improvement is not guaranteed. Designing for RC systems requires algorithmic parallelism in order to exploit the inherent parallelism of the FPGA. We are using a high-level language that provides a level of abstraction from the lower-level hardware in the RC system making it difficult to fully exploit some of the architectural benefits of the FPGA. Considering these factors, we improve the state vector generation process algorithmically. Our implementation generates state vectors 5X faster than the previous implementation in an Intel Xeon microprocessor of 2GHz. The modified algorithm is also implemented in a Xilinx Virtex-4 FPGA that results in a 2.4X speedup. Improvement in this preprocessing step accelerates GA application performance as random numbers are generated from these state vectors for the genetic operators. We simulate the basic operations of a GA in an FPGA to study its behavior in a parallel environment and analyze the results. The initial FPGA implementation of the GA runs about 7X slower than its microprocessor counterpart. The reasons are explained along with suggestions for improvement and future work

    LOGIC AND CONSTRAINT PROGRAMMING FOR COMPUTATIONAL SUSTAINABILITY

    Get PDF
    Computational Sustainability is an interdisciplinary field that aims to develop computational and mathematical models and methods for decision making concerning the management and allocation of resources in order to help solve environmental problems. This thesis deals with a broad spectrum of such problems (energy efficiency, water management, limiting greenhouse gas emissions and fuel consumption) giving a contribution towards their solution by means of Logic Programming (LP) and Constraint Programming (CP), declarative paradigms from Artificial Intelligence of proven solidity. The problems described in this thesis were proposed by experts of the respective domains and tested on the real data instances they provided. The results are encouraging and show the aptness of the chosen methodologies and approaches. The overall aim of this work is twofold: both to address real world problems in order to achieve practical results and to get, from the application of LP and CP technologies to complex scenarios, feedback and directions useful for their improvement

    Data Structures & Algorithm Analysis in C++

    Get PDF
    This is the textbook for CSIS 215 at Liberty University.https://digitalcommons.liberty.edu/textbooks/1005/thumbnail.jp

    Errata and Addenda to Mathematical Constants

    Full text link
    We humbly and briefly offer corrections and supplements to Mathematical Constants (2003) and Mathematical Constants II (2019), both published by Cambridge University Press. Comments are always welcome.Comment: 162 page

    Probabilistic Path Discovery with Snakes in Ad Hoc Networks

    Get PDF
    Many routing protocols for wireless ad hoc networks proposed in the literature use flooding to discover paths between the source and the destination node. Despite various broadcast optimization techniques, flooding remains expensive in terms of bandwidth and energy consumption. In general, O(N) nodes are involved to discover a path. In this thesis, we prove through a theoretical model that probabilistic path discovery is possible by involving O(sqrt(N)) nodes only. The constant factor depends on the desired path discovery probability. Using a novel network primitive that we call snakes, we introduce practical and cheap probabilistic path discovery algorithms. These algorithms rely on the same network model and assumptions as its flooding counterparts, i. e., that the network is unstructured and that nodes only know their immediate (one-hop) neighbors. Numerical simulations in a static network show that these algorithms achieve path discovery probabilities close to the theoretical optimum. We further present a snake-based algorithm for mobile ad hoc networks and several techniques to enhance the performance in some specific networks
    corecore