Python 组合约束优化算法
我有一个带有组合约束的优化问题 我的问题是: 我有一堆数据,在这些数据的基础上,我训练了一个机器学习模型,这个模型会产生一个依赖于输入向量的模型Python 组合约束优化算法,python,algorithm,mathematical-optimization,combinatorics,Python,Algorithm,Mathematical Optimization,Combinatorics,我有一个带有组合约束的优化问题 我的问题是: 我有一堆数据,在这些数据的基础上,我训练了一个机器学习模型,这个模型会产生一个依赖于输入向量的模型f。x[i]都大于或等于零 我将这个模型的输出插入到一个不同的函数g,我希望通过一些边界和约束最小化该函数。 我知道如何使用我最喜欢的优化器以数字方式解决这个问题,我目前正在研究PySarms或EGO。这没问题 我的问题是: 我不希望x的所有值都大于零。例如,我们查看前4个值x[0]、x[1]、x[2]、x[3]。我知道我希望至少有一个大于零,但不超过3
f
。x[i]
都大于或等于零
我将这个模型的输出插入到一个不同的函数g
,我希望通过一些边界和约束最小化该函数。
我知道如何使用我最喜欢的优化器以数字方式解决这个问题,我目前正在研究PySarms或EGO。这没问题
我的问题是:
我不希望x
的所有值都大于零。例如,我们查看前4个值x[0]、x[1]、x[2]、x[3]
。我知道我希望至少有一个大于零,但不超过3。
这意味着:
x[0], x[1], x[2], x[3], allowed
2.1, 0, 0, 0, yes
1.5, 0, 1.1, 0, yes
1.5, 2.1, 2.1, 1.2, no (more than 3 values are bigger than zero)
我现在的最佳解决方案是暴力:
我接受所有允许的可能性,并对其进行优化
在本例中,我从四个第一个条目中选取了1、2和3个条目的所有组合,并为每个条目解决了一个优化问题
这种野蛮的强迫感觉并不优雅,而且在计算时间方面可以迅速爆发
你们中有谁知道如何更快地解决这个问题吗?
或者,如果允许我做梦,也许有一个python优化器可以开箱即用
我不希望有一个完整的解决方案,但可能有一些指向正确方向的指针。这个问题并不觉得如此深奥以至于以前没有人考虑过,我想我只是缺少了要搜索的正确关键字
谢谢你的帮助 在
x
的前3个值上,您试图优化什么?举个例子可能会帮助其他人知道该建议什么。您试图在x
的前3个值上优化什么?举个例子可以帮助其他人知道该建议什么。