我正在尝试用Matlab(2015)中的优化来解决一个未确定的混合问题。使用具有线性约束的LP很容易制定基本问题,因为混合比例和它们的和被约束为[0,1]。
min norm(Cx-d)
s.t。 0< = x_i< = 1并且和x_i == 1。
C(n-by-m)描述了以n个变量为特征的m混合成分,d是具有n个变量中每个变量的测量浓度的特定混合物的1乘n矢量。现在C含有一种成分C_k,它本身是一种双组分混合物,对于我有数据的所有N种混合物都是恒定的。我想替换基本解决方案'通过将C_k包含在配方中来假设C_k的组成:我将成分C_k分成C_k1和C_k2,沿着新的较大N n-by-N 的对角线复制新的C N次m矩阵,在对角块之外有零,并通过将N个向量d连接成新的d(1乘N * n)来组合所有测量。 新的和约束(和x_i == N)变得有点弱但关键问题是:
解x包含x(C_k1)/ x(C_k2)的 N比率,它应该是常数,但我知道如何将其作为约束添加;或者如果我需要将其解决为非线性问题。
感谢您的帮助!