Python解决非线性规划中经济调度问题_第1页
Python解决非线性规划中经济调度问题_第2页
Python解决非线性规划中经济调度问题_第3页
Python解决非线性规划中经济调度问题_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第Python解决非线性规划中经济调度问题输出结果

best_x:[1.1.1.]

best_y:[14.]

Processfinishedwithexitcode0

4、电力系统中应用经济调度

(1)案例

(2)Scipy.optimize实现

importnumpyasnp

fromscipy.optimizeimportminimize

#目标函数(FG1+FG2+FG3)

deffun(args1):

a0,a1,a2,b0,b1,b2,c0,c1,c2=args1

v=lambdax:(a0+a1*x[0]+a2*x[0]*x[0]

+b0+b1*x[1]+b2*x[1]*x[1]

+c0+c1*x[2]+c2*x[2]*x[2])

returnv

defcon(args2):

D,x0min,x0max,x1min,x1max,x2min,x2max=args2

cons=({'type':'eq','fun':lambdax:D-x[0]-x[1]-x[2]},

{'type':'ineq','fun':lambdax:x[0]-x0min},

{'type':'ineq','fun':lambdax:-x[0]+x0max},

{'type':'ineq','fun':lambdax:x[1]-x1min},

{'type':'ineq','fun':lambdax:-x[1]+x1max},

{'type':'ineq','fun':lambdax:x[2]-x2min},

{'type':'ineq','fun':lambdax:-x[2]+x2max})

returncons

defmain():

args1=(4,0.3,0.0007,3,0.32,0.0004,3.5,0.3,0.00045)

args2=(700,100,200,120,250,150,300)

cons=con(args2)

x0=np.array((150,250,200))#初值

res=minimize(fun(args1),x0,method='SLSQP',constraints=cons)

print('FGi-代价:',res.fun)

print(res.success)

print('PGi—解:',[np.around(i)foriinres.x])

print('PG1:',res.x[0])

print('PG2:',res.x[1])

print('PG3:',res.x[2])

if__name__=="__main__":

main()

输出结果

FGi-代价:305.9673913046252

True

PGi解:[176.0,250.0,274.0]

PG1:176.0874477123534

PG2:250.0

PG3:273.9125522876465

Processfinishedwithexitcode0

(3)粒子群包实现(pyswarm)

pyswarm是一个支持带约束的粒子群优化包,sko.PSO中的pso仅支持带上下限的约束,不支持等式和不等式约束,所以不太喜欢。

frompyswarmimportpso

defobject_func(x):

return(4+0.3*x[0]+0.0007*x[0]*x[0]+3+0.32*x[1]+0.0004*x[1]*x[1]+3.5+0.3*x[2]+0.00045*x[2]*x[2])

#不等式约束

defcons1(x):

return[x[0]+x[1]+x[2]-700]

lb=[100,120,150]#

ub=[200,250,300]

xopt,fopt=pso(object_func,lb,ub,ieqcons=[cons1],maxiter=100,swarmsize=1000)

print(xopt)

print(fopt)

输出结果

Stoppingsearch:Swarmbestobjectivechangelessthan1e-08

[179.34039956250.270.65960045]

305.97956393103044

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论