4 research outputs found

    The 0-1 Knapsack polytope – a starting point for cryptanalysis of Knapsack ciphers?

    Full text link
    The Knapsack Cryptosystem of Merkle and Hellman, 1978, is one of the earliest public-key cryptography schemes. The security of the method relies on the difficulty in solving Subset Sum Problems (also known as Knapsack Problems). In this paper, we first provide a brief history of knapsack-based cryptosystems and their cryptanalysis attacks. Following that, we review the advances in integer programming approaches to 0 − 1 Knapsack Problems, with a focus on the polyhedral studies of the convex hull of the integer set. Last of all, we discuss potential future research directions in applying integer programming in the cryptanalysis of knapsack ciphers

    A parallel optimisation approach for the realisation problem in intensity modulated radiotherapy treatment planning

    Full text link
    We propose a parallel algorithm for computing exact solutions to the problem of minimizing the number of multileaf collimator apertures needed in step-and-shoot intensity modulated radiotherapy. These problems are very challenging particularly as the problem size increases. Here, we investigate how advanced parallel computing methods can be applied to these problems with a focus on the issues that are peculiar to parallel search algorithms and do not arise in their serial counterparts. A previous paper by the authors presented the MU-RD method for solving such problems using a serial constraint programming based search method. This method is being used as the starting point for a parallel implementation. The key challenges in creating a parallel implementation are ensuring that the CPUs are not starved of work and avoiding unnecessary computation due to the rearrangement of the search order in the parallel version. We show that efficient parallel optimisation is possible by dynamically changing the way work is split with potentially multiple tree search processes as well as parallel search of nodes. A weakly sorted queueing system is used to ensure appropriate prioritisation of tasks. Numerical results are presented to demonstrate the effectiveness of our algorithms in scaling from 8 to 64 CPUs
    corecore