1// Copyright 2010-2024 Google LLC
2// Licensed under the Apache License, Version 2.0 (the "License");
3// you may not use this file except in compliance with the License.
4// You may obtain a copy of the License at
6// http://www.apache.org/licenses/LICENSE-2.0
8// Unless required by applicable law or agreed to in writing, software
9// distributed under the License is distributed on an "AS IS" BASIS,
10// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11// See the License for the specific language governing permissions and
12// limitations under the License.
14// Proto messages specific to GLPK.
17package operations_research.math_opt;
19// GLPK specific parameters for solving.
21// Fields are optional to enable to capture user intention; if they set
22// explicitly a value to then no generic solve parameters will overwrite this
23// parameter. User specified solver specific parameters have priority on generic
25message GlpkParametersProto {
26 // Compute the primal or dual unbound ray when the variable (structural or
27 // auxiliary) causing the unboundness is identified (see glp_get_unbnd_ray()).
29 // The unset value is equivalent to false.
31 // Rays are only available when solving linear programs, they are not
32 // available for MIPs. On top of that they are only available when using a
33 // simplex algorithm with the presolve disabled.
35 // A primal ray can only be built if the chosen LP algorithm is
36 // LP_ALGORITHM_PRIMAL_SIMPLEX. Same for a dual ray and
37 // LP_ALGORITHM_DUAL_SIMPLEX.
39 // The computation involves the basis factorization to be available which may
40 // lead to extra computations/errors.
41 optional bool compute_unbound_rays_if_possible = 1;