NodIO, a JavaScript framework for volunteer-based evolutionary algorithms : first results
This work addresses the need for efficient volunteer-based distributed computing tools for evolutionary algorithm practitioners, though it is incremental as it builds on existing JavaScript libraries and focuses on benchmarking.
The authors tackled the problem of evaluating JavaScript's performance for evolutionary algorithms in volunteer computing by developing NodIO, a JavaScript framework, and conducting experiments on integer and floating-point problems. The results showed that JavaScript's speed is competitive with other languages commonly used in evolutionary algorithms.
JavaScript is an interpreted language mainly known for its inclusion in web browsers, making them a container for rich Internet based applications. This has inspired its use, for a long time, as a tool for evolutionary algorithms, mainly so in browser-based volunteer computing environments. Several libraries have also been published so far and are in use. However, the last years have seen a resurgence of interest in the language, becoming one of the most popular and thus spawning the improvement of its implementations, which are now the foundation of many new client-server applications. We present such an application for running distributed volunteer-based evolutionary algorithm experiments, and we make a series of measurements to establish the speed of JavaScript in evolutionary algorithms that can serve as a baseline for comparison with other distributed computing experiments. These experiments use different integer and floating point problems, and prove that the speed of JavaScript is actually competitive with other languages commonly used by the evolutionary algorithm practitioner.