From 6213d43ff93cb46a3ae41f2eda15707c031969fd Mon Sep 17 00:00:00 2001 From: Joachim van der Herten Date: Mon, 1 May 2017 13:41:01 +0200 Subject: [PATCH] Fix for scipy minimize issues, caused by 2D arrays returned from objective functions --- GPflowOpt/optim.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/GPflowOpt/optim.py b/GPflowOpt/optim.py index 955ff5b..15dfe49 100644 --- a/GPflowOpt/optim.py +++ b/GPflowOpt/optim.py @@ -129,7 +129,8 @@ def __init__(self, domain, method='L-BFGS-B', tol=None, maxiter=1000): options=options) def _optimize(self, objective): - result = minimize(fun=objective, + objective1d = lambda X: tuple(map(lambda arr: arr.ravel(), objective(X))) + result = minimize(fun=objective1d, x0=self.get_initial(), jac=self.gradient_enabled(), bounds=list(zip(self.domain.lower, self.domain.upper)),