文章目录

  • lingo软件
  • lingo运行与参数设置
  • lingo书写规范
  • lingo运算符号
  • lingo线性规划基础
  • lingo线性规划示例

lingo软件

推荐有数学建模比赛编程需求的同学安装lingo11版本,而不是lingo12版本。lingo12对非线性规划问题(0-1规划、整数规划等等)的支持并不良好,很难求得可行解,而lingo11求解的能力相对lingo12更强,大部分非线性规划问题都可以求得全局最优解或者局部最优解,但也存在无法求得可行解的情况。(可能是lingo自身求解非线性问题的优化算法不同,作者也不是很了解)

lingo运行与参数设置

运行按钮为窗口栏下的那个“红色的靶心”按钮。

参数设置–窗口栏选择LINGO–选择options–调整参数

例如,可以选择Global Slover设置全局最优解。

lingo书写规范

1.注释的书写,以!开头,以;结尾

!我是注释;

2.变量约束以及命名原则

lingo默认所有参数为大于等于0的数字,因而非负约束不需要书写。(@free函数可定义一个变量的定义域为R)

lingo变量不区分大小写,不能与关键字同名,变量由数字下划线英文字母组成,但变量必须以英文字母开头。(建议lingo编程时将变量都写成小写的)

Mm、mm、MM、mM都表示同一个变量

x、xx、x_1、max_x是合法的命名方式

1x、_x、max-x、max是非法的命名方式

3.矩阵元素的表示(后面会详细讲述)

一维数组的表示法:x(i)

二维矩阵的表示法:x(i,j)

注:在lingo编程时不可以把2*x简写为2x,lingo软件无法识别

lingo运算符号

符号 数学表示
+
-
*
/
取余 %
幂级 ^

lingo线性规划基础

1.一个线性规划只有一个目标函数(两个及以上的目标函数是多目标规划,lingo无法直接求解,在编写程序时应把多目标函数转换为单目标函数。

2.求目标函数的最大值或最小值分别用max=...min=...来表示。

3.线性规划和非线性规划的本质是目标函数和约束条件是否线性,所以非线性和线性规划的模型编程基本一致,只是非线性规划在模型中存在非线性约束或者非线性的目标函数

0-1规划、整数规划是非线性问题

目标函数是非线性的属于非线性问题

lingo线性规划示例

max=200×x1+300×x2;x1≤100;x2≤120;x1+2×x2≤160;max = 200 \times x_1 + 300 \times x_2; x_1 \leq 100; x_2 \leq 120; x_1 + 2 \times x_2 \leq 160; max=200×x1​+300×x2​;x1​≤100;x2​≤120;x1​+2×x2​≤160;

max = 200*x1 + 300*x2;
x1 <= 100;
x2 <= 120;
x1 + 2*x2 <= 160;

lingo学习笔记(1)lingo基础篇相关推荐

  1. 菜鸟学习笔记:Java基础篇7(包装类、时间相关类、文件类、异常处理类)

    菜鸟学习笔记:Java其他常用类 基本数据类型包装类 时间处理和文件处理相关类 Date时间类 SimpleDateFormat Calendar日历类 文件类 异常机制 异常的概念 Java异常处理 ...

  2. 菜鸟学习笔记:Java基础篇6(数组、字符串)

    菜鸟学习笔记:Java常用类(数组.字符串) 数组 概述 数组的定义 二维数组 数组查找和排序 查找 排序 数组运用--字符串 不可变字符序列(String) 可变字符序列(StringBuilder ...

  3. 菜鸟学习笔记:Java基础篇5(抽象类与接口、回调函数、内部类)

    菜鸟学习笔记:Java面向对象篇下 抽象类 接口 回调函数 内部类 成员内部类 匿名内部类 抽象类 通过前面知识的学习,抽象类这个概念应该不难理解,但比较容易和后面要说的接口混淆,而且在面试中也比较爱 ...

  4. 菜鸟学习笔记:Java基础篇4(面向对象三大特征)

    菜鸟学习笔记:Java面向对象篇中 继承 概念 方法重写(override) Object类 Super关键字 组合 final关键字补充 封装 访问控制符 多态 继承 概念 继续上一篇的例子: #m ...

  5. 菜鸟学习笔记:Java基础篇3(面向对象思想、程序执行过程内存分析、面向对象重要概念)

    菜鸟学习笔记:Java面向对象篇上 Java面向对象的思想 Java程序执行过程内存分析 Java垃圾回收机制 构造方法 方法重载(overload) static关键字 this关键字 Java面向 ...

  6. 菜鸟学习笔记:Java基础篇2(变量、运算符、流程控制语句、方法)

    菜鸟学习笔记:Java基础篇2 变量 基本概念 变量作用域 final关键字 运算符 算术运算符 比较运算符 逻辑运算符 位运算符 赋值运算符 条件运算符 运算符优先级 Java三种流程控制语句 顺序 ...

  7. MySQL学习笔记-恶补基础篇

    目录 概述 1.初识数据库 1.1.DataBase 1.2.数据库分类 1.3.DBMS(数据库管理系统) 1.4.命令行操作数据库 2.操作数据库 2.1.操作数据库 2.2.数据库列类型 2.3 ...

  8. 【网络安全态势感知学习笔记】——“行远自迩”基础篇一:网络安全态势感知的基本概念

    文章目录 1. 网络安全态势感知的基本概念 1.1 态势感知的基本概念 1.2 网络安全态势感知 1.2.1 网络安全态势感知的定义 1.2.2 网络安全态势感知的阶段 1.2.3 网络安全态势感知的 ...

  9. EPLAN学习笔记整理:基础篇(二)

    1. 元器件命名规则 设置-项目-设备-编号(在线) 点击编号格式,可以根据自己的项目要求,进行设备编号.默认 标示字母+计数器 点击配置,可以选择其他系统配置好的格式.也可以点击后面的小太阳图标,新 ...

最新文章

  1. R语言difftime函数计算时间差值实战
  2. CentOS6 修改主机名的规范步骤
  3. 将获取到的JSONObject和JSONArray转换为实体对象
  4. Java程序员从笨鸟到菜鸟之(一)开发环境搭建,基本语法,字符串,数组
  5. Java ClassLoader setClassAssertionStatus()方法与示例
  6. 数据结构与算法——图解平衡二叉树及代码实现
  7. Android TTS 中文 文字转语音 使用TextToSpeech Svox .
  8. [洛谷 1883]函数 三分法
  9. laravel 中request
  10. java网站短信接口_网云JAVA短信接口API
  11. SAP GR/IR在系统AP中收货和校验对会计业务的影响(详细)
  12. 计算机上可以插键盘吗,电脑外接键盘好用吗 哪些键盘可以外接电脑使用
  13. 使用nvim来代替VSCode,神操作
  14. Word删除单独页页眉与分节处理
  15. 物联网应用隐私保护技术
  16. 揭示模式(Revealing Module)
  17. dlang,不必要串插件的类型提升.
  18. 【项目实践】海康威视工业相机SDK开发小白版入门教程(VS2015+OpenCV4.5.1)
  19. 工作经验应该这么写,有模板哦!
  20. C++先序和中序确定二叉树

热门文章

  1. (附源码)springboot 校园二手销售网站 毕业设计 161417
  2. Easyui简介、使用介绍 即项目演
  3. 智慧社区数字孪生IOC系统
  4. 强化学习-贝尔曼方程的推导
  5. 用MS Windows 字体美化 Ubuntu(6.06)
  6. 联想计算机电源风扇怎样清理,联想电脑清理灰尘教程 掌握这几个拆卸要点
  7. 智能电能表故障预警系统设计
  8. SpringMVC从入门到精通一文帮你学会
  9. 带你轻松玩转C语言函数
  10. 三菱FX5U,机床X轴Y轴工作台定位控制程序 全部使用两轴直线插补 有自动定位,手动定位!手动控制有,点动一次按钮每次走设置的距离