nom_piez = informacion['current_piece'] board = env.board() # Si acabamos de empezar o acabamos de colocar una pieza # calculamos cual es la posicion de la siguiente pieza if pieza_colocada: pieza_colocada = False pos = 5 u = -1 ant_nom_piez = '' estado = board_prop(board) posiciones, estados, piezas, giros = posibles_estados( board, nom_piez) mejores_estados, mejores_k = best_estados(estado, estados)[:] mejor_estado, j = agent.el_mejor_estado( mejores_estados )[:] # En este caso hacemos calcular al agente el mejor # estado entre 4 estados k = mejores_k[j] if k < 0: k = 0 for estado_i in estados: if estado_i == mejor_estado: break k = k + 1 pos_objetivo = posiciones[k] pieza = piezas[k] # Giramos la pieza hasta que tengamos el giro que queramos if nom_piez != pieza and not terminado: state, reward, terminado, info = env.step(1)
break env.render() informacion = env.get_info() nom_piez = informacion['current_piece'] board = env.board() # Si acabamos de empezar o acabamos de colocar una pieza # calculamos cual es la posicion de la siguiente pieza if pieza_colocada: pieza_colocada = False pos = 5 u = -1 posiciones, estados, piezas = posibles_estados(board, nom_piez) mejor_estado, k, valor = agent.el_mejor_estado(estados)[:] if k < 0: k = 0 for estado_i in estados: if estado_i == mejor_estado: break k = k + 1 pos_objetivo = posiciones[k] pieza = piezas[k] # Giramos la pieza hasta que tengamos el giro que queramos if nom_piez != pieza and not terminado: state, reward, terminado, info = env.step(1) nom_piez = informacion['current_piece'] accion = 0 # Movemos la pieza hasta que este en la posicion que queramos