Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
zlejrob
.gitignore
.travis.yml
README.md
requirements.txt

README.md

Zlej Rob

A semi-intelligent solver for RoboZZle. Solved 2,000+ puzzles. See zlejrob's profile – currently in top 50 of 50,000+ players.

Build Status

Install

You'll need python 3 and pip installed. After that, install project dependencies with:

pip install -r requirements.txt --use-mirrors

Watch out: pip refers to Python 2 version of pip on certain systems (Ubuntu). You might need to specify the version explicitly by calling e.g. pip-3.3 instead.

Use

The following is a sample of how to run zlejrob. Not knowing optimal solver configuration myself, I'll leave that as an exercise for the reader:

from zlejrob import Client, Runner, Zlo

client = Client({
    'name': 'name',   
    'pass': 'password',   
})

solver_config = {
    'star_score': int,
    'reached_score': int,
    'length_penalty': int,
    'degeneration': float,
    'mutability': int,
    'offsprings': int,
    'survivors': int,
    'generation_limit': int,        
}

zlo = Zlo(client, Runner(max_steps=100), solver_config)
zlo.fetch_solve_submit(27) # fetch and solve one puzzle
zlo.solve_unsolved_puzzles() # run through the default campaign

Please do not submit zlejrob solutions as your own.

Contribute

A prerequisite for running the test suite is putting your robozzle.com login details in zlejrob/config.py. The test suite can be run with:

python -m unittest discover

Watch out: python refers to Python 3, on certain systems (Ubuntu), you'll need to specify the version explicitly by using python3 instead.