三峡大学数学建模第一题电力生产问题
数学建模 水电站生产计划论文 题目+答案

水电站生产计划摘 要本文在经济学和运筹学的基础上,通过优化求解模型和对时间序列分析的预测解决了水电站的生产计划问题。
我们对问题1、3、4建立最优化模型进行求解,根据时间序列分析法对问题2运用灰色预测模型及残差模型预测法进行求解。
问题一:在水库最大、最小蓄水量的约束下,以水库发电收益最大为目标,建立最优化模型利用LINGO 求解得出最大收益值为9.36710⨯元。
且水库A 、B 第三月发电量的计划分别为300万m ³、 400万m ³。
问题二:利用EXCEL 软件对题中所给的历史数据进行初步的定性分析,建立灰色预测模型及残差模型预测法对干流、支流3及支流1、2进行预测。
得出的干流预测结果如下(水流量单位:万m ³。
其他结果见模型的求解): 月份 1 2 3 4 5 6 干流流量 260.11 316.71 395.92 465.53 491.72 547.43 月份 7 8 9 10 11 12 干流流量 552.58 492.11 478.22 382.62 277.47 195.45问题三:考虑到当干流和支流1、支流2的总流量大于500万立方米时,水库A 、B 最大蓄水量都有所下降。
以水库发电收益最大为目标建立最优化模型得出最大收益为3.744810⨯元,具体发电计划见模型的求解。
问题四:本题在问题三的模型基础上引入24个0-1变量,为使收益达到最大,确定检修时间,使用lingo 软件建立最优化模型得出:水库A 、B 在1-4月份检修可达到最大收益,最大收益为3.624810⨯元。
问题五:此问重点考虑设备的运行维护费与购置费,要求确定设备最佳更新期限,建立0-1整数规划模型,从而得出发电站乙设备更换方案,该方案具有一定实效可行性,且模型求解方法多样,既可利用最新方法混沌搜索算法,也可用lingo 高效求解。
关键词:经济学 运筹学 时间序列预测法 灰色预测残差GM11模型最优规划求解一、问题的提出与重述见附录一,某地有两个水库A、B及对应的水电站甲、乙。
数学建模竞赛赛题 电源规划

停电损失费用(成本) CLt 。
电厂运行成本 COt 模型如下:
8760
COt
ai Pit2 bi Pit ci
1
式中, Pit 表示第 i 台机组在第 t 个规划年的第 个小时的输出功率;使用二次函数表示机
组运行成本与输出功率间的关系, ai 、 bi 和 ci 分别为该函数中的系数。
间基础上进行比较。
记一笔资金的当前等效金额(现值)为 P,未来第 t 年的等效金额(将来值)为 F,分 摊到每一年的等效支付金额(等年值)为 A。P、F 和 A 的关系如下:
F P (1 r)t
(1 r)t 1 F A
r
A
r(1 r)N (1 r)N 1
P
CRF P
其中,r 为贴现率,CRF 为资金回收系数。当 CRF 用于折算机组投资成本时,N 表示 机组使用寿命,P 表示机组投资成本现值;当 CRF 用于折算运行成本时,N 表示规划年限 T, P 表示 T 年内的运行总成本。
假设规划期为T 年, X t 表示规划年 t 增装的各类型机组,Y 表示现有系统中的机组。
则电源规划模型的目标函数为:
T
T
min f CIt (Xt ) CRF [COt (X1, X2,..., Xt ,Y ) CLt ( X1, X 2,..., Xt ,Y )]
t 1
t 1
式中,第一部分为机组的等年值投资成本 CIt ,第二部分为电厂运行成本 COt ,第三部分为
行规定功能的次数,常用 λ 表示。可以按单一元件或某类型元件、单位线路长度、同杆架设
线路,或同一走廊线路等分类计算其故障率。如:某电厂发电机故障率 2.5 次/年。
修复时间(repair time):对元件实施修复所用的实际矫正性维修时间,包括故障定位时
电力生产问题

电力生产问题摘要本文是解决发电机用电成本最小化问题。
不合理的安排发电机组,就可能导致成本过高,无法正常满足用户用电需求,为解决此问题,我们建立了两个最优化模型。
对于问题一:我们将一天时间分为七个时间段,每个时间段都必须在满足用户需电量的前提下,考虑成本。
在成本的分析计算中,发现后一时间段的成本计算总是与前一时间段发电机组安排有关,于是根据题目给出的约束条件建立非线性规划模型,在满足用户用电需求的前提下,即发电机发电总量大于等于用户用电需求量(p P ii ≥),得到一天最小成本为1463193 元。
对于问题二:在问题一的基础上,增加了工作状态的发电机组必须留出20%的发电能力余量,以防用电量突然上升的条件,对模型一的约束条件之一进行修改(8.0pP ii ≥),一样,于是得到问题二中一天的最小成本为1885490元。
关键词 分段分析 约束性非线性方程 最优化1. 问题重述现代日常生活中最熟悉,而且必不可少的东西就是电了,而发电机作为电力的源泉,以这样或那样的形式为我们发电,而如何能合理的安排发电机的工作,也是发电厂成本考虑的重头戏。
在本文中,我们考虑的就是发电机合理安排的数学建模问题。
根据每日的用电量,我们有四种机型的发电机可供选用,每种机型都有规定的数量,最小输出和最大输出功率。
附录中给出了各型号发电机的一些和成本有关的数据。
本文需解决的问题有:问题一:作为发电厂的老板,自然希望自己工厂中的发电机组能在满足供电需求的前提下,有最合理的成本。
试就发电机基本数据,建立合理的发电机安排模型,确定在每个时段应分别使用哪些发电机才能使每天的总成本最小,最小总成本为多少?问题二:若正在工作的发电机组必须留出20%的发电能力余量,以防用电量突然上升。
又该做出怎样的调整?2. 问题分析此题研究的是发电机合理安排的数学建模问题。
要对发电机进行合理的安排,就要有合理的安排规则,尤其是在有供电要求的时候。
我们按照满足供电需求前提下,再寻找最小成本的规则安排。
数学建模电力安排问题资料

电力生产问题摘要本文解决的是电力生产中发电机的安排问题,在满足每日各时间段电力需求的条件下,安排各型号发电机来供电,以期获得最小的成本。
为解决此问题,我们建立了两个最优化模型。
针对问题一:建立了非线性单目标最优化模型。
从已知条件、目标函数、约束条件三方面进行综合分析可知,每天的总成本由总固定成本、总边际成本、总启动成本组成,确定总成本为目标函数,各时段各型号发电机工作数量及其总超出功率为主要变量,并列出相应约束条件。
最后通过Lingo软件[2]求出最小成本为1540770元,并得出各时段各型号发电机的数量及其功率如下表(具体见表三):针对问题二:建立了线性单目标最优化模型。
引入非负变量,即为各时段新增开的各型号的发电机台数,通过此变量线性表示出启动成本。
以总成本为目标函数,在模型一的基础上,只需改变一个约束条件,即发电机组在任意时间段内所能发出的最大总功率的80%要大于等于该时段的用电需求。
最后通过lingo软件求出最小成本为1885420元,并得出各时段各型号发电机的数量及其功率。
关键词:非线性最优化模型线性最优化模型最小生产成本1 问题重述1.1 问题背景在电力生产过程中,为满足每日的电力需求并且使生产成本达到最小,因不同发电性能的发电机成本不同,故可以选用不同型号的发电机组合使用。
1.2 题目信息题中给出了一天中七个时段的用电需求(见表一)及四种发电机的发电性能和相应成本(见表二)。
其中,所有发电机都有一个最大发电能力,当接入电网时,其输出功率不应低于其最小输出功率,且所有发电机均存在一个启动成本,以及工作于其最小功率状态时固定的每小时成本,并且如果功率高于最小功率,则超出部分的功率每兆瓦每小时还存在一个成本,即边际成本。
问题(1):在每个时段应分别使用哪些发电机才能使每天的总成本最小,最小总成本为多少?问题(2):如果在任何时刻,正在工作的发电机组必须留出20%的发电能力余量,以防用电量突然上升。
电力生产的数学建模问题

电力生产问题的数学模型摘要本文针对发电机厂每天在不同时间段用电需求量不同的情况下,根据给定不同型号不同数量的发电机,合理分配各台发电机在不同时间段的开启数量和运行功率,使得一天内总发电成本最小的问题,采用单目标非线性规划方法,建立所求问题的最优化模型,借助Lingo软件对模型进行求解,得到每日最小发电总成本。
对于问题—:由已知条件可知发电总成本由固定成本、边际成本、启动成本组成,据此,我们确定了三个指标:即固定成本总和、边际成本总和、启动成本总和。
总成本即为这三项成本总和。
每天分为七个时段,发电机共有四种型号,方案结果应该包括每个时段每种型号平均功率及该时段该型号发电机的数量,通过分析未知数与所给数据之间的关系来列出相应的约束条件,写出成本函数表达式,然后通过LINGO求出个时段各种型号发电机的实际发出的功率及所需要运行的台数,从而求出最小总成本1427810元。
对于问题二:题目要求在任何时刻,正在工作的发电机组必须留出20%的发电能力余量,以防用电量突然上升。
其他条件与第一问相同,因此,只需增加一个约束条件,即发电机机组所能发出的最大功率之和乘以80%后大于用电需求,所以可以按照问题—建立的模型,将其约束条件中每个时间段用电量的需求量提高25%,最终得出此情况下每天的最小成本为:1829955元。
关键词:单机输出功率使用数量总成本1.问题重述1.1问题背景为满足每日电力需求(单位为兆瓦(MW)),可以选用四种不同类型的发电机。
每日电力需求如下表1。
表1:每日用电需求(兆瓦)为了便于观察每天的用量需求,将数据重新整理,转化为图1所示的图表。
图1各时间段的用电需求量从图表中可以清晰的观察到每天用电需求变化,在第一阶段用电量需求处于低谷时段,第四阶每种发电机都有一个最大发电能力,当接入电网时,其输出功率不应低于某一最小输出功率。
所有发电机都存在一个启动成本,以及工作于最小功率状态时的固定的每小时成本,并且如果功率高于最小功率,则超出部分的功率每兆瓦每小时还存在一个成本,即边际成本。
2012数学建模电力生产问题

38组唐看看、任娇娇、曾祥云电力生产问题的优化模型摘要本文主要是解决电力生产问题,在发电机的发电量能满足每日需求的条件下,我们建立了一个非线性最优化模型,来使公司每日所需要的总成本达到最低。
针对问题一:问题要求确定每个发电机的安排计划,使得每天总成本最小。
每天的总成本可化为各时段的总成本,即要求各时段的最小总成本,每个时段的总成本等于所有启动的发电机的固定成本、边际成本和启动成本三者之和。
本文根据不同的时段将发电机划分为七个不同的阶段,每个阶段以其前一个阶段得到的发电机启动数量作为状态,以启动成本函数作为状态转移方程,以各个时段的总成本作为目标函数,我们用Lingo软件建立分阶段的非线性最优化模型,最后得到各个时段的不同型号的发电机的使用数量和发电功率,从而求出每天的最低总成本为145.3050万元。
(见表一)。
针对问题二:问题要求在正在工作的发电机组必须留出20%的发电余量,也就是发电机每时段的发电量的80%要满足每时段的需求,余下的20%用于突发情况。
我们在满足题目这个要求的条件下运用类似与解决问题一的方法来分别求得各个时段分别启动的各种型号的发电机的使用数量和发电功率,从而求出每天最低总成本为189.8190(万元)。
(见表二)。
关键词:电力生产非线性最优化总成本发电功率1.问题重述1.1问题背景为满足每日电力需求(单位为兆瓦(MW)),可以选用四种不同类型的发电机。
每日电力需求如下表1。
每种发电机都有一个最大发电能力,当接入电网时,其输出功率不应低于某一最小输出功率。
所有发电机都存在一个启动成本,以及工作于最小功率状态时的固定的每小时成本,并且如果功率高于最小功率,则超出部分的功率每兆瓦每小时还存在一个成本,即边际成本。
这些数据均列于表2中。
只有在每个时段开始时才允许启动或关闭发电机。
与启动发电机不同,关闭发电机不需要付出任何代价。
1.2需要解决的问题问题(1)在每个时段应分别使用哪些发电机才能使每天的总成本最小,最小总成本为多少?问题(2)如果在任何时刻,正在工作的发电机组必须留出20%的发电能力余量,以防用电量突然上升。
数学建模中电力安排问题

数学建模中电力安排问题
电力安排问题是指如何合理地安排电力资源的问题。
在数学建模中,电力安排问题通常涉及以下几个方面的内容:
1. 电力供需平衡问题:如何在保证电力供应的前提下,合理安排电力需求,避免供需不平衡现象的发生。
2. 电力生产问题:如何合理安排电力生产的方式和规模,以最大程度地满足电力需求,并考虑到环境、经济和可持续发展等因素。
3. 电力传输问题:如何设计和优化电力传输网络,确保电力能够高效地从发电厂传输到用户,减少能量损耗和线路负荷。
4. 电力负荷预测问题:如何准确地预测电力负荷的大小和变化趋势,以便合理安排电力供应和发电计划。
5. 电力价格和市场问题:如何合理制定电力价格和市场机制,激励电力生产者提供足够的电力供应,并鼓励用户节约用电。
在建立数学模型时,可以使用线性规划、整数规划、动态规划、随机模型等方法来解决电力安排问题。
同时,还需要考虑实际情况中的各种约束条件和限制,例如供电能力、燃料成本、环境因素等,以及不确定性因素的影响。
数学建模A

2014年三峡大学校内数学建模竞赛题目
(论文格式:请参考“三峡大学校内数学建模竞赛论文格式规范”,提交论文时请使用我们为你制作的统一封面)
A题订货优化问题
宜昌某公司主要对外销售10种产品(W1-W10),而这些产品主要来自于长阳,当阳和秭归的三个工厂。
该公司在宜昌城区有5个仓库和8个直销店。
根据公司各分店的销售计划,首先向工厂提交订货订单,然后将各种产品运送到城区的仓库,最后由仓库分配到直销店销售。
其中,直销店只负责销售,没有储存物资的能力。
长阳,当阳和秭归生产十种产品的年产量如表1所示:
表1:三个工厂生产10种产品的年产量
每种产品的单价如表2所示:
同种产品在不同的仓库的库存费一样,而不同产品的库存费是不同的,另外
每种物资有着自己的体积,产品的库存费与单位占用库容如表5。
货可使用的流动资金上限为100万元,如果进行销售时允许缺货,但是缺货的损失费是存储费的2倍,请问:
(1)公司一年之中应该怎样组织订货(各种产品的订货次数与订货量以及运输方案)使得总的花费最少?
(2)如果长阳工厂有订购优惠活动,物资订购量每增加30件订购单价就会降低5元,最多优惠15元,公司又应该怎样组织订货?
( 3 )若将该问题改为更加接近实际些,哪些条件可以变动?(如工厂产品的单位价格随产量的增加而相应减少),试给出一种具体情形对于第二问再作进一步的讨论。
附加说明:
1.问题的开放部分可自己合理假设;
2.若数据有不合理的地方自己进行适当的修改,并在论文中说明清楚。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电力生产问题为满足每日电力需求(单位为兆瓦(MW)),可以选用四种不同类型的发电机。
每日电力需求如下表1。
所有发电机都存在一个启动成本,以及工作于最小功率状态时的固定的每小时成本,并且如果功率高于最小功率,则超出部分的功率每兆瓦每小时还存在一个成本,即边际成本。
这些数据均列于表2中。
(只有在每个时段开始时才允许启动或关闭发电机。
与启动发电机不同,关闭发电机不需要付出任何代价。
问题(1)在每个时段应分别使用哪些发电机才能使每天的总成本最小,最小总成本为多少?问题(2)如果在任何时刻,正在工作的发电机组必须留出20%的发电能力余量,以防用电量突然上升。
那么每个时段又应分别使用哪些发电机才能使每天的总成本最小,此时最小总成本又为多少?电力生产问题的数学模型摘要本文解决的是电力生产问题,在发电机的发电量能满足每日的电力需求的条件下,为了使每日的总成本达到最低,我们建立了一个最优化模型。
对于问题一:由已知条件可知有固定成本、边际成本、启用成本,据此,我们确定了三个指标:即固定总成本、边际总成本、启动总成本。
总成本即为这三项总成本之和。
每天分为七个时段,发电机共有四种型号,方案结果应该包括每个时段每种型号平均功率及该时段该型号发电机的数量,一共有56个未知数,为减少未知数,并将非线性约束条件转化为线性约束条件,将整数规划转化为非整数规划,我们以每个时段每种型号的几个发电机发出的总功率为变量,并列出相应的约束条件,然后通过LINGO求出个时段各种型号发电机的总功率,再采用分支定界法求出最小总成本为146.9210万元。
再根据总功率利用Matlab软件计算出总功率所对应的该型号发电机的数量(见表一)。
对于问题二:题目要求在任何时刻,正在工作的发电机组必须留出20%的发电能力余量,以防用电量突然上升。
其他条件与问题一相同,因此,只需增加一个约束条件,即发电机机组所能发出的最大总功率乘以80%后大于用电需求。
为锻炼编程技术,故在第二问改用Matlab软件编程来求解,将所要求的7个时段4种型号的发电机的平均功率一共28个未知数用X1,X2,,,,X28表示,将其对应的发电机数量用X29,X30,,,X56表示,并利用矩阵列出约束条件和目标函数,然后编程并运行求解,得到的发电机数量有的不为整数,然后采用分支定界法,得到调整后的结果,最小总成本为157.5426万元。
!关键词:线性规划、总功率、使用数量、总成本1.问题重述1.1问题背景为满足每日电力需求(单位为兆瓦(MW)),可以选用四种不同类型的发电机。
每日电力需求如下表1。
所有发电机都存在一个启动成本,以及工作于最小功率状态时的固定的每小时成本,并且如果功率高于最小功率,则超出部分的功率每兆瓦每小时还存在一个成本,即边际成本。
这些数据均列于表2中。
任何代价。
1.2需要解决的问题问题(1)在每个时段应分别使用哪些发电机才能使每天的总成本最小,最小总成本为多少?问题(2)如果在任何时刻,正在工作的发电机组必须留出20%的发电能力余量,以防用电量突然上升。
那么每个时段又应分别使用哪些发电机才能使每天的总成本最小,此时最小总成本又为多少?2.模型假设假设1:调整发电机功率没有成本:假设2:发电机生产的电量在传输过程中没有损耗假设3:忽略发电机启动的时间假设4:发电机的功率在时段初调整好后在那个时段内保持不变3.符号说明4.问题分析此题研究的是电力生产中在满足每日电力需求的条件下,使每日的总成本达到最小的数学建模问题。
针对问题一:从以下三方面来分析(1)对已知条件的分析:从已知的条件来看,本题将一天分为了七个时间段,在每一个时间段都有对应的电力需求量。
为了满足每日的电力需求,有四种型号的发电机可供使用,每种型号的发电机都已知其可用数量、最小输出功率、最大输出功率、固定成本、每兆瓦边际成本、启用成本。
要使总成本达到最小,则问题的目标函数就是总成本函数。
(2)对目标函数的分析:总成本由三个指标组成,即固定总成本、边际总成本、启动总成本。
分别对每个指标进行分析。
固定总成本为第i 个时间段的时间、型号j 发电机在第i 个时间段的数量、型号j 发电机每小时的固定成本这三者之积的累积和。
边际总成本为第i 个时间段的时间、型号j 发电机在第i 个时间段超出此时间段最小总功率的功率、型号j 发电机每兆瓦边际成本这三者之积的累积和。
启动总成本为型号j 发电机启动数量和型号j 发电机的启动成本之积的累积和。
(3)对约束条件的分析:对机型j 发电机在第i 个时间段总功率的约束有两个。
一是若机型j发电机在第i 个时间段不使用,则机型j 发电机在第i 个时间段的总功率为零;若机型j 发电机在第i 个时间段使用,则机型j 发电机在第i 个时间段的总功率要满足大于等于单个机型j 发电机的最小输出功率且小于等于全部机型j 发电机最大输出功率之和;二是四种机型的发电机在第i 个时间段生产的总功率要满足大于等于第i 个时间段的用电量需求。
)针对问题二:题目要求在任何时刻,正在工作的发电机组必须留出20%的发电能力余量,以防用电量突然上升,即发电机组在第i 个时间段所能发出的最大总功率的80%要大于等于该时段的用电需求。
5.问题一的解答针对问题一我们建立了模型一 6.1模型一的建立该模型是为了解决电力生产中,在满足每日电力需求的条件下,用四类不同型号的发电机在一天的七个时段进行电力生产,使总成本达到最小的问题。
总成本由以下三项指标组成:指标一:固定总成本j jiji j iG QC S ][7141⨯∑∑==指标二:边际总成本j j jij iji j iB P QC CS ⨯-⨯∑∑==)][(7141指标三:启用总成本j jj i jij i j jji jij V Q C Q C Q C Q C sign ⨯-⨯+--==-∑∑])[]([21])[]([@)1(7141)1(@为了使总成本达到最小,我们建立了如下的目标函数:(1)若机型j 发电机在第i 个时间段不使用,则机型j 发电机在第i 个时间 段的总功率为零;若机型j 发电机在第i 个时间段使用,则机型j 发电 机在第i 个时间段的总功率要满足大于等于单个机型j 发电机的最小输 出功率且小于等于全部机型j 发电机最大输出功率之和。
据此,我们建 立了如下约束条件:其中i =1,2,···,7j =1,2,3,4(2)四种机型的发电机在第i 个时间段生产的总功率要满足大于等于第i `个时间段的用电量需求。
据此,我们建立如下约束条件: 其中i =1,2,···,7j =1,2,3,4 6.2模型一的求解我们用Lingo 软件求解这个模型,对于 0 =≤≤ij j j ij j C Q N C P 或这个约束条件,Lingo 软件不能直接处理,因此,我们先用分支定界法将此条件改为j j ijQ N ≤≤C 0,然后用Lingo 软件求解,分析计算结果发现有的时段的某型号发电机输出功率小于该型号发电机的最小功率,故对ijC 进行调整,调整后得到满足约束条件的最低总成本为146.9210万元。
根据Lingo 软件计算得到的第i 时段型号为j 的几个发电机发出的总功率,然后用Matlab 软件以总功率除以该型号单个发电机的最大输出功率,然后向正无穷方向取整,得到第i 时段型号为j 的发电机的数量。
各个时段各种型号几个发电机发出的总功率及对应的发电机数量如下表一所示:6.问题二的解答根据问题一的模型,我们已经求出了在满足每日电力需求的条件下,用四类不同型号的发电机在一天的七个时段进行电力生产,使总成本达到最小,而问题二要求在任何时刻,正在工作的发电机组必须留出20%的发电能力余量,以防用电量突然上升。
故在第一问的目标函数和约束条件保持不变的情况下,应再增加一个约束条件,即第i个时段发电机组所能输出地最大功率的80%应大于第i个时段的用电需求。
列出目标函数和约束条件如下:N 将目标函数和约束条件用矩阵的形式表示出来,然后用Matlab软件求解,求解结果中有的j不为整数,故用分支定界法进行调整,调整后得到满足约束条件的最小总成本为每天157.5426万元。
各个时段各种型号的发电机发出的平均功率和对应的数量见下表:7.模型的评价、改进及推广8.1模型评价优点:(1)根据题目的要求我们确立了三个指标,即固定总成本、边际总~成本、启用总成本,以上三项总成本之和即为总成本,通过对三项总成本的逐项分析,建立了最优的目标函数。
(2)对于约束条件的建立,我们综合考虑了各种情况,使约束条件达到了具体化全面化。
(3)以每个时段每种型号的几个发电机发出的总功率为变量,将56个未知数缩减为28个,将约束条件中的非线性约束转化为线性约束,将整数规划转化为非整数规划,并提高了运行速度,缺点:我们用总功率来表示数量,通过总功率来求数量,而此数量的结果不能在LINGO中直接表示出来,需要另外通过其他软件来得出结果,使建模工作复杂化)8.2模型改进(1)所建模型是在发电机无故障的条件下建立的,如果考虑发电机随使用时间的增加,在不同的时间段(譬如以月为时间段单位)需要不同的检修费用,再把检修费用平分到每一天,将此检修费用也算作总成本的一部分。
增加约束条件,使模型更精准优化。
(3)所建模型假设了发电机的功率在时段初调整好后在那个时段内保持不变,如果在每个时段,发电机的功率在满足约束条的情况下为可变的,则可以根据实际情况做不同调整,使模型更实际化。
#8.3模型推广我们建的模型不仅适用于电力生产,也适用于其它方面的生产,也可用于产销平衡问题,选址问题,值班问题等等。
8.参考文献[1]赵静,但琦,数学建模与数学实验,高等教育出版社,2008.[2]楼顺天,姚若玉,沈俊霞,MATLAB7.x程序设计语言,西安电子科技大学出版社,2008.9.附录sets:`!电力生产问题;shiduan/1..7/:s,x;xinghao/1..4/:n,p,q,g,b,v;link(shiduan,xinghao):c;endsetsdata:!各个时段的小时数;s=6,3,3,2,4,4,2;$!各个时段的用电需求;x=12000,32000,25000,36000,25000,30000,18000; !可用数量;n=10,4,8,3;!最小输出功率;p=750,1000,1200,1800;!最大输出功率;q=1750,1500,2000,3500;}!固定成本;g=2500,1800,3750,4800;!边际成本;b=2.7,2.2,1.8,3.8;!启动成本;v=5000,1600,2400,1200;enddata!目标函数|@floor(c(i,j)/q(j)+0.999999)为第i时段型号为j的发电机的数量@if函数用来判断:当i=1时,i-1=7;min=@sum(link(i,j):s(i)*(@floor(c(i,j)/q(j)+0.999999)*g(j)+(c(i,j)-(@floor(c(i,j)/q(j)+0.999999))* p(j))*b(j))+(@sign((@floor(c(i,j)/q(j)+0.999999))-(@floor((@if(i#ge#2,c(i-1,j),0))/q(j)+0.999999))+1))/2* (@if(i#ge#2,@floor(c(i,j)/q(j)+0.999999)-(@floor(c(i-1,j)/q(j)+0.999999)),@floor(c(1,j)/q(j)+0.9999 99)))*v(j));!第i时段的总发电量大于该时段的用电需求;@for(shiduan(i):@sum(xinghao(j):c(i,j))>=x(i));!型号为j的发电机发出的总功率小于或等于该型号几个发电机所能发出的最大功率;…@for(link(i,j):c(i,j)<=n(j)*q(j));!型号为j的发电机发出的总功率大于或等于0;@for(link(i,j):c(i,j)>=0);End程序运行结果Feasiblesolutionfound.Objectivevalue:1463554.Infeasibilities:0.2394529E-11>Totalsolveriterations:377VariableValueReducedCostS(1)6.0000000.000000S(2)3.0000000.000000S(3)3.0000000.000000S(4)2.0000000.000000S(5)4.0000000.000000S(6)4.0000000.000000?S(7)2.0000000.000000X(1)12000.000.000000X(2)32000.000.000000X(3)25000.000.000000X(4)36000.000.000000X(5)25000.000.000000X(6)30000.000.000000X(7)18000.000.000000/N(1)10.000000.000000N(2)4.0000000.000000N(3)8.0000000.000000N(4)3.0000000.000000P(1)750.00000.000000P(2)1000.0000.000000P(3)1200.0000.000000P(4)1800.0000.000000$Q(1)1750.0000.000000Q(2)1500.0000.000000Q(3)2000.0000.000000Q(4)3500.0000.000000G(1)2500.0000.000000G(2)1800.0000.000000G(3)3750.0000.000000G(4)4800.0000.000000【B(1)2.7000000.000000B(2)2.2000000.000000B(3)1.8000000.000000B(4)3.8000000.000000V(1)5000.0000.000000V(2)1600.0000.000000V(3)2400.0000.000000V(4)1200.0000.000000?C(1,1)0.0000000.000000C(1,2)6000.0000.000000C(1,3)6000.0000.000000C(1,4)0.0000000.000000C(2,1)1743.539-1.937143 C(2,2)6000.0000.000000C(2,3)14769.190.000000C(2,4)9487.2720.000000<C(3,1)2957.0260.000000C(3,2)6000.0000.000000C(3,3)16000.000.000000C(3,4)42.97358-0.2914286 C(4,1)4645.5110.000000C(4,2)6000.0000.000000C(4,3)16000.000.000000C(4,4)9354.4890.000000】C(5,1)2892.3220.000000C(5,2)6000.0000.000000C(5,3)15986.150.000000C(5,4)121.52832.982857C(6,1)2294.0311.017143C(6,2)6000.0000.000000C(6,3)16000.000.000000C(6,4)5705.9690.000000】C(7,1)9.4007851.124286C(7,2)5997.4050.000000C(7,3)11993.190.000000C(7,4)0.0000000.000000 RowSlackorSurplusDualPrice 11463554.-1.00000020.000000-14.3700030.000000-10.85143~40.000000-8.91428650.000000-10.2285760.000000-9.02857170.000000-13.7257180.000000-3.390000 917500.000.000000100.0000000.6366667 1110000.000.000000.1210500.000.000000 1315756.460.000000140.0000005.051429 151230.8110.6642857E-01 161012.7280.000000 1714542.970.000000180.0000003.114286190.0000001.129286?2010457.030.000000 2112854.490.000000220.0000006.361905230.0000005.038571 241145.5112.765714 2514607.680.000000260.0000001.2952382713.84997-1.351429*2810378.470.000000 2915205.970.000000300.0000005.992381310.0000000.9457143 324794.0310.0000003317490.600.000000342.594708-1.010000 354006.8060.000000:3610500.000.000000370.000000-2.030000 386000.0000.000000396000.0000.000000400.000000-4.418571 411743.5390.000000426000.0000.000000 4314769.190.000000、449487.2720.000000452957.0260.000000466000.0000.000000 4716000.000.0000004842.973580.000000494645.5110.000000506000.0000.000000 5116000.000.000000|529354.4890.000000532892.3220.000000546000.0000.000000 5515986.150.00000056121.52830.000000572294.0310.000000586000.0000.000000 5916000.000.000000;605705.9690.000000619.4007850.000000625997.4050.000000 6311993.190.000000640.000000-2.530000附录四:模型一调整后所用程序sets:!电力生产问题;—shiduan/1..7/:s,x;xinghao/1..4/:n,p,q,g,b,v;link(shiduan,xinghao):c; endsetsdata:!各个时段的小时数;s=6,3,3,2,4,4,2;!各个时段的用电需求;|x=12000,32000,25000,36000,25000,30000,18000;!可用数量;n=10,4,8,3;!最小输出功率;p=750,1000,1200,1800;!最大输出功率(留有20%余量);q=1400,1200,1600,2800;!固定成本;)g=2500,1800,3750,4800;!边际成本;b=2.7,2.2,1.8,3.8;!启动成本;v=5000,1600,2400,1200;enddata!目标函数@floor(c(i,j)/q(j)+0.999999)为第i时段型号为j的发电机的数量,@if函数用来判断:当i=1时,i-1=7;min=@sum(link(i,j):s(i)*(@floor(c(i,j)/q(j)+0.999999)*g(j)+(c(i,j)-(@floor(c(i,j)/q(j)+0.999999))* p(j))*b(j))+(@sign((@floor(c(i,j)/q(j)+0.999999))-(@floor((@if(i#ge#2,c(i-1,j),0))/q(j)+0.999999))+1))/2* (@if(i#ge#2,@floor(c(i,j)/q(j)+0.999999)-(@floor(c(i-1,j)/q(j)+0.999999)),@floor(c(1,j)/q(j)+0.9999 99)))*v(j));!第i时段的总发电量大于该时段的用电需求;@for(shiduan(i):@sum(xinghao(j):c(i,j))>=x(i));!型号为j的发电机发出的总功率小于或等于该型号几个发电机所能发出的最大功率;@for(link(i,j):c(i,j)<=n(j)*q(j));~!型号为j的发电机发出的总功率大于或等于0;@for(link(i,j):c(i,j)>=0);c(3,4)=0;c(5,4)=0;c(7,1)=0;c(6,1)>=750;EndLocaloptimalsolutionfound.】Objectivevalue:1575426. Objectivebound:1541773. Infeasibilities:0.1818989E-11 Extendedsolversteps:4 Totalsolveriterations:685024 VariableValueReducedCostS(1)6.0000000.000000S(2)3.0000000.000000"S(3)3.0000000.000000S(4)2.0000000.000000S(5)4.0000000.000000S(6)4.0000000.000000S(7)2.0000000.000000X(1)12000.000.000000X(2)32000.000.000000X(3)25000.000.000000)X(4)36000.000.000000X(5)25000.000.000000X(6)30000.000.000000X(7)18000.000.000000N(1)10.000000.000000N(3)8.0000000.000000 N(4)3.0000000.000000 》P(1)750.00000.000000 P(2)1000.0000.000000 P(3)1200.0000.000000 P(4)1800.0000.000000 Q(1)1400.0000.000000 Q(2)1200.0000.000000 Q(3)1600.0000.000000 Q(4)2800.0000.000000 -G(1)2500.0000.000000 G(2)1800.0000.000000 G(3)3750.0000.000000 G(4)4800.0000.000000 B(1)2.7000000.000000 B(2)2.2000000.000000 B(3)1.8000000.000000 B(4)3.8000000.000000 -V(1)5000.0000.000000 V(2)1600.0000.000000V(4)1200.0000.000000C(1,1)800.0224-9.991071C(1,2)4799.989-3.645833C(1,3)6399.9860.000000C(1,4)0.2800000E-020.7017857 》C(2,1)10400.020.000000C(2,2)4799.989-19.58929C(2,3)11199.99-14.55804C(2,4)5600.003-14.47500C(3,1)9000.025-3.870536C(3,2)4799.989-2.031250C(3,3)11199.990.000000C(3,4)0.0000000.000000~C(4,1)11199.990.000000C(4,2)4799.989-7.702381C(4,3)12799.99-3.598214C(4,4)7200.038-3.578571C(5,1)9000.0250.000000C(5,2)4799.989-4.690476C(5,3)11199.99-2.482143C(5,4)0.0000000.000000|C(6,1)8399.98710.19643C(6,2)4799.989-5.208333C(6,3)11199.990.000000C(6,4)5600.0380.6821429C(7,1)0.0000000.000000C(7,2)4799.989-0.4375000 C(7,3)9599.9860.000000C(7,4)3600.0251.091071%RowSlackorSurplusDualPrice 11575426.-1.00000020.000000-17.5125030.000000-25.1892940.000000-7.63125050.000000-11.4357160.000000-12.1571470.000000-12.67500…80.000000-4.837500 913199.980.000000100.1080000E-010.000000 116400.0140.000000 128399.9970.000000133599.9780.000000 140.1080000E-010.000000 151600.0140.000000\162799.9970.000000 174999.9750.000000 180.1080000E-010.000000 191600.0140.000000 208400.0000.000000 212800.0130.000000 220.1080000E-010.000000 230.1440000E-010.000000 }241199.9620.000000 254999.9750.000000 260.1080000E-010.000000 271600.0140.000000 288400.0000.000000 295600.0130.000000 300.1080000E-010.000000 311600.0140.000000(322799.9620.000000 3314000.000.000000340.1080000E-010.000000 353200.0140.000000 364799.9750.000000 37800.02240.000000 384799.9890.000000 396399.9860.000000】400.2800000E-020.000000 4110400.020.000000 424799.9890.000000 4311199.990.000000 445600.0030.000000 459000.0250.000000 464799.9890.000000 4711199.990.000000—480.0000000.000000 4911199.990.000000 504799.9890.000000 5112799.990.000000 527200.0380.000000 539000.0250.000000 544799.9890.000000 5511199.990.000000¥560.0000000.000000578399.9870.000000584799.9890.0000005911199.990.000000605600.0380.000000610.0000000.000000624799.9890.000000639599.9860.000000【643600.0250.000000650.000000-3.768750660.000000-3.042858670.000000-0.5624996687649.9870.000000附录五:问题一中用Matlab软件求第i个时间段型号j发电机的数量的程序c=[06000600001816.9506000160008183.050}3047.908600015952.0903500.0026000160001050030006000160000857.16876000160007142.83105285.47012714.830];%c(i,j)为第i时段型号为j的几个发电机发出的总功率q=[1750150020003500];qq=repmat(q,7,1);%qq(i,j)为型号为j的单个发电机所能发出的最大功率n=[10483];,nn=repmat(n,7,1);%nn(i,j)为型号为j的发电机的可用数量N=ceil(c./qq)%N(i,j)为第i时段型号为j的发电机的数量N<=nn%N(i,j)应小于nn(i,j),故运算结果应该为所有元素均为1的7行4列的矩阵,此运算用于检验程序运行结果N=043024832480.3483248014830470ans=111111111111|111111111111附录六:问题二中用Matlab软件求第i个时间段型号j发电机的数量的程序c=[80048006400010400480011200560090004800112000'11200480012800720090004800112000840048001120056000480096003600];%c(i,j)为第i时段型号为j的几个发电机发出的总功率q=[1400120016002800];qq=repmat(q,7,1);%qq(i,j)为型号为j的单个发电机所能发出的最大功率n=[10483];nn=repmat(n,7,1);%nn(i,j)为型号为j的发电机的可用数量%N=ceil(c./qq)%N(i,j)为第i时段型号为j的发电机的数量N<=nn%N(i,j)应小于nn(i,j),故运算结果应该为所有元素均为1的7行4列的矩阵,此运算用于检验N=14408472747084837470"0462ans=11111111111111111111`11111111M文件(总成本:zchb)function f=zchb(x)G=ones(1,28);h=[2250180037504800]';H=repmat(h,7,1);i=[750100012001800]';。