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
@@ -15,23 +15,23 @@ Runs the simulated annealing method starting from network `I0`. Only sensible if
15
15
("random" is purely random, works horribly; "shake" applies a gaussian blur
16
16
along a random direction, works alright; "rebranching" (deterministic) and "random rebranching" (default) is the algorithm
17
17
described in Appendix A.4 in the paper, works nicely)
18
-
- `preserve_central_symmetry::Bool=false`: Only applies to shake method
19
-
- `preserve_vertical_symmetry::Bool=false`: Only applies to shake method
20
-
- `preserve_horizontal_symmetry::Bool=false`: Only applies to shake method
21
-
- `smoothing_radius::Float64=0.25`: Parameters of the Gaussian blur
22
-
- `mu_perturbation::Float64=log(0.3)`: Parameters of the Gaussian blur
23
-
- `sigma_perturbation::Float64=0.05`: Parameters of the Gaussian blur
18
+
- `preserve_central_symmetry::Bool=false`: Only applies to "shake" method
19
+
- `preserve_vertical_symmetry::Bool=false`: Only applies to "shake" method
20
+
- `preserve_horizontal_symmetry::Bool=false`: Only applies to "shake" method
21
+
- `smooth_network::Bool=true`: Whether to smooth the network after each perturbation if `perturbation_method` is "random"
22
+
- `smoothing_radius::Float64=0.25`: Parameters of the Gaussian blur if `perturbation_method` is "random" or "shake"
23
+
- `mu_perturbation::Float64=log(0.3)`: Parameters of the Gaussian blur if `perturbation_method` is "shake"
24
+
- `sigma_perturbation::Float64=0.05`: Parameters of the Gaussian blur if `perturbation_method` is "shake"
25
+
- `num_random_perturbations::Int64=1`: Number of links to be randomly affected ("random" and "random rebranching" only)
24
26
- `display::Bool`: Display the graph in each iteration as we go
25
27
- `t_start::Float64=100`: Initial temperature
26
28
- `t_end::Float64=1`: Final temperature
27
29
- `t_step::Float64=0.9`: Speed of cooling
28
30
- `num_deepening::Int64=4`: Number of FOC iterations between candidate draws
29
-
- `num_random_perturbations::Int64=1`: Number of links to be randomly affected ('random' and 'random rebranching' only)
30
31
- `Iu::Matrix{Float64}=Inf * ones(J, J)`: J x J matrix of upper bounds on network infrastructure Ijk
31
32
- `Il::Matrix{Float64}=zeros(J, J)`: J x J matrix of lower bounds on network infrastructure Ijk
32
-
- `model::Function`: For custom models => a function that taks an optimizer and an 'auxdata' structure as created by create_auxdata() as input and returns a fully parameterized JuMP model
33
-
- `final_model::JuMPModel`: Alternatively: a readily parameterized JuMP model to be used (from `optimal_network()`)
34
-
- `recover_allocation::Function`: The `recover_allocation()` function corresponding to either `model` or `final_model`
33
+
- `final_model::JuMPModel`: (Optionally) a readily parameterized JuMP model to be used (from `optimal_network()`)
34
+
- `recover_allocation::Function`: The `recover_allocation()` function corresponding to `final_model`
35
35
- `allocation::Dict`: The result from `recover_allocation()` from a previous solution of the model: to skip an initial resolve without perturbations.
36
36
37
37
# Examples
@@ -85,7 +85,7 @@ function annealing(param, graph, I0; kwargs...)
0 commit comments