600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 数学建模:lingo软件学习心得

数学建模:lingo软件学习心得

时间:2019-11-13 03:18:38

相关推荐

数学建模:lingo软件学习心得

(以lingo11为例,记录自己学习lingo软件的一些我感到较难理解语句,可能有理解不对的地方)

一、

首先以最简单的lingo程序为例

只要把上面的大括号去掉,然后输入界面即可

(先不管最后一项约束条件),运行程序即可求得答案。

但实际问题的决策变量,与约束条件可能有成百上千个,因此,我们需要找到一个更简便的方式来实现程序的编写。

二、

1.

比如遇到这个式子,我们肯定不能挨个写吧

于是我们可以这样定义,product是集合名(可以任取),1..100是定义的元素个数,此条语句可以类比,C语言中的int x[100],int c[100],还要注意起始句和结束句是固定格式。这样定义虽然比c语言困难,但赋予了变量实际意义(本例代表产品),防止在大型程序中忘了字母是什么含义。

2.

然后还可以定义二维数组(见a)

这样相当于a定义了6个元素(Ajia,Ayi,Bjia,Byi,Cjia,Cyi)(这个定义字母有重复,因为lingo 不区分大小写,推荐把a和b换一个没出现过的字母)

3.比较特殊的函数

(1)以最上面的那个没数字的例题为例,假设求max = c1*x1+c2*x2

max = c1*x1+c2*x2核心如下:

求和@sum肯定要有,product(j)代表了j在定义x的两个变量jiayi中遍历,就是两次.

(2)求约束条件:

由于没有lingo里没有for函数,故用@for,

对于这个式子

此处相当于有

a11x1 +a12x2= b1

a21x1+a22x2 = b2

相当于for(i=1;i<3;i++)

然后

相当于行内各个数相加

然后总的就是

即可。

仅记录自己学习过程中的一些心得

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。