You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I wonder if I'm using the solver the wrong way...
My problem has four upper level feasible solutions.
If necessary I can generate and share the bilevel feasible solutions for this problem (I mean leader-feasible and follower optimal response).
My problem uses some input data and an underlying network G(V,E), where V is a set of components and E is a set of undirected edges. The horizon has two time periods, the leader defends at time t=1, and the follower can attack at times t=1 and/or t=2.
I use the following input files for MibS: model.zip
Here is a bilevel optimal solution for the problem:
upper level: (minimizes the number of damaged components over horizon)
z[i, t] (indicates defend/protection of i at time t)
[(1,1) 0.0; (2,1) 1.0; (3,1) 0.0; (4,1) 0.0]
lower level: (maximizes the number of damaged components over horizon)
y[i,t,0] (indicates attack of i at time t)
[(1,1,0) 0.0; (2,1,0) 0.0; (3,1,0) 0.0; (4,1,0) 0.0; (1,2,0) 0.0; (2,2,0) 0.0; (3,2,0) 0.0; (4,2,0) 1.0]
Hi,
I wonder if I'm using the solver the wrong way...
My problem has four upper level feasible solutions.
If necessary I can generate and share the bilevel feasible solutions for this problem (I mean leader-feasible and follower optimal response).
My problem uses some input data and an underlying network G(V,E), where V is a set of components and E is a set of undirected edges. The horizon has two time periods, the leader defends at time t=1, and the follower can attack at times t=1 and/or t=2.
I use the following input files for MibS:
model.zip
Here is the output I received:
mibs_output.txt
Here is a bilevel optimal solution for the problem:
upper level: (minimizes the number of damaged components over horizon)
z[i, t] (indicates defend/protection of i at time t)
[(1,1) 0.0; (2,1) 1.0; (3,1) 0.0; (4,1) 0.0]
lower level: (maximizes the number of damaged components over horizon)
y[i,t,0] (indicates attack of i at time t)
[(1,1,0) 0.0; (2,1,0) 0.0; (3,1,0) 0.0; (4,1,0) 0.0; (1,2,0) 0.0; (2,2,0) 0.0; (3,2,0) 0.0; (4,2,0) 1.0]
w[i,t,0] (indicates spread damage in i at time t)
[(3, 2, 0) 1.0; (1, 2, 0) 0.0; (3, 1, 0) 0.0; (1, 1, 0) 0.0; (4, 2, 0) 1.0; (4, 1, 0) 0.0; (2, 2, 0) 0.0; (2, 1, 0) 0.0]
x[i,t,0] (measures the vulnerability of the component at time t) (z[i,t-1]=1 or w[i,t-1,0]=1 makes this measure decrease)
[(3, 2, 0) 14.267529141593812; (1, 2, 0) 6.551886343581829; (3, 1, 0) 13.872371946231844; (1, 1, 0) 4.726983106693199; (4, 2, 0) 16.33995846253321; (4, 1, 0) 16.32883247435988; (2, 2, 0) 8.165345055858875; (2, 1, 0) 16.010449108646597]
θ[i,t,0] (indicates the component i is vulnerable at time t, i.e. x[i,t,0] is over a threshold = 13.4)
[(3, 2, 0) 1.0; (1, 2, 0) 0.0; (3, 1, 0) 1.0; (1, 1, 0) 0.0; (4, 2, 0) 1.0; (4, 1, 0) 1.0; (2, 2, 0) 0.0; (2, 1, 0) 0.0]
ε[(i,j),t,0] (indicates the (i, j) ∈ E connection can spread the attack because both end-points are vulnerable at time t)
[((1, 2), 1, 0) 0.0; ((1, 3), 1, 0) 0.0; ((1, 2), 2, 0) 0.0; ((2, 4), 2, 0) 0.0; ((3, 4), 1, 0) 1.0; ((1, 3), 2, 0) 0.0; ((3, 4), 2, 0) 1.0; ((2, 4), 1, 0) 0.0]
ϕ[i,j,t,0] (indicates that (i,j) ∈ V×V are connected through active edges in E at time t, i.e., those having ε[(i,j),t,0]=1)
[(1, 1, 1, 0) 0.0; (2, 2, 2, 0) 0.0; (1, 2, 1, 0) 0.0; (2, 3, 2, 0) 0.0; (4, 4, 2, 0) 1.0; (1, 3, 1, 0) 0.0; (2, 4, 2, 0) 0.0; (1, 1, 2, 0) 0.0; (1, 4, 1, 0) 0.0; (3, 3, 1, 0) 1.0; (1, 2, 2, 0) 0.0; (3, 4, 1, 0) 1.0; (1, 3, 2, 0) 0.0; (1, 4, 2, 0) 0.0; (2, 2, 1, 0) 0.0; (3, 3, 2, 0) 1.0; (2, 3, 1, 0) 0.0; (4, 4, 1, 0) 1.0; (3, 4, 2, 0) 1.0; (2, 4, 1, 0) 0.0]
μ[(k,k'), i, j, t, 0] (flow through arc (k,k') where (k,k') ∈ E or (k',k) ∈ E of a commodity sourced at component i directed towards component j at time t)
[((2, 1), 1, 4, 2, 0) 0.0; ((3, 4), 1, 4, 2, 0) 0.0; ((4, 3), 2, 3, 2, 0) 0.0; ((2, 4), 2, 3, 1, 0) 0.0; ((4, 2), 1, 4, 1, 0) 0.0; ((2, 4), 2, 3, 2, 0) 0.0; ((4, 3), 1, 4, 1, 0) 0.0; ((4, 2), 1, 4, 2, 0) 0.0; ((4, 3), 1, 4, 2, 0) 0.0; ((2, 4), 1, 4, 1, 0) 0.0; ((1, 2), 2, 3, 1, 0) 0.0; ((3, 1), 2, 3, 1, 0) 0.0; ((2, 4), 1, 4, 2, 0) 0.0; ((1, 3), 2, 3, 1, 0) 0.0; ((1, 2), 2, 3, 2, 0) 0.0; ((3, 1), 2, 3, 2, 0) 0.0; ((1, 3), 2, 3, 2, 0) 0.0; ((1, 2), 1, 4, 1, 0) 0.0; ((3, 1), 1, 4, 1, 0) 0.0; ((1, 3), 1, 4, 1, 0) 0.0; ((1, 2), 1, 4, 2, 0) 0.0; ((3, 1), 1, 4, 2, 0) 0.0; ((2, 1), 2, 3, 1, 0) 0.0; ((1, 3), 1, 4, 2, 0) 0.0; ((3, 4), 2, 3, 1, 0) 0.0; ((2, 1), 2, 3, 2, 0) 0.0; ((3, 4), 2, 3, 2, 0) 0.0; ((4, 2), 2, 3, 1, 0) 0.0; ((2, 1), 1, 4, 1, 0) 0.0; ((3, 4), 1, 4, 1, 0) 0.0; ((4, 3), 2, 3, 1, 0) 0.0; ((4, 2), 2, 3, 2, 0) 0.0]
ϕy[i,j,t,0] (product between variables ϕ[i,j,t,0] and y[j,t,0])
[(1, 1, 1, 0) 0.0; (2, 2, 2, 0) 0.0; (1, 2, 1, 0) 0.0; (2, 3, 2, 0) 0.0; (4, 4, 2, 0) 1.0; (1, 3, 1, 0) 0.0; (2, 4, 2, 0) 0.0; (1, 1, 2, 0) 0.0; (1, 4, 1, 0) 0.0; (3, 3, 1, 0) 0.0; (1, 2, 2, 0) 0.0; (3, 4, 1, 0) 0.0; (1, 3, 2, 0) 0.0; (1, 4, 2, 0) 0.0; (2, 2, 1, 0) 0.0; (3, 3, 2, 0) 0.0; (2, 3, 1, 0) 0.0; (4, 4, 1, 0) 0.0; (3, 4, 2, 0) 1.0; (2, 4, 1, 0) 0.0]
Thanks!
The text was updated successfully, but these errors were encountered: