我有兴趣在使用
mathopt
解决 MIP 问题时利用更多数量的物理核心。
通过设置搜索工作者的数量
CP-SAT
可以轻松实现并行化
solver.parameters.num_workers = 8 # use 8 cores
我努力寻找正确的参数,使求解器能够使用 1 个以上的核心来求解
mathopt
。我正在使用 HiGHS
求解器和 mathopt
(如下面的代码片段)
params = mathopt.SolveParameters(enable_output=True)
result = mathopt.solve(model, mathopt.SolverType.HIGHS, params=params)
-- 编辑 --
params = mathopt.SolveParameters(enable_output=True, threads=8)
我收到以下错误:
proto_result = solver.solve(
RuntimeError: INVALID_ARGUMENT: threads not supported for HiGHS solver, this must be set using globals, see HiGHS documentation
尝试过以下:
params = mathopt.SolveParameters(enable_output=True, highs={"threads": 8})
result = mathopt.solve(model, mathopt.SolverType.HIGHS, params=params)
result = math_opt_parameters_pb2.SolveParametersProto(
ValueError: Protocol message HighsOptionsProto has no "threads" field.
有人可以帮忙吗?
我们有并行高点的内存问题。目前该功能已被禁用。