Jmetal设置Solution Variables

觉得有用的话,欢迎一起讨论相互学习~Follow Me

首先每个solution都必须使用Problemset初始化

ProblemSet problemset = CIHS.getT1();
Solution sol1 = new Solution(problemset);

不能直接初始化Variable和Real对象,没有size

//        Variable var1=new Variable();
// Variable real1=new Real();

使用Xreal对象直接改变Solution决策变量

//方1,通过XReal对象,改变单个位点
XReal x1 = new XReal(sol1);
//将sol1的变量全部设置为1
for (int i = 0; i < x1.size(); i++) {
x1.setValue(i, 1);
}

使用Variables对象改变对象的决策变量

sol2.setDecisionVariables(var_sol1);

Code

ProblemSet problemset = CIHS.getT1();
Solution sol1 = new Solution(problemset);
Solution sol2 = new Solution(problemset);
// Solution只能使用problem初始化,而直接创建Variable和Real的方式都是行不通的,会认为没有size来初始化XReal
// Variable var1=new Variable();
// Variable real1=new Real(); //方1,通过XReal对象,改变单个位点
XReal x1 = new XReal(sol1);
//将sol1的变量全部设置为1
for (int i = 0; i < x1.size(); i++) {
x1.setValue(i, 1);
}
//重新获取sol1的变量验证是否全部设置为1
Variable[] var_sol1 = sol1.getDecisionVariables();
//这表示通过Xreal 类型的x1变量是可以改变solution类型的决策变量的
for (int i = 0; i < var_sol1.length; i++) {
System.out.print(var_sol1[i] + " ");
}
//[1.0,1.0...1.0] //方2, 通过一个解决方案的决策变量改变另外一个决策方案的决策变量即Variable变量
sol2.setDecisionVariables(var_sol1);
//验证
Variable[] var_sol2 = sol2.getDecisionVariables();
for (int i = 0; i < var_sol2.length; i++) {
System.out.print(var_sol2[i] + " ");
}
//[1.0,1.0...1.0]

Jmetal设置Solution Variables的更多相关文章

  1. 【Visual Studio】设置Solution Explorer同步当前文档

    从Solution Explorer打开查看多个文档,在编辑文档时经常会搞不清楚当前文档在项目中的位置,希望Solution Explorer能够同步跳转到选中当前的文档的位置. 从Debug或Too ...

  2. idea的环境变量设置(Enviroment variables)

  3. mysql配置命令 CHARACTER_SET_%字符集设置

    参照: http://blog.csdn.net/mzlqh/article/details/7621307点击打开链接 其实现在的ubuntu12. 直接sudo apt-get install M ...

  4. 关于MYSQL数据库安装方式及相关设置简要说明

    网上关于MYSQL的教程非常多,但都不是最新的,我这里只是针对最新版本的MY SQL 的安装与设置进行一个简要的说明,大部份操作都相同. 以下是按照WINDOWS 64位操作系统+MY SQL 5.6 ...

  5. mysql设置编码

    1.修改数据库的编码   将数据库(test)的编码方式修改为utf8,如:   ALTER DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE ut ...

  6. mysql 字符集设置查看

    1.列出MYSQL支持的所有字符集: SHOW CHARACTER SET; 2.当前MYSQL服务器字符集设置 SHOW VARIABLES LIKE 'character_set_%'; 3.当前 ...

  7. Mysql 查看连接数,状态 最大并发数 && 怎么设置才合理

    show status like '%max_connections%'; ##mysql最大连接数 set global max_connections=1000 ##重新设置 show varia ...

  8. mysql 时区设置

    ##查看当前时间 select curtime(); ##查看当前时区设置 show variables like "%time_zone%"; ##修改mysql全局时区为北京时 ...

  9. Mysql设置auto_increment_increment和auto_increment_offset

    查看与设置: show variables like '%auto_inc%'; show session variables like '%auto_inc%'; -- //session会话变量 ...

随机推荐

  1. P1850 换教室[dp+期望]

    流下了不会概率的眼泪,由于不会概率,转移少写了点东西... 这个dp很简单,就是一个普通的线性dp加点期望.(刚开始写这道题时信笔写下) \(dp[0/1][i][j]\)表示到第\(i\)个时间段时 ...

  2. G6 知识点

    Viser 一个基于 G2 实现的,为数据可视化工程师量身定制的工具. Viser-Graph 一个基于 G6 实现的,为呈现关系型数据的定制化工具. Mode 是 G6 提供的图上事件的管理机制. ...

  3. windows命令查看端口占用情况

    打开cmd 查看端口占用情况:netstat -aon 查看PID对应的进程:tasklist /FI "PID eq 16948"

  4. the_permalink()和get_permalink()的区别

    wordpress中the_permalink()是用于posts loop循环中(判断是否有文章,如果有文章则展示出来:如果没有文章就显示没有文章),常用于文章分类列表和文章页的模板中,用法如下 & ...

  5. Q-learning和Sarsa的区别

    Q-learning是off-policy,而Sarsa是on-policy学习. Q-learning在更新Q table时,它只会需要Q值最大,但是不一定会选择使这个Q值最大的动作,因为选择哪个动 ...

  6. Go语言 - 包(package)

    在工程化的Go语言开发项目中,Go语言的源码复用是建立在包(package)基础之上的.本文介绍了Go语言中如何定义包.如何导出包的内容及如何导入其他包. Go语言的包(package) 包介绍 包( ...

  7. [译] 2017 年比较 Angular、React、Vue 三剑客

    原文地址:Angular vs. React vs. Vue: A 2017 comparison 原文作者:Jens Neuhaus 译文出自:掘金翻译计划 本文永久链接:github.com/xi ...

  8. accept返回的socket的端口号和连接socket一样的!!! socket绑定信息结构

    今天与同学争执一个话题:由于socket的accept函数在有客户端连接的时候产生了新的socket用于服务该客户端,那么,这个新的socket到底有没有占用一个新的端口? 讨论完后,才发现,自己虽然 ...

  9. 对MVVM的理解

    MVVM是Model-view-ViewMoudel的缩写 Model代表数据类型,也可以在Model中定义数据修改和操作的业务逻辑: View代表UI组件,负责将数据模型转化为UI展现出来: Vie ...

  10. docker 清理无用的卷

    docker  system prune 对于卷的清理不够彻底 题外话:docker volume ls查看当前卷列表 使用如下命令可以清理不用的卷 docker volume prune -f 强制 ...