Now showing items 1-5 of 5

    • Extending the ‘Open-Closed Principle’ to automated algorithm configuration 

      Swan, Jerry; Adriænsen, Stephen; Barwell, Adam David; Hammond, Kevin; White, David (2019-03-04) - Journal article
      Metaheuristics are an effective and diverse class of optimization algorithms: a means of obtaining solutions of acceptable quality for otherwise intractable problems. The selection, construction, and configuration of a ...
    • In search of a map : using program slicing to discover potential parallelism in recursive functions 

      Barwell, Adam David; Hammond, Kevin (ACM, 2017-09-07) - Conference item
      Recursion schemes, such as the well-known map, can be used as loci of potential parallelism, where schemes are replaced with an equivalent parallel implementation. This paper formalises a novel technique, using program ...
    • The Missing Link! A new skeleton for evolutionary multi-agent systems in Erlang 

      Stypka, Jan; Turek, Wojciech; Byrski, Aleksander; Kisiel-Dorohinicki, Marek; Barwell, Adam David; Brown, Christopher Mark; Hammond, Kevin; Janjic, Vladimir (2018-02) - Journal article
      Evolutionary multi-agent systems (EMAS) play a critical role in many artificial intelligence applications that are in use today. In this paper, we present a new generic skeleton in Erlang for parallel EMAS computations. ...
    • Pattern discovery for parallelism in functional languages 

      Barwell, Adam David (University of St Andrews, 2018) - Thesis
      No longer the preserve of specialist hardware, parallel devices are now ubiquitous. Pattern-based approaches to parallelism, such as algorithmic skeletons, simplify traditional low-level approaches by presenting ...
    • Towards semi-automatic data-type translation for parallelism in Erlang 

      Barwell, Adam David; Brown, Christopher Mark; Castro, David; Hammond, Kevin (ACM, 2016-09-23) - Conference item
      As part of our ongoing research programme into programmer-in-the-loop parallelisation, we are studying the problem of introducing alternative data structures to support parallelism. Automated support for data structure ...