이제 모델을 훈련시킬 텐데, 앞서 num_of_episodestimesteps_per_episode의 값을 제한했기 때문에 훈련은 한 단계만 진행하고 종료됩니다.

    코드 12-5 모델 훈련

    for e in range(0, num_of_episodes):
        state = env.reset() ------ 환경 재설정
        state = np.reshape(state, [1,1])
    
        reward = 0 ------ 보상 변수 초기화
        terminated = False
    
        for timestep in range(timesteps_per_episode):
            action = agent.act(state) ------ act() 함수 실행
    
            next_state, reward, terminated, info = env.step(action) ------ 에이전트가 단계별 행동을 취합니다.
            next_state = np.reshape(next_state, [1,1])
            agent.store(state, action, reward, next_state, terminated)
            state = next_state
    
            if terminated:
                agent.target_model()
                break
    
            if len(agent.expirience_replay) > batch_size:
                agent.retrain(batch_size)
        
        if (e + 1) % 10 == 0:
            print("**********************************")
            print("Episode: {}".format(e+1))
            env.render()
            print("**********************************")
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.