如何使用遗传算法求解线性方程组?如何使用、算法、线性方程组

由网友(念归人)分享简介:我要解决的使用遗传算法含有n个变量N维线性方程组的系统。I want to solve a system of n linear equations containing n variables using a genetic algorithm.我有困难在确定交叉操作的解决方案可能包括浮点值。我该如何进行?这似乎...

我要解决的使用遗传算法含有n个变量N维线性方程组的系统。

I want to solve a system of n linear equations containing n variables using a genetic algorithm.

我有困难在确定交叉操作的解决方案可能包括浮点值。我该如何进行?这似乎可能的,但是这是我与遗传算法第一次遇到。

I am having difficulty in defining the crossover operation as the solution may consist of floating point values. How do I proceed? It seems possible, but this is my first encounter with genetic algorithms.

假设我们要解决

 x + 2y = 1
2x + 8y = 3

答案是X = 1/2和y = 1/4。

The answer would be x = 1/2 and y = 1/4.

我们如何模型的问题?

更新:看看你是否可以从纸张的 http://www.masaumnet.com/archives/mjbas/volume1/issue2/mjbas010205.pdf 。

Update: see if you could decipher anything from the paper http://www.masaumnet.com/archives/mjbas/volume1/issue2/mjbas010205.pdf.

推荐答案

一个途径是选择自己的浮点重新presentation,只要你想这将释放你多大了值。当然,这会让你负责执行算术运算。也许你可以找到一个BIGNUM库,你可以改变。

One route is to pick your own floating point representation, which frees you to much with values as you want. Of course, that makes you responsible for implementing arithmetic operations. Perhaps you could find a bignum library you could alter.

您也可以通过分解,例如平台原生浮点 frexp 在交叉步,然后剔除在重组它。

You could also decompose platform-native floating points using e.g. frexp during the crossover step, then recombine it during culling.

阅读全文

相关推荐

最新文章