如何使用遗传算法求解线性方程组? [英] How to solve linear equations using a genetic algorithm?

查看:640
本文介绍了如何使用遗传算法求解线性方程组?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要解决的使用遗传算法含有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.

这篇关于如何使用遗传算法求解线性方程组?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆