We investigate the parallelisation and performance analyses of search and planning algorithms for artificial intelligence, machine learning, and software verification. These applications involve the exploration of large state spaces, which requires at its core a combinatorial search algorithm. Much of our work, therefore, focuses on evaluating and improving the scalability of algorithms used in all these tasks.
In recent work we have implemented various parallel and distributed MCTS algorithms with different enhancement strategies for artificial intelligence, tested them for scalability, and compared the performance of these approaches on the same domain and the same hardware infrastructure. We make use of the CHPC's large queue to determine scalability up to 128 12-core compute nodes with 32GB RAM each---values that are in line with previous publications and distributed search implementations. We wrote our application code in Java, using an actor model framework (Akka) to simplify concurrency and distributed computing. We make limited use of MPI---more specifically, just mpirun---in order to easily launch our application on the available nodes using the PBS nodefile.
This talk will provide an overview of our research and the problems we investigate, as well as a discussion of recent results.