def test_rs_bnd_2d_int(self): np.random.seed(42) X0 = np.random.uniform(-1.,1.,size=(50,3)) f0 = np.zeros((50,1)) df0 = np.zeros((50,3)) for i in range(50): x = X0[i,:] f0[i,0] = self.quad_fun(x) df0[i,:] = self.quad_dfun(x).reshape((3, )) sub = ss.Subspaces() sub.compute(df=df0) sub.partition(2) avd = dom.BoundedActiveVariableDomain(sub) avm = dom.BoundedActiveVariableMap(avd) asrs = asm.ActiveSubspaceResponseSurface(avm) asrs.train_with_data(X0, f0) xstar, fstar = aso.minimize(asrs, X0, f0)
def test_rs_bnd_int(self): data = helper.load_test_npz('test_rs_1.npz') X, f, df = data['X'], data['f'], data['df'] sub = ss.Subspaces() sub.compute(df) avd = dom.BoundedActiveVariableDomain(sub) avm = dom.BoundedActiveVariableMap(avd) asrs = asm.ActiveSubspaceResponseSurface(avm) asrs.train_with_data(X, f) np.random.seed(43) xstar, fstar = aso.minimize(asrs, X, f) if self.writeData: np.savez('data/test_opt_0_2',xstar=xstar, fstar=fstar) data_test = helper.load_test_npz('test_opt_0_2.npz') np.testing.assert_almost_equal(xstar, data_test['xstar']) np.testing.assert_almost_equal(fstar, data_test['fstar']) print '\n' print 'bnd min: {:6.4f}'.format(fstar) print 'bnd xmin: {:6.4f}, {:6.4f}, {:6.4f}'.format(xstar[0,0],xstar[0,1],xstar[0,2])