Program is an implementation of Schellingdale. Perhaps browse around to see similar software (none of which does precisely what I want).
1. There is an n x n board (a ‘checkerboard’). The value of n can be chosen by the user: 7<n<150.
2. There are two kinds of ‘inhabitants’ on the board: reds and greens.
3. User chooses number of reds and greens.
4. Computer divides reds and greens randomly across the board.
5. Both reds and greens have a rule that determines whether or not they are ‘happy’ in the neighborhood in which they live. A neighborhood consists of the eight places on the board that surround a red or green inhabitant (the board is ‘folded’: those on the edges have inhabitants on the other edge as their neighbor). The neighborhood is `of distance 1’. User defines size of the neighborhood up to n/4. A neighborhood of distance 2 consists of the eight places surrounding the focal place plus the 16 places around that.
6. User determines rule that determines whether an inhabitant is happy (may differ for reds and greens), but is of the following kind: an inhabitant is happy if and only if between x% and y% of his neighbors are of the same color as his own color, 0<x<99, x<y<100.
7. Each round, one inhabitant is randomly chosen, and if this inhabitant is not happy at his spot, he moves to a randomly chosen spot where he is happy (version 1) or he moves to a spot where he is happy that is closest to his own spot (version 2). User chooses version 1 or 2.
8. The rounds continue as long as there are inhabitants who want to move. User can choose to ‘let the rounds run until convergence’ or ‘run one round at a time’.
For wanted output see enclosed file.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Installation package that will install the software (in ready-to-run condition) on the platform(s) specified in this bid request.
3) Exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
Windows
Programming in VB preferred, perhaps also Visual C.
If project runs ok, may want a version with more possibilities.