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))
Exemple #3
0
 def __init__(self):
     self.approximation = Approximation()