我想用约束编程语言表达和求解以下方程。
我有变量 t 并试图找到最小化我的目标函数的最佳乘数 k。
时间:t1, t2, t3 ......在输入中给出
倍数 k1, k2, k3...(这是需要找到的连续变量)
c1, c2,.. cN 是常数
主方程k1*sin(c1*x)+k2*sin(c2*x)+k3*sin(c3*x)+k4*cos(c1*x)...
问题是用 (k1, k2, k3..) 的最佳可能值最小化以下所有方程的结果。众所周知,该问题没有确切的解决方案。所以,
当 x 是 t1 --> P1-k1*sin(c1*t1)-k2*sin(c2*t1)-k3*sin(c3*t1)-k4*cos(c1*t1)...
当x 是 t2 --> P2-k1*sin(c1*t2)-k2*sin(c2*t2)-k3*sin(c3*t2)-k4*cos(c1*t2)...
当 x 是 t3 --> P3-k1*sin(c1*t3)-k2*sin(c2*t3)-k3*sin(c3*t3)-k4*cos(c1*t3)...
P1 是时间变量的界值。但是 P(t) 不是解析函数,我只是为它们设置了值,例如当 t1 = 5 P1=0.7 t2= 6 P2= 0.3 等时。
是否有可能在 minizinc 或任何其他 CP 系统中解决这个问题?