HRR.verbose = False armlengths = [1.0, 1.0] def fn(x, y): tcp = TCP([x, y], arms=2, armlengths=armlengths) tcp.computeTcp() return tcp.tcp # should be list of length 3 input_range = [(0.0, 360.0), (0.0, 360.0)] sr = np.sum(armlengths) output_range = [(-sr, sr), (-sr, sr)] appr = Approximation(fn=fn, size=3000) appr.learn(input_range=input_range, output_range=output_range, n_samples=(20, 20), stddev=0.02, use_incremental=False) input_tuples = [] S = np.linspace(0.0, 360.0, 10) for joint1 in S: for joint2 in S: input_tuples.append((joint1, joint2)) appr.verify(input_tuples=input_tuples, input_range=input_range, output_range=output_range)
Approximation.verbose_learn = False Approximation.verbose_probe = False #input_range = np.array([-3.5, 3.5]) #output_range = np.array([0.0, fn_square(input_range[0])]) input_range = np.array([(-1.0, 1.0), (-1.0, 1.0)]) output_range = np.array([-2.0, 2.0]) print("input_range: {} output_range: {}".format(input_range, output_range)) #HRR.incremental_weight = 0.5 #appr = Approximation(fn=fn_2dparab, size=3000) #appr.learn(input_range=input_range, output_range=output_range, n_samples=200, stddev=0.02, use_incremental=False) #appr.plot_result(input_range=input_range, output_range=output_range, n_samples=19) appr = Approximation(fn=fn_plane, size=10000) appr.learn(input_range=input_range, output_range=output_range, n_samples=(10, 10), stddev=0.01, use_incremental=False) n_samples = (10, 10) if True: input_tuples = [] X = np.linspace(-1.0, 1.0, n_samples[0]) Y = np.linspace(-1.0, 1.0, n_samples[1]) for x in X: for y in Y: input_tuples.append((x, y))
def __init__(self): self.approximation = Approximation()