Skip to content

Commit

Permalink
Merge pull request #127 from SciML/lcbs_inf_vals
Browse files Browse the repository at this point in the history
Added new condition on LCBS to skip infinite or nan values
  • Loading branch information
ludoro committed May 13, 2020
2 parents bc54d07 + 4d15032 commit 7f990f6
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 5 deletions.
13 changes: 10 additions & 3 deletions src/Optimization.jl
Original file line number Diff line number Diff line change
Expand Up @@ -401,8 +401,11 @@ function surrogate_optimize(obj::Function,::LCBS,lb::Number,ub::Number,krig,samp
if min_add_y < 1e-6*(maximum(krig.y) - minimum(krig.y))
return
else
min_add_y = obj(min_add_x) # I actually add the objc function at that point
add_point!(krig,min_add_x,min_add_y)
if (abs(min_add_y) == Inf || min_add_y == NaN)
println("New point being added is +Inf or NaN, skipping.\n")
else
add_point!(krig,min_add_x,min_add_y)
end
end
end
end
Expand Down Expand Up @@ -464,7 +467,11 @@ function surrogate_optimize(obj::Function,::LCBS,lb,ub,krig,sample_type::Samplin
return (krig.x[index],krig.y[index])
else
min_add_y = obj(min_add_x) # I actually add the objc function at that point
add_point!(krig,Tuple(min_add_x),min_add_y)
if (abs(min_add_y) == Inf || min_add_y == NaN)
println("New point being added is +Inf or NaN, skipping.\n")
else
add_point!(krig,Tuple(min_add_x),min_add_y)
end
end
end
end
Expand Down
4 changes: 2 additions & 2 deletions test/optimization.jl
Original file line number Diff line number Diff line change
Expand Up @@ -126,8 +126,8 @@ objective_function = x -> 2*x+1
x = [2.0,4.0,6.0]
y = [5.0,9.0,13.0]
p = 1.8
a = 2
b = 6
a = 2.0
b = 6.0
my_k_LCBS1 = Kriging(x,y,p)
surrogate_optimize(objective_function,LCBS(),a,b,my_k_LCBS1,UniformSample())

Expand Down

0 comments on commit 7f990f6

Please sign in to comment.