| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> lingo -> 正文阅读 |
|
[人工智能]lingo |
lingo是专门求解优化的软件,有目标函数,有约束条件 ,可以解决线性优化问题,非线性优化问题,线性方程组,非线性方程组对于换行可以直接敲回车;? 开头用!,结尾用分号 用于注释,可用于多行注释 lingo不区分大小写 lingo crtl+滚轮 调整代码的字体 lingo中的乘号不能省略 在lingo中加空格不影响 lingo中每一句要用分号结尾 小规模问题:不使用集合语言(变量小于20个等) 大规模问题:使用集合语言 max,min用于定义目标函数 @bin(x) 表示x为0或1 @gin(x)表示x为整数 @free(x)表示x为任意实数 @bnd(L,x,U)表示x为[L,U]之间的实数 lingo中默认变量都是非负数
对于大规模问题要用集合
?求解非线性问题就要设置
求解方程组
目标函数是0就是没有的意思
求解: 点击靶子求解,或者ctrl+U求解,点solver
?只能找到一个解,可以加条件进行变换解的范围;
目标函数的Z不要输入; lingo中没有严格大于或严格小于,只有>=,=,=<三种,输入>相当于输入>=,它会自己改; 要属于严格小于,可以减去一个非常非常小的数 不使用集合语言容易检查
?条件的顺序没有任何的关系(顺序随便)
?x只能取-1和1
大规模问题多个约束条件用for,多个求和使用sum s/1..2/:c,x;? 定义一个S集合,c,x变量依赖于s这个集合 ? ??@sum()---------表示求和符号? ? ? ? ? ? ? ? ? ? ? ?S(j)-----------表示j在S里面取值,? ? S={1,2} ?? :-------表示对于什么求和 @????????sum(????????s(j):????????c(j)*x(j)????????)
model:开始? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? end结束? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?可有可无? c=1 2 3;中间用,? 空格? 或回车都可以 段 -------------------? 冒号开始? ?结束不用符号 lingo程序主要分为:1.集合段? ?2.数据段? ?3.模型段? ?4.其他:初始化段,计算段,子模型段 注:
title:标题;? @text(data.txt)=@table(x); ? !把x作为表格输出出来,输出到文本文件里,空的就输出到屏幕上;
link(i,j)表示对集合里的所有下标求和可以省略掉 变成?link? 逻辑运算
?对指标进行限制 @sum(? s(i)???????? | ????????i #ge#5 :????????x(i)? )? ? !不能使用>这些符号 一些函数 @abs(x)? ? ?@sin(x)? ? @exp(x)? ?@log(x)? ? @lgm(x)? @floor(x) ? @cos(x)? ? @tan(x)? ? @sing(x)? ?@mod(x,y)? ?@smax(x1,x2,x3...xn) @smin(x1,x2,x3...xn)
集合函数
利用最小二乘法,将上述的非线性方程转换为非线性规划问题: min? ? ? (x^2+y^2-1)^2+(arctan-y)^2 ; lingo放到TXT中~? ?txt文本中表示结束
??c=@file('新建文本文档.txt'); ? d=@file('新建文本文档.txt');!读完c的数据接着读下面的数据给d ? d=1 2 3; 将解的结果放到记事本里 @text('result.txt')=@write('the result is :',@newline(1))? !结果是:换一行开始; @text('result.txt')=@write(? link(i,j) |? x(i,j)#gt#0:? ? ?' x('???,?i,???','? ,j,??')=1'??,@newline(1)????); @text('result.txt')=@table(x); 随机数
对于这个随机种子哔哩哔哩有个up主讲的很好 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 22:23:22- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |