在Google或工具中获取所有解决方案 [英] Getting all solutions in Google or-tools
问题描述
我遇到一个线性问题,即找到满足所有约束的所有解决方案. 例如,我的变量为= [0.323、0.123、1.32、6.3 ...] 是否有可能获得按适应度(最大化/最小化)功能排序的前100个解决方案?
I have a linear problem of finding all solutions that meet all constraints. For example my variables are = [0.323, 0.123, 1.32, 6.3...] Is it possible to get for example top 100 solutions sorted by fitness(maximization/minimization) function?
推荐答案
在连续的LP中,枚举不同的解决方案是一个困难的概念.例如.考虑max x, s.t. x <= 1
.显然,x=1
,x=0.99999
是解决方案,介于两者之间的无限数量的解决方案也是如此.我们可以列举拐角解决方案"(或基本解决方案).有关示例,请参见此处.这样的方案可以适合于找到由物镜分类的前100个不同的拐角点.对于具有离散变量的模型,许多约束编程求解器将使您能够找到许多解.
In a continuous LP enumerating different solutions is a difficult concept. E.g. consider max x, s.t. x <= 1
. Obviously x=1
, x=0.99999
are solutions and so are the infinite number of solutions in between. We could enumerate "corner solutions" (or basic solutions). See here for an example. Such a scheme could be adapted to find the first 100 different corner points sorted by the objective. For models with discrete variables, many constraint programming solvers will give you the possibility to find many solutions.
这篇关于在Google或工具中获取所有解决方案的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!