我在数学上和程序上都是这些问题的新手。如果有人可以建议使用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}
答案 0 :(得分:0)
听起来像是一个非常适合线性编程的优化问题。 GNU Linear Programming Kit (GLPK)是一个功能齐全的C库。
IBM有一个很好的关于线性编程的教程以及如何使用GLPK here来完成它。