解决整数约束优化问题

时间:2012-04-05 02:22:58

标签: c++ optimization equations inequalities diophantine

我在数学上和程序上都是这些问题的新手。如果有人可以建议使用c ++库来解决以下问题,我会非常感激。

给定常数:

{x_1, ..., x_n}, {y_1, ..., y_n}, {z_1, ..., z_n}, C, & variables {q_1, ..., q_n}

最大化:sum(i = 1..n} q_i*x_i

受制于:C - sum(i = 1..n){ sum(j = 1..q_i) [y_i + (j-1)*z_i ] } >= 0 AND q_i >= 0

所有常量都是大于零的整数。 q_i's也是整数。

所以我正在尝试解决{q_1, ..., q_n}

1 个答案:

答案 0 :(得分:0)

听起来像是一个非常适合线性编程的优化问题。 GNU Linear Programming Kit (GLPK)是一个功能齐全的C库。

IBM有一个很好的关于线性编程的教程以及如何使用GLPK here来完成它。