From 4ff2a26a1b058033307d8652a2c24aa7a0b5ba77 Mon Sep 17 00:00:00 2001 From: liuchangliu Date: Sun, 12 Jul 2020 20:31:01 -0400 Subject: [PATCH] fix #112. MIPVerify uses the bounds computed from the input set to contraint the network. So we also need to add the input set as a constraint to the optimization problem. --- src/optimization/mipVerify.jl | 1 + 1 file changed, 1 insertion(+) diff --git a/src/optimization/mipVerify.jl b/src/optimization/mipVerify.jl index cbf18f38..66aba9db 100644 --- a/src/optimization/mipVerify.jl +++ b/src/optimization/mipVerify.jl @@ -34,6 +34,7 @@ function solve(solver::MIPVerify, problem::Problem) model = Model(solver) neurons = init_neurons(model, problem.network) deltas = init_deltas(model, problem.network) + add_set_constraint!(model, problem.input, first(neurons)) add_complementary_set_constraint!(model, problem.output, last(neurons)) bounds = get_bounds(problem) encode_network!(model, problem.network, neurons, deltas, bounds, BoundedMixedIntegerLP())