# Covariance Matrix Adaptation Greedy Search Applied to Water Distribution System Optimization #
01/08/2019
================================================================
The Matlab hybrid framework consists of three componenets including
1. Covariance Matrix Adaptation Evolution Strategy (CMA-ES):
Applied for minimizing the cost of the pipes.
The recommended version of CMA-ES : https://www.lri.fr/~hansen/cmaes.m
2. UpWard Greedy Search:
Applied for handling the violations of constraints
3. DownWard Greedy Search:
Applied for reducing the extra cost of pipes.
-----------------------------------------------------------------------
Please pay attention to some essential points :
a. main.m is the main file for running this framework,
but before running, please check the below code line in your Matlab prompt
mex - setup
if the below error message is shown: please follow the recommended steps:
======================================================================
# Functions #
|Function|Description|
|---------|---------|
|set_Network_name|initializing the network name |
|set_dim|initializing the diameters of the applied pipes|
|set_fitfun|setting the cost function name |
|Def_Iter | used for an iterative network like DNYTP and 50NYTP|
|Def_Constraint | determining the Nodal pressure head constraints|
|set_Bestfmin | estimating of the near-optimum network cost design |
|initialize_xstart | initializing the first population|
|Def_TolFun | defining the tolerance of the fitness function as a stopping criterian|
|set_Max_Eval | initializing the maximum evaluation number|
|cmaes | CMAES function|
|Finding_best | recording the best continuous, discrete and possible pipe configurations |
|Downward_Greedy_Search| applying the strategy of downward greedy search |
|Upward_Greedy_Search | applying the strategy of upward greedy search|
|rep | counting the same pipe configurations|
|Dim_Correction | converting the continuous designs to the nearest possible ones|
# The structure of recorded results #
|Variables |Description|
|---------|---------|
|Pipe| The main structure|
|UGSflag| a flag (0/1) shows the upward greedy search is run or not |
|DGSflag| a flag (0/1) shows the downward greedy search is run or not|
|Continuous_Sols| a matrix of all continuous pipe designs (design number * network pipe number)|
|Continuous_Cost| an array of the continuous pipe costs |
|Continuous_Violation| an array of total violations of all continuous pipes|
|Rounded_Sols| a matrix of all possible pipe designs (design number * network pipe number)|
|Rounded_Cost| an array of the possible pipe costs |
|Rounded_Violation| an array of total violations of all possible pipes|
|UGS_Sols| a matrix of all possible pipe designs after applying the upward greedy search (design number * network pipe number)|
|UGS_Cost| an array of the possible pipe costs after applying the upward greedy search|
|XminU| a variable shows the best pipe design of upward greedy search|
|FminU | a variable shows the best pipe cost of upward greedy search|
|XminC | a variable shows the best continuous pipe design |
|FminC | a variable shows the best continuous pipe cost |
|XminD | a variable shows the best discrete pipe design |
|FminD | a variable shows the best discrete pipe cost|
|UGS_Sols| a matrix of all possible pipe designs after applying the downward greedy search (design number * network pipe number)|
|UGS_Cost | an array of the possible pipe costs after applying the downward greedy search |
In the following there are the details of EPANET Matlab version.
EPANET-MATLAB-Toolkit
==================================
The `EPANET-Matlab Toolkit` is an open-source software, originally developed by the [KIOS Research Center for Intelligent Systems and Networks of the University of Cyprus](http://www.kios.ucy.ac.cy/) which operates within the Matlab environment, for providing a programming interface for the latest version of [EPANET](https://github.com/OpenWaterAnalytics/epanet), a hydraulic and quality modeling software created by the US EPA, with Matlab, a high-level technical computing software. The goal of the EPANET Matlab Toolkit is to serve as a common programming framework for research and development in the growing field of smart water networks.
The `EPANET-Matlab Toolkit` features easy to use commands/wrappers for viewing, modifying, simulating and plotting results produced by the EPANET libraries.
For support, please use the OWA community forum : http://community.wateranalytics.org/
# How to use the Toolkit #
Download the folder `Download ZIP`, set the run path in Matlab within the saved folder, and run `RunTests.m`. This will execute all the commands which have been implemented in the Class.
Example:
d=epanet('Net1.inp')
d.getNodeCount
d.getNodeElevations
# How to fix/report bugs #
To fix a bug `Fork` the `EPANET-Matlab Toolkit`, `Edit` the code and make the appropriate change, and then `Pull` it so that we evaluate it.
Keep in mind that some bugs may exist in the `EPANET` libraries, in case you are not receiving the expected results.
# List of Matlab Class Functions #
|Function|Description|
|---------|---------|
|epanet| Load Input file and open the EPANET Toolkit system|
|unload|Unload library and close the EPANET Toolkit system|
|loadEPANETFile| Open the EPANET Toolkit system|
|getError| Returns the description of an error code|
|getComputedHydraulicTimeSeries|Computed Hydraulic Time Series|
|getComputedQualityTimeSeries|Computed Quality Time Series|
|getComputedTimeSeries|Computed Hydraulic & Quality Time Series via ENepanet binary file|
|getConnectivityMatrix|Return connectivity matrix of the network|
|getControlRulesCount|Retrieves the number of control rules|
|getControls|Retrieves the controls|
|getCurveCount|Retrieves the number of curves|
|getCurveIndex|Retrieves index of curve with specific ID|
|getCurveLengths|Retrieves number of points in a curve|
|getCurveNameID|Retrieves curve id|
|getCurveValue|Retrieves (x,y) values of specific curve index|
|getCurveXY|Retrieves (x,y) values of all curves|
|getENfunctionsImpemented|Retrieves the epanet functions that have been developed|
|getFlowUnits|Retrieves the units used to express all flow rates|
|getLibFunctions|Retrieves the functions of DLL|
|getLinkBulkReactionCoeff|Retrieves the value of all link bulk reaction coefficients|
|getLinkCount|Retrieves the number of links|
|getLinkDiameter|Retrieves the value of all link diameters|
|getLinkEnergy|Retrieves the value of all computed energy in kwatts|
|getLinkEfficiency|Retrieves the value of all computed efficiency|
|getLinkFlows|Retrieves the value of all computed link flow rates|
|getLinkHeadloss|Retrieves the value of all computed link headloss|
|getLinkIndex|Retrieves the indices of all links, or the indices of an ID set of links|
|getLinkInitialSetting|Retrieves the value of all link roughness for pipes or initial speed for pumps or initial setting for valves|
|getLinkInitialStatus|Retrieves the value of all link initial status|
|getLinkLength|Retrieves the value of all link lengths|
|getLinkMinorLossCoeff|Retrieves the value of all link minor loss coefficients|
|getLinkNameID|Retrieves the ID label(s) of all links, or the IDs of an index set of links|
|getLinkNodesIndex|Retrieves the indexes of the from/to nodes of all links|
|getLinkPipeCount|Retrieves the number of pipes|
|getLinkPipeIndex|Retrieves the indices of pipes|
|getLinkPipeNameID|Retrieves the pipe IDs|
|getLinkPumpCount|Retrieves the number of pumps|
|getLinkPumpHeadCurveIndex|Retrieves index of a head curve for specif
没有合适的资源?快使用搜索试试~ 我知道了~
【优化调度】基于协方差矩阵自适应贪心搜索实现配水系统优化附matlab代码+仿真结果和运行方法.zip
共142个文件
m:57个
inp:22个
txt:14个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 185 浏览量
2023-04-25
12:43:52
上传
评论
收藏 3.24MB ZIP 举报
温馨提示
1.版本:matlab2014/2019a/2021a,内含运行结果,不会运行可私信 2.领域:智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,更多内容可点击博主头像 3.内容:标题所示,对于介绍可点击主页搜索博客 4.适合人群:本科,硕士等教研学习使用 5.博客介绍:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可si信
资源推荐
资源详情
资源评论
收起资源包目录
【优化调度】基于协方差矩阵自适应贪心搜索实现配水系统优化附matlab代码+仿真结果和运行方法.zip (142个子文件)
s5so.1 453B
s5so.2 11KB
s5so.3 11KB
s5so.5 24KB
s5so.6 11KB
s5so.7 11KB
NewYorkdouble_temp.bin 5KB
epanet2.dll 327KB
epanet2.dll 284KB
epanetmsx.dll 212KB
epanetmsx.dll 89KB
doc 1B
doc 1B
doc 1B
doc 1B
doc 1B
doc 1B
Methods for class epanet.docx 16KB
epanet2d 12KB
epanetmsx 107KB
epanet2d.exe 327KB
epanet2d.exe 327KB
epanetmsx.exe 212KB
epanetmsx.exe 9KB
libepanet.tar.gz 209KB
libepanet.h 30KB
epanet2.h 30KB
epanet2.h 30KB
epanetmsx.h 3KB
epanetmsx.h 3KB
epanetmsx.h 3KB
NYTP50_temp.inp 510KB
NYTP50.inp 433KB
NYTP50-optimal.inp 406KB
NYTP50-Mertic.inp 320KB
NYTP50_optimal_Metric.inp 240KB
Balerma.inp 134KB
Balerma_temp.inp 134KB
BWSN_Network_1.inp 43KB
Net3.inp 29KB
Net2.inp 15KB
net2-cl2.inp 14KB
NewYorkdouble_temp.inp 12KB
NewYorkdouble_temp.inp 12KB
Hanoi_temp.inp 12KB
NewYorkdouble.inp 10KB
NewYorkdouble.inp 10KB
Hanoi.inp 10KB
NYTP.inp 7KB
Net1_temp.inp 7KB
Net1.inp 6KB
example_temp.inp 3KB
example.inp 3KB
epanet.m 474KB
cmaes.m 129KB
testBinFunctions.m 29KB
testBinWithoutDLL.m 27KB
testFunctions.m 18KB
NYTP2_DGS2.m 9KB
HP_DGS.m 8KB
BN_DGS.m 8KB
Greedy_Search_down.m 7KB
NYTP_DGS.m 7KB
testMSXFunctions.m 7KB
testGetSetNodes.m 7KB
BN_UGS.m 6KB
HP_UGS.m 6KB
Finding_best.m 5KB
main.m 5KB
NYTP2_UGS2.m 5KB
Balerma_Cost.m 5KB
testGetSetLinks.m 4KB
simepa.m 3KB
ReplaceTanksWithResPattern.m 3KB
DNYTP_Cost.m 3KB
DNYTP_Cost2.m 3KB
testNewFunctions.m 3KB
Hanoi_Cost.m 3KB
NYTP_Cost.m 3KB
NYTP50_Cost.m 2KB
Dim_Correction.m 2KB
defPatternTimeValves.m 1KB
UDGreedy_search_50.m 1KB
Network_Cost_50_1.m 1KB
changesToCurves.m 1KB
Network_Cost_50.m 1KB
addCVPipe.m 1KB
Sorting_BN.m 920B
rep.m 882B
Network_Cost_1.m 787B
Upward_Greedy_Search.m 770B
start_toolkit.m 764B
Downward_Greedy_Search.m 660B
assignNewCurveToPump.m 648B
set_Max_Eval.m 642B
getNodeDetails.m 613B
set_dim.m 574B
initialize_xstart.m 564B
GetComputedHydraulic.m 523B
closePipesSim.m 507B
共 142 条
- 1
- 2
资源评论
Matlab科研辅导帮
- 粉丝: 1w+
- 资源: 7491
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 关于数据分析工具的问题 (Excel、PowerBI-Tableau、R-Python)-教程案例分享.zip
- jqueryUI管理后台+WeiXinApp微信小程序+uni例子内容 参数例子,学习用
- 基于聚类分析分批训练的BP神经网络回归分析
- 计算机大类学生课程实验心得、案例-基于Python 的图像处理实验.zip
- CocosDashboard-v2.1.3-win-042311.exe
- vue3-admin-master-后台管理平台模板.zip
- 基于yolov5和deepsort算法的车辆检测项目源码+数据集(高分项目).zip
- 使用Python的requests库和BeautifulSoup库进行网页爬取的示例案例
- 蓝色个人主页接单HTML源码.zip
- 基于YOLOv5+Deepsort实现车辆行人追踪和计数(完整源码+说明文档+数据).zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功