我需要解决的几个数学方程式的我的应用程序。这是一个典型的例子这一公式:

a + b * c - d / e = a

附加规则:

  • b%10=0
  • b>=0
  • b <=100
  • 每个数字必须是整数
  • ...

我想得到可能的解决方法设定为a、b、c、d和e中。

有没有 任何库那里, ,无论是开放源或商业, 我可以用它来解决这样一个方程式?如果是的话,什么样的结果,他们提供什么?

有帮助吗?

解决方案

解决 线性系统 可以 一般 可以解决采用线性规划。我建议你考虑看看 提高uBLAS 对于初学者来说-这有一个简单的三角求解。然后你可能会结帐库针对多个领域特定的方法,也许 QSopt.

其他提示

你在冒险进入世界上的数字分析,并且在这里被巨龙。看似很小的差异,说明可以使一个巨大的差异,在什么是正确的做法。

我毫不犹豫地提出具体建议,没有一个相当精确说明的问题领域。这听起来superficiall像你正在解决受制约线的问题很简单,有很多的方式来做到这一点,但"..."可能是一个问题。

一个很好的资源对于一般的解决等。将会是 GAMS.许多软件可能有一点点重量为什么你是问。

你想要一个计算机代数系统。

看看 https://stackoverflow.com/questions/160911/symbolic-math-lib, ,答案大多有关c++作为c。

我知道这是不是你真正的问题,但可以简化所给的公式:

d=b*c*电子电子!= 0

很确定 数值的食谱 会有东西

你正在寻找一个计算机代数系统,这是不是一个简单的事情。

很多的人都可以,不过,试试这个列表中的在维基百科:

http://en.wikipedia.org/wiki/Comparison_of_computer_algebra_systems

-亚当

这看起来像的线性规划。做 列表的帮助?

除其他员额。你的约束套使这让人联想到一个 整编程问题, 所以你可能想看看这种东西出来。也许是你的问题可以是(重新)指出,作为一个。

你必须知道,但是,整编程问题往往是一个困难的计算问题所以你可能最终使用许多时钟周期来破解它。

仅仅在"其他规则"的一部分,它看起来像的线性规划,在这种情况下,林或类似的程序实施单的算法应该是美好的。

然而,如果第一个方程式是真的 典型的 它显示了你不是线性代数题-没有2个变量乘以或除以每个其它应该出现在一种线性方程式!

所以我说你肯定需要一个计算机代数系统或解决的问题使用了遗传算法。

因为你必须限制类似于那些发现的线性规划,虽然你不是很有,如果你只想要一个解决具体问题,我想说,拿起的任何图书馆提到底 维基百科文在遗传算法 并开发一个应用程序得到你的结果。如果你想要一个更通用的方法,那么你已经得到了模拟的代数的操作上的计算机,没有其他方式。

TI-89计算器具有'求解器应用程序。它的建立是为了解决问题一样,在您的例子。我知道它不是一个图书馆。但是,有几个TI-89模拟器。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top