武汉理工大学《基础强化训练》课程设计说明书1学号:0120911360214自动化基础强化训练题目自动化基础强化训练学院自动化学院专业自动化专业班级0902班姓名何润指导教师李浩2011年8月28日武汉理工大学《基础强化训练》课程设计说明书22课程设计任务书学生姓名:何润专业班级:自动化0902班指导教师:李浩工作单位:自动化学院题目:matlab在非线性规划的应用初始条件:(1)Matlab6.5以上版本软件;(2)课程设计辅导资料:“Matlab语言基础及使用入门”、“Matlab教程”、“Matlab宝典”、“Matlab及在电子信息课程中的应用”、MATLAB及其在理工课程中的应用指南等;(3)先修课程:电路基础、模拟电路、数字电路、Matlab应用实践及信号处理类课程等。要求完成的主要任务:(1)熟悉Matlab的相关界面以及操作,掌握MATLAB的数值计算、符号运算、基本绘图等功能,使用文本编辑器编辑m文件,并且运行,熟悉Simulink仿真环境;(2)对阻抗匹配网络进行原理分析、经过必要的推导建立数学模型,并求解得出正确的计算结果;(3)编写程序代码(含注释);(4)上机调试运行程序,给出程序运行结果和图表、以及实验结果分析和总结;(5)采用WORD撰写课程设计说明书,说明书中涉及的表格、电路图、图形等采用Word、Visol、Autocad、Matlab、Simulink等软件绘制。说明书不少于8页(A4),课程设计的心得体会(至少500字)。时间安排:具体时间设计内容8月25日指导老师就课程设计内容、设计要求、进度安排、评分标准等做具体介绍。学生确定选题,明确设计要求8月26日开始查阅资料,完成系统的分析、建模、求解,上机熟悉MATLAB相关界面与基本操作。8月27日采用MATLAB语言编程,上机调试,得出实验结果8月28日撰写课程设计说明书8月29日上交课程设计说明书,并进行答辩指导教师签名:年月日系主任(或责任教师)签名:年月日武汉理工大学《基础强化训练》课程设计说明书1目录MATLAB简介..........................................................................................................21MATLAB在非线性规划的应用........................................错误!未定义书签。1.1非线性规划应用的分析:....................................错误!未定义书签。1.1.1使用临时料场的情形:......................................................................................31.1.2建立模型:.....................................................................................................41.1.3应用MATLAB对上面的题目编程:..................................错误!未定义书签。1.1.4应用matlab编程计算结果截图:.................................错误!未定义书签。1.2.1改建两个新料场的情形:...............................................................................71.2.2建立模型:........................................................................................................71.2.3应用matlab对题目编程.................................................................................81.2.4对应用matlab计算结果截图.........................................................................102对比结果分析............................................................................................113.心得与理会.....................................................................................................11参考文献.............................................................................................................12附成绩评定表......................................................................................................13武汉理工大学《基础强化训练》课程设计说明书2MATLAB简介MATLAB是由美国MathWorks公司推出的用于数值计算和图形处理计算系统环境,除了具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能.MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言简捷得多.MATLAB是国际公认的优秀数学应用软件之一.概括地讲,整个MATLAB系统由两部分组成,即MATLAB内核及辅助工具箱,两者的调用构成了MATLAB的强大功能.MATLAB语言以数组为基本数据单位,包括控制流语句,函数,数据结构,输入输出及面向对象等特点的高级语言,它具有以下主要特点:1)运算符和库函数极其丰富,语言简洁,编程效率高,MATLAB除了提供和C语言一样的运算符号外,还提供广泛的矩阵和向量运算符.利用其运算符号和库函数可使其程序相当简短,两三行语句就可实现几十行甚至几百行C或FORTRAN的程序功能.2)既具有结构化的控制语句(如for循环,while循环,break语句,if语句和switch语句),又有面向对象的编程特性.3)图形功能强大它既包括对二维和三维数据可视化,图像处理,动画制作等高层次的绘图命令,也包括可以修改图形及编制完整图形界面的,低层次的绘图命令.4)功能强大的工具箱工具箱可分为两类:功能性工具箱和学科性工具箱.功能性工具箱主要用来扩充其符号计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互的功能.而学科性工具箱是专业性比较强的,如优化工具箱,统计工具箱,控制工具箱,小波工具箱,图象处理工具箱,通信工具箱等.武汉理工大学《基础强化训练》课程设计说明书31非线性规划的应用(供应与选址问题)有6个建筑基地要开工,每个工地的位置(用平面坐标系a,b表示,距离单位:km)及水泥日用量d(单位:t)由下表给出。目前有两个临时料理场位于A(5,1),B(2,7),日储量各有20t。假设从料理场到工地之间均有直线道路相连。(1)试制定每天的供应计划,即从A,B两料理场分别运送多少吨水泥,使总的吨千米数最小。(2)为了进一步减少吨千米数,打算舍弃这两个临时料场,改建两个新的,日储备量各为20吨,应建在何处,节省的吨千米数为多大?表1工地位置(a,b)及水泥日用量d123456a1.258.750.55.7537.25b1.250.754.7556.57.75c35476111.1非线性规划应用的分析对于这类供应与选址问题,我们首先要了解方案所要求的条件,即A,B两个向各工地运送水泥的总吨千米数最小(送运送水泥的吨数乘以距离之和),这样我们可以建立模型,确定目标函数,得出约束条件,然后通过matlab软件编程计算可以得出结果1.1.1使用临时料场的情形1.1.2建立模型记工地的位置为(ai,bi),水泥日用量为di,i=1.,···,6;料理场的位置为(xj,yj),日储量为ej,j=1,2;从料场j向工地i的运送量为Xij。武汉理工大学《基础强化训练》课程设计说明书4目标函数为:·,2,1,)()(min21216122jiijjiiiijijidXbyaxXf约束条件为:2,1,61jeXjiij当用临时料场时决策变量为Xij,当不使用临时料场时决策变量为Xij,xj,yj。使用两个临时料场A(5,1),B(2,7)。求从料场j向工地i的运送量Xij,在各工地用量必须满足不超过日用储备量的条件下,使总得吨千米数最小。这是线性规划问题。线性规划模型为:21616,5,4,3,2,1,2,1,2161.),(minjiijijijidXjeXjiijtsXjiaaf12621152104293282271266155144133122111122,,,,,,,,,,.2,1;6,5,4,3,2,1,)()(),(XXXXXXXXXXXXXXXXXXXXXXXXjibyaxjiaaijij设其中1.1.3编写程序gying1.m如下:武汉理工大学《基础强化训练》课程设计说明书5cleara=[1.258.750.55.7537.25];b=[1.250.754.7556.57.75];d=[3547611];x=[52];y=[17];e=[2020];fori=1:6forj=1:2aa(i,j)=sqrt((x(j)-a(i))^2+(y(j)-b(i))^2);endendCC=[aa(:,1);aa(:,2)]';A=[111111000000000000111111];B=[20;20];Aeq=[100000100000010000010000001000001000000100000100000010000010000001000001];武汉理工大学《基础强化训练》课程设计说明书6beq=[d(1),d(2),d(3),d(4),d(5),d(6)];VLB=[000000000000];VUB=[];x0=[123010010101];[x,fval]=linprog(CC,A,B,Aeq,beq,VLB,VUB,x0)1.1.4应用matlab编程计算结果截图图1源程序截图武汉理工大学《基础强化训练》课程设计说明书7图2计算结果截图即由料场A,B6个工地运料方案为:123456料场A350701料场B00406101.2.1改建两个新料场的情形1.2.2建立模型改建两个新料场要同时确定料场的位置(xj,yj)和运送量Xij,在同样的条件下使总吨千米数最小,这是非线性规划问题,其模型为:216122)()(minjiiiijijbyaxXf21616,5,4,3,2,1,2,1,.jiijijijidXjeXts武汉理工大学《基础强化训练》课程设计说明书8162152141131126211521042932822712661551441331221111,,,,,,,,,,,,,XyXxXyXxXXXXXXXXXXXXXXXXXXXXXXXX设1.2.3应用matlab程序编写先编写M文件liaoch.m定义目标函数:functionf=liaoch(x)a=[1.258.750.55.7537.25];b=[1.250.7