def simulate(arg): controll_params = arg score = 0 p = nPendulum(2) p.dynamic_state[0]=3 p.dynamic_state[1]=-0.02 p.dynamic_state[2]=0.02 for i in range(300): p.fx[0] = np.dot(p.dynamic_state[1:],controll_params) p.timestep(0.005) score += np.sum(np.abs(p.dynamic_state[1:])) p = nPendulum(2) p.dynamic_state[0]=3 p.dynamic_state[1]=0.02 p.dynamic_state[2]=0.04 for i in range(300): p.fx[0] = np.dot(p.dynamic_state[1:],controll_params) p.timestep(0.005) score += np.sum(np.abs(p.dynamic_state[1:])) return [score,controll_params]
import pygame import numpy as np import time import sys from nPendulum import nPendulum p = nPendulum(sys.argv[1]) fps_count = 0 fps_start = time.time() # Define some colors BLACK = (0, 0, 0) WHITE = (255, 255, 255) GREEN = (0, 255, 0) RED = (255, 0, 0) def draw_pendulum(pendulum): c = 0.2 p = pendulum.getPoints() x = p[0][0] for p1, p2 in zip(p[1:], p[:-1]): pygame.draw.line(screen, BLACK, transf(p1), transf(p2), 5) pygame.draw.line(screen, BLACK, transf([x + c, 0 + c]), transf([x + c, 0 - c]), 5) pygame.draw.line(screen, BLACK, transf([x + c, 0 + c]), transf([x - c, 0 + c]), 5) pygame.draw.line(screen, BLACK, transf([x - c, 0 - c]), transf([x - c, 0 + c]), 5) pygame.draw.line(screen, BLACK, transf([x - c, 0 - c]), transf([x + c, 0 - c]), 5)
import pygame import numpy as np import time import sys from nPendulum import nPendulum import cPickle as pickle p = nPendulum(1) p.dynamic_state[0]=3 p.dynamic_state[1]=0.02 p.dynamic_state[2]=0.04 fps_count = 0 fps_start = time.time() frame_count = 0 with open('params', 'rb') as fp: controll_params = pickle.load(fp)[1] # Define some colors BLACK = ( 0, 0, 0) WHITE = ( 255, 255, 255) GREEN = ( 0, 255, 0) RED = ( 255, 0, 0) def draw_pendulum(pendulum): c=.2 p = pendulum.getPoints()
import pygame import numpy as np import time import sys from nPendulum import nPendulum import cPickle as pickle p = nPendulum(2) p.dynamic_state[0]=3 p.dynamic_state[1]=0.02 p.dynamic_state[2]=0.04 fps_count = 0 fps_start = time.time() frame_count = 0 with open('params', 'rb') as fp: controll_params = pickle.load(fp)[1] # Define some colors BLACK = ( 0, 0, 0) WHITE = ( 255, 255, 255) GREEN = ( 0, 255, 0) RED = ( 255, 0, 0) def draw_pendulum(pendulum): c=.2 p = pendulum.getPoints()