# X's x_oracle = XOracle(util) x_querier = XQuerier(pool) x_learner = XLearner(pool) # Y's y_oracle = YOracle(util) y_querier = YQuerier(pool) y_learner = YLearner(pool) pool.transition = Transition(pool, x_querier, x_learner, y_querier, y_learner) # initialize x_seeds = x_oracle.get_seeds() print 'INITIAL x_seeds', len(x_seeds) pool.add_x(x_seeds) print 'INITIAL x_data', len(pool.x_data) print 'INITIAL x_hist', len(pool.x_hist) y_seeds = y_querier.ask_seeds() y_seeds_answered = y_oracle.answer(y_seeds) pool.add_y(y_seeds_answered) print 'INITIAL y_data', len(pool.y_data) print 'INITIAL y_hist', len(pool.y_hist) print 'INITIAL y_pred', len(pool.y_pred) next_state = pool.transition.go() while True: print 'current_state =', next_state if next_state == STATE_Y_UPDATE: