#遗传算法 #紧凑 #优化 #参数 #实数 #问题 #机器编码

mccga

实现了机器编码紧凑遗传算法(MCCGA)

6个版本

0.1.5 2023年9月28日
0.1.4 2023年8月17日

#836 in 算法

MIT许可

19KB
417

mccga.rs

Rust中的机器编码紧凑遗传算法

简述

该软件包实现了在

Satman, M. H. & Akadal, E. (2020). 机器编码紧凑遗传算法用于实参数优化问题 . Alphanumeric Journal , 8 (1) , 43-58 . DOI: 10.17093/alphanumeric.576919 链接

示例

假设目标函数是要最小化

fn f(x: &Vec<f64>) -> f64 {
    return (x[0] - 3.14159265).powf(2.0) + (x[1] - 2.71828).powf(2.0);
}

因此,该软件包允许用户输入

let mins: Vec<f64> = vec![-10000.0_f64; 2];
let maxs: Vec<f64> = vec![10000.0_f64; 2];

let result = mccga(f, &mins, &maxs, 0.001, 100000);

以最小化目标函数,其中result是一个2元素向量。可以使用以下方法测试结果

assert!(isequal(&result[0], 3.14159265, 0.001));
assert!(isequal(&result[1], 2.71828, 0.001)); 

其他实现

依赖关系

~320KB