Up until know I was simulating quantum key distribution, even between two parties, in a sequential manner and wanted to parallelise a genetic algorithm optimising these simulations. However, a complementary approach would be to parallelise the simulation itself, creating processes for each communicating party and managing a shared memory and messages passed between them to more closely resemble a real-life scenario.