我想编写一个程序,该程序接受对数学(优化)问题的描述,对其进行解析,并生成解决该问题的紧凑、高效的 C 代码。在 python 中,我对一个更小、更具体的问题有一个破解的解决方案,但它很丑陋,只依赖于 C 代码的模板 - 所以我有一堆看起来像的字符串
for (k = 0; k <= %s; k += %s) a[k] = v[k]/%s * a[i];
然后是一堆复杂的条件逻辑,在填写正确的 %s 值后,在某些时候上面的行被写入 solve_problem.c。
它实际上变得更加复杂,因为通常问题是由具有特定结构的矩阵等参数化的,而上述方法虽然可行,但在其自身的影响下开始分崩离析。
所以我想我正在寻找的是关于如何在代码中表示这些类型的问题的高级建议,或者更确切地说只是其他项目已经解决了这个问题的示例。有人告诉我使用 OCaml 或 F# 并查看 FFTW,但更简单的东西将不胜感激。
我很抱歉如此口齿不清,但我什至很难向自己表达我在寻找什么,我认为这就是问题的根源。