运筹学上机实验 MATLAB

发布 2022-09-15 11:51:28 阅读 1010

运筹学上机实验。

实验一线性规划求解软件包应用与单纯形法编程实践。

实验二整数规划模型及软件包求解。

实验三非线性规划问题的求解方法。

实验四 cplex数值计算软件包使用入门。

运筹学上机实验指导。

的启动。在matlab r2014a安装目录内的bin文件夹下,双击图标,启动matlab r2014a,出现启动界面,启动后,弹出matlab r2014a的用户界面,如图1-1。

图1-1启动matlab r2014a并在命令编辑区显示帮助信息后,将显示提示符“>>表示matlab已经准备就绪,正在等待用户输入命令。这时,就可以在提示符“>>后面输入命令,完成命令的输入后直接回车,然后matlab就会解释所输入的命令,并在命令行窗口中给出计算结果。如果在输入的命令后以分号结束,再回车,matlab也会解释执行命令,但是计算结果将不显示与命令行窗口。

的工作环境。

matlab开发环境包括matlab主窗口、命令行窗口(command window)、工作区窗口(workspace)、命令历史记录窗口(command history)和当前文件夹窗口(current folder)。

主页标签提供的主要功能。

新建:用于建立新的。m文件、图形、模型和图形用户界面。

新建脚本:用于建立新的。m脚本文件。

打开:用于打开matlab的。m文件、.fig文件、.mat文件、.mdl文件、.cdr文件等。

matlab命令行窗口中常用的命令及功能。

命令历史记录窗口。

用户在命令行窗口中运行的所有命令,都被默认保留在命令历史记录窗口中,并且标明了指令运行的日期和时间。执行所需的**,命令历史记录窗口如图1-2所示。用户可以对已执行**进行操作,选择某条语句单击右键,在菜单项中选择需要的操作,如剪切、复制、粘贴和删除等操作。

如果选择“执行所选内容”选项,即可重新运行语句中语句,也可以通过双击一条历史语句重新执行该语句。

图1-2工作区窗口。

用户可以选中已有变量,单击鼠标右键对其进行各种操作。此外,工作界面的菜单/工具栏上也有相应的命令供用户使用。

新建变量:工作区添加新的变量。

导入数据:向工作区导入数据文件。

保存工作区:保存工作去中的变量。

清除工作区:删除工作区中的变量。

图1-3当前文件夹窗口。

当前文件夹是指matlab运行时工作目录文件夹,只有在目前目录或搜索路径下的文件,函数才可以运行或调用。如果没有特殊指明,数据文件也将存放在当前文件夹下。为了便于管理文件和数据,用户可以将自己的工作目录设置成当前目录文件,使得用户的操作都在当前文件夹中进行。

当前文件夹窗口也称为路径浏览器,可以内嵌在matlab主窗口中,也可以浮动在主窗口中。在当前文件夹窗口中可以显示或改变当前文件夹,还可以显示当前文件夹的搜索功能。通过文件夹下拉列表框可以选择曾经访问过的文件。

图1-4搜索路径及设置。

matlab提供了专门的路径搜索器搜索存储在内存中的m文件和其他相关文件,matlab自带的文件所存放的路径都被默认包含在搜索路径中,在matlab自带的文件所存放的路径都被默认包含在搜索路径中,在matlab安装目录的toolbox文件夹中包含了所有此类目录和文件。

当用户在matlab提示符后输入字符串如polyfit后,matlab进行的路径搜索步骤如下。

检查polyfit是不是matlab工作区内的变量名,如果不是,则执行下一步。

检查polyfit是不是一个内置函数,如果不是,则执行下一步。

检查当前文件夹下是否存在名为的文件,如果没有,则执行下一步。

按顺序检查在所有matlab搜索路径中是否存在文件。

如果仍然没有找到polyfit,matlab就会给出一条错误消息。

一般情况下,matlab系统的函数(包括工具箱函数)都是在系统默认的搜索路径之中,但是用户设计的函数有可能没有被保存到搜索路径下,因此很多情况容易造成matlab误认为该函数不存在。这时,只要把程序所在的目录扩展成matlab的搜索路径即可。

用户单击用户界面中的“设置路径”菜单,即可弹出路径设置对话框。如图1-5。

图1-5 添加文件夹:表示添加新的路径;

添加并包含子文件夹:表示在搜索路径上添加子目录;

默认:表示恢复到原始的matlab默认路径;

还原:表示恢复到上次改变搜索路径前的设置。

m文件编辑。

有时候在matlab的命令行窗口中编辑程序不太方便,因为每按下一次回车键,系统就会立刻执行输入命令,而用户习惯写完一段程序后再执行。

matlab的命令文件和函数文件都是以。m为扩展名的,称之为m文件。打开m文件编辑/调试指令窗口的方法有两种。

在命令行窗口窗口中输入edit命令。

在“主页”模块下选择“新建脚本”命令。

如图1-6.

图1-6在图1-6中的窗口中可以编辑并保存所编写的程序。需要运行并**程序时,有3中方法。

当要执行编写完的程序时,可以把编辑好的程序粘贴到命令行窗口中去执行,也可以直接单机窗口中的“运行并前进”选项。

当要执行没有编写完的部分程序时,可以把要执行的部分程序粘贴到命令行窗口中去执行,也可以在该窗口中选择要执行的部分命令,然后直接单击窗口中的“运行节”选项。

在该窗口中选择需要运行的程序,单击鼠标左键选择“运行当前节”选项。

1. 数据类型。

matlab的数据类型可以从几个层次理解。

基本数值类型有整型和浮点型,其中整型有若干种细分的类型,如unit8、int16,表示不同的字节数和符号;浮点型则分为double型和single型,表示双精度浮点数与单精度浮点数。此外,还有字符型、逻辑型、函数句柄、j**a对象等类型。

与数组相关的类型有结构体和细胞数组,这两种类型可以将其他不同类型的数据结合在一起。

用户可以在命令行窗口中输入help datatypes查看matlab包含的数据类型。

基本数值类型。

整型从字节数、有符号还是无符号两个方面可以分成int8、uint8、int16、uint16、int32、uint32、int64和uint64等细分的类型。首字母为u表示无符号,末尾的数字表示所占的比特数。因此matlab能提供1~4字节宽度的有符号或无符号整数。

如int8表示一个字节长度的有符号整数;uint8表示一个字节的无符号整数,常在图像处理中表示一个像素的颜色或亮度值。整型数之间的运算时封闭的,整型数相除,结果四舍五入为新的整型数。不同细分类型的整型数之间不能直接运算。

如图2-1.

图2-1整数只能与相同类的整数或标量双精度值组合使用。

浮点数包括单精度浮点数(single)和双精度浮点数(double)。realmax(‘double’)和realmax(‘single’)分别返回两者能表示的最大值。

class函数返回输入参数的数据类型,可以看出,没有预先申明的变量类型默认为double型。

其他数据类型。

字符在matlab中用一对单引号分割,字符串存储为字符数组。如s=‘matlab mathwork’,s即为1行14列的字符向量。多个字符串可以形成矩阵,但每个字符串长度必须相等,在命令行窗口输入a=[‘matlab’;‘j**a’],由于第一行与第二行长度不相等,故系统将会出错。

解决办法为人为地加入空格,使矩阵的各行对齐,即a=[‘matlab’;‘j**a ’]也可以使用char函数:a=char(‘matlab’;‘j**a’)。

表2-2 字符串常用函数。

逻辑型(logical)变量只能取true(1)或false(0),在访问矩阵元素时可以使用逻辑型变量取出符合某种条件的元素。

变量。变量,即为一个值(数值、字符串、数值)指定的名称。当一个值存在于内存时,不可能直接从内存中访问该值,只能通过其名称访问其值。

变量是要变化的,在程序运行中它的值可能会改变。

matlab不需要事先声明变量,也不需要任何语句声明数组。当matlab遇到一个新变量名时,自动建立变量并分配适当的存储空间。

变量命名。matlab变量命名规则如下:

变量名的第一个字符必须是英文字母,其后可以是任意字母、数字或下划线。

变量名区分字母大小写,如a与a分别代表两个不同的变量。

变量名最多不超过63个字符,第63个字符以后的字符被matlab忽略。

标点符号在matlab中具有特殊的含义,所以变量名中不允许使用标点符号。

函数名必须用小写字母。

在matlab编程中使用的字符变量和字符串变量的值须用引号括起来,如“三角函数”。

表2-3 matlab保留变量表。

运筹学上机实验

实验一。用lindo软件实现简单线性规划模型的计算机求解。一。实验目的 了解lindo软件的基本功能和简单线性规划模型的求解的输入和输出结果。二。实验内容 1.建立第二章补充习题的数学模型并用lindo求解。2.建立教材p57习题2.9的数学模型并用lindo求解。三。实验要求 1.给出所求解问题的...

运筹学上机实验报告

实验题目一 线性规划建模。一 实验目的。1 了解线性规划问题在excel中如何建立,主要是数据单元格 输出单元格 可变单元格和目标单元格定义以及规划求解宏定义应用设置。2 熟练掌握excel规划求解宏定义模块使用。3 掌握lindo软件 性规划求解中的应用。二 实验内容。某医院院周会上正在研究制定一...

运筹学上机实验报告

学生实验报告。实验课程名称运筹学。开课实验室计算机中心第二机房 学院专业 学生姓名学号。开课时间 2015 至 2016 学年第二学期。实验一中小型线性规划模型的求解与lingo软件的初步使用。一 实验目的。了解lingo软件的基本功能和简单线性规划模型的求解的输入和输出结果。二 实验内容。1.在l...