import lib.deck.deck as deck
import lib.ai.land_ai as ai
import pickle
import sys

if __name__ == '__main__':
    parser = SafeConfigParser()
    parser.read('settings.ini')

    connection = Connection(parser.get('mongodb', 'server'))
    db = None
    exec('db = connection.' + parser.get('mongodb', 'db'))

    net = pickle.load(open(parser.get('land_net', 'brain')))

    if '-d' in sys.argv:
        print "Input deck in the format [count] [card], ^d ends input"
        d = deck.parse('\n'.join(sys.stdin.readlines()))
        iv = ai.input_vector(d, db)

        print('-' * 20)
        print(iv)
        print('-' * 20)
        ai.print_output_vector(net.activate(iv))
        exit(0)

    else:
        while True:
            i = raw_input()
            print net.activate(map(float, i.split(' ')))
Esempio n. 2
0
    exec('db = connection.' + parser.get('mongodb', 'db'))

    f = open(parser.get('land_net', 'corpus') + '.' + sy.argv[1], 'w'))

    lim = {'$gt': 8}
    count_per_type = int(sys.argv[1])

#    black = db.decks.find({'Swamp':    lim}).limit(count_per_type)
#    blue  = db.decks.find({'Island':   lim}).limit(count_per_type)
#    green = db.decks.find({'Forest':  lim}).limit(count_per_type)
#    red   = db.decks.find({'Mountain': lim}).limit(count_per_type)
#    white = db.decks.find({'Plains':   lim}).limit(count_per_type)

    t = (db.decks.find({e: lim for e in p}).limit(count_per_type)
                 for p in product(ai.__lands__, repeat=2))

    cursor = mix(*t)

    c = 0
    for d in cursor:
        try:
            i, o = ai.input_vector(d, db), ai.output_vector(d)
            f.write(ai.export_vector(i) + '|' + ai.export_vector(o) + '\n')
            print c
            c += 1
        except Exception as e:
            print e
            continue

    f.close()
Esempio n. 3
0
import lib.ai.land_ai as ai
import pickle
import sys

if __name__ == '__main__':
    parser = SafeConfigParser()
    parser.read('settings.ini')

    connection = Connection(parser.get('mongodb', 'server'))
    db = None
    exec('db = connection.' + parser.get('mongodb', 'db'))

    net = pickle.load(open(parser.get('land_net', 'brain')))

    if '-d' in sys.argv:
        print "Input deck in the format [count] [card], ^d ends input"
        d = deck.parse('\n'.join(sys.stdin.readlines()))
        iv = ai.input_vector(d, db)

        print('-'*20)
        print(iv)
        print('-'*20)
        ai.print_output_vector(net.activate(iv))
        exit(0)

    else:
        while True:
            i = raw_input()
            print net.activate(map(float, i.split(' ')))