A Julia library for conducting evolutionary experiments using the NK family of fitness landscapes.
The NK model is a mathematical model described by its primary inventor Stuart Kauffman as a "tunably rugged" fitness landscape. "Tunable ruggedness" captures the intuition that both the overall size of the landscape and the number of its local "hills and valleys" can be adjusted via changes to its two parameters, N and K...
The NK landscape model, and its various derivatives, are particularly useful for studying the process of evolution, both biological and computational, because they can be constructed to exhibit a variety of interesting properties including neutrality..
NKLandscapes is listed in the Julia package index, so installation of the most
recent release is as simple as
The library is still under heavy development, and it has not (yet) been fully documented. We are making good progress, however, so many functions available already have documentation available when running in the Julia REPL.
If the package has been installed using Julia's package management tools, the
tests can be run simply by issuing
Pkg.test("NKLandscapes") in the Julia
Tests can be run with the included script. There are (or will be) several test suites. First, a set of unit tests that exercise basic functionality and check for sane results. For the most part, these may be thought of as regression tests. Second, there are functional tests that replicate experiments drawn from the literature and check that the results approximately match the published results.
The unit tests may be run with
./runtests.sh unit. The functional tests may
be run with
./runtests.sh SUITE where
SUITE is one of the following:
kauffman- experiments from 
nowak- experiments from 
Note that these tests may take quite a long time to finish even on a very powerful workstation.
about 3 years ago