lingo学习1

今天主要复习了Lingo程序的用法,熟悉了常见错误。

目录

  1. Lingo解方程注意事项

  2. lingo线性规划注意事项

  3. lingo语句解析

01 lingo解方程

一 解方程过程

  1. 将方程按照题中输入电脑,点击红心。

二 解方程注意事项

  1. lingo读取方程是不按照顺序的,也就是说解方程过程当中方程之间不能有逻辑上的因果关系。

  2. 通常解方程使用matlab软件,lingo解代入运算的方程时可以令带入运算的方程式为y,变成一个规划。

  3. lingo每一个语句都要以英文的分号结尾。尤其注意在lingo注释过程中,很容易忽略将输入法转换成英文,此时lingo自动寻找下一个分号,将中间的语句全部变成注释。

  4. 注意乘号,2x应当写成2*x。

  5. lingo中变量命名不区分大小写且只能以字母开头。

02 lingo解一般规划

一 规划前注意事项

  1. lingo不能够解双目标规划,如果涉及到双目标规划,应当采用做差法,增减性法等将其转换为单目标问题再求解。

  2. lingo不适应较为复杂的非线性规划化问题,通常有较长的运算时间,以及难以的达到的全局最优解。

  3. 如果没有赋给变量初值,lingo会默认赋值为1.2345678.注意赋值不能赋表达式。

  4. lingo中没有在逻辑上的严格大于,小于。通常如果要达到严格大于小于的效果可以根据精度要求,取一很小的值e,使A-e>B。

二规划过程

  1. 将max,min直接与目标函数相等。

  2. 由给出的约束矩阵,确定要设立的集合以及集合元素个数。

  3. 使用data语句赋值。

  4. 将约束条件翻译为lingo语言。

举例如下:

03 lingo一般语句的使用

  1. set语句

set语句用于定义一个集合,其基本格式为

sets:

集合名称/集合元素/:赋有该集合内容的元素;

endsets

其中,定义单集合举例:

定义多集合举例:

set语句需要注意1.在列举集合元素时使用的是两点作为省略。2.列举集合元素后需要用冒号隔开3.容易漏掉sets后的冒号。

  1. data语句

简单赋值即可

  1. for语句

for语句对应规划约束中的i=1.2.....6诸如此类。并且for语句一定是要把内部全部嵌套。

其内部含义为:

对集合内每个元素,做i次循环

格式为:

@for(循环多少次,通常是set定义属性:每个量所做内容)

举例:

  1. sum语句

sum语句意为对集合内容进行求和

语句格式为:

@sum(循环多少次,通常是set定义属性:每个量所做内容)

sum语句对应求和,一定有一个类似小于的条件在sum外部,举例如下:

在sum与for兼而有之的情况下,通常for语句在外。

一个完整规划举例如下:

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值