Exemple #1
0
def main(argv):
    parse_cmdline(argv)

    print "Flood fill"

    fp = FieldColorPalette(num_colors=6)
    pg = PlayGround(12, 12, fp)
    pg.fill_random()
    pg.plot()

    p = pg.copy()
    solver1 = Solver(p, RandomStrategy(p))
    sol1 = solver1.solve()

    p = pg.copy()
    solver2 = Solver(p, MostPeripheralsStrategy(p))
    sol2 = solver2.solve()

    p = pg.copy()
    solver3 = Solver(p, MostUnfloodedColorStrategy(p))
    sol3 = solver3.solve()

    print sol1
    print sol2
    print sol3

    if 'iterations' in config['args']:
        steps = config['args'].iterations

    print "Giving Random strategy %s tries" % steps

    bs = sol1
    for i in range(steps):
        p = pg.copy()
        solver1 = Solver(p, RandomStrategy(p))
        sol = solver1.solve()
        if sol.better_than(bs):
            bs = sol
            print bs