示例#1
0
RANDOM_FACTOR = 0

temp = 0
oldREWSUM = 0
while (1):
    clock.tick(10)
    for event in pygame.event.get():
        #print(event)

        if event.type == pygame.QUIT:  #for exiting the game
            Game.QUITGAME()
    #here I model the built in player:------------------------------------------------------------------------

    if time_step % 25 == 0:
        RANDOM_FACTOR = random.randint(-25, 25)
        #print(RANDOM_FACTOR)

    if Game.BALL_Y + Game.BALL_DIM / 2 > Game.PADDLE_RIGHT_Y + 25 + RANDOM_FACTOR:
        AVR = [0, 0, 1]
    else:
        AVR = [1, 0, 0]
    #----------------------------------------------------------------------------------------------------------

    AVL = session.run(Q_L, feed_dict={State_InL: [STATE]})
    AVL = MyFunctions.ONE_HOT_ACTIONS(AVL)

    L, R, STATE = Game.Run4Frames(AVL, AVR)
    LRewSUM = L + LRewSUM
    RRewSUM = R + RRewSUM
    print(LRewSUM, RRewSUM)
time_step = 0
LRewSUM=0
RRewSUM=0
training_data = list()
RANDOM_FACTOR=0

temp = 0
oldREWSUM = 0
while (1):
        #print('playing')
        clock.tick(10)
        
        if np.random.binomial(1,EPSILON):
                #print (np.shape(STATE))
                AVR = session.run(Q_R, feed_dict = {State_InR: [STATE]})
                AVR = MyFunctions.ONE_HOT_ACTIONS(AVR)
        else:
                AVR = MyFunctions.RANDOM_ONE_HOT()

#here I model the built in player:------------------------------------------------------------------------
        
        if time_step%25 ==0:
                MyFunctions.RANDOM_FACTOR=random.randint(-35,35)
                #print(RANDOM_FACTOR)
                
        if Game.BALL_Y+Game.BALL_DIM/2 > Game.PADDLE_LEFT_Y+35+RANDOM_FACTOR:
                AVL=[0,0,1]
        else:
                AVL=[1,0,0]
#----------------------------------------------------------------------------------------------------------