Tools to manage set of parameters. Our primary target is to provide an abstract interface to handle parameters in solvers.
If you use SolverParameters.jl in your work, please cite using the format given in CITATION.cff.
SolverParameters is a Julia Language package. To install SolverParameters, please open Julia's interactive session (known as REPL) and press ] key in the REPL to use the package mode, then type the following command
pkg> add SolverParameters
The main feature of this package is to define a Julia type to handle set of parameters. The following example is a brief illustration showing how to define a new set of parameters.
using SolverParameters
struct CatMockSolverParamSet{I, F} <: AbstractParameterSet
real_inf::Parameter{F, RealInterval{F}}
real::Parameter{String, CategoricalSet{String}}
int_r::Parameter{I, IntegerRange{I}}
end
function CatMockSolverParamSet() # add a default constructor
CatMockSolverParamSet(
Parameter(Float64(42)),
Parameter("A", CategoricalSet(["A", "B", "C", "D"])),
Parameter(Int32(5), IntegerRange(Int32(5), Int32(20))),
)
end
param_set = CatMockSolverParamSet()
It is then possible to use all the API defined in this package and described in the documentation on param_set
.
If you think you found a bug, feel free to open an issue. Focused suggestions and requests can also be opened as issues. Before opening a pull request, start an issue or a discussion on the topic, please.
If you want to ask a question not suited for a bug report, feel free to start a discussion here. This forum is for general discussion about this repository and the JuliaSmoothOptimizers organization, so questions about any of our packages are welcome.