Skip to content
Contains simple building blocks for NK modeling
Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
1_landscape_creation.py
2_local_search.py
3_decentralized.py
LICENSE
NK landscapes - a hands-on exercise 2019.pdf
NK_Model_basic.py
README.md

README.md

NK_model

New set of NK model exercises, created on July 2, 2018 Files:

  • 1_landscape_creation.py
  • 2_local_search.py
  • 3_decentralized.py

The three files form a set of exercises which are aimed at introducing the user to the NK model. The first file creates NK landscapes and reports simple summary statistics. The other two files are different versions of search on those landscapes and report overall fitness level produced by that search. The code has been adjusted to work on Python 2.7 and 3.6 without additional changes.

NK_model_basic (ver 3.1) (old version)

This is an example of an NK model. The simulation uses an NK Model to represent a task environment of varying degree of complexity (K). It produces i NK landscapes, together with all combinations, contributions of each combination of decision variables and information whether a given location is a local peak (all combinations, which differ by only one decision from the focal one have lower overall fitness value)

You can change the N and K of the model, but be careful with the custom interaction matrices, as you need to adjust the N and K manually.

I set N = 4 for simplicity. K must be an integer from 0 to N-1

The model was rewritten on February 18th 2013 and later on April 13th 2013 and December 11th, 2014

  • The model has custom modules for interaction matrices
  • different hamming distance settings

Updated on February 19th 2013 (ver 2.0) Updated on April 13th 2013 (ver 3.0) Updated on December 11th, 2014 (ver 3.1)

Options:

  • Press CNTRL+C to interrupt

Installation

The script has been tested with Python 2.7 (Anaconda Python Distribution - Windows 8.1 64-bit)

Required modules:

  • numpy
  • itertools
  • time
You can’t perform that action at this time.