999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Fortran與VB混編的水庫(kù)群聯(lián)合優(yōu)化調(diào)度系統(tǒng)研究

2015-03-18 06:29:54齊云飛
黑龍江水利科技 2015年6期
關(guān)鍵詞:可視化界面優(yōu)化

齊云飛,胡 凡

(1.遼寧省水利水電勘測(cè)設(shè)計(jì)研究院規(guī)劃分院,沈陽(yáng)110006;2.遼寧省東水西調(diào)工程建設(shè)局,沈陽(yáng)110003)

基于Fortran與VB混編的水庫(kù)群聯(lián)合優(yōu)化調(diào)度系統(tǒng)研究

齊云飛1,胡 凡2

(1.遼寧省水利水電勘測(cè)設(shè)計(jì)研究院規(guī)劃分院,沈陽(yáng)110006;2.遼寧省東水西調(diào)工程建設(shè)局,沈陽(yáng)110003)

介紹了Visual Basic與Fortran兩種語(yǔ)言混合編程的基本方法,研究并解決了兩種語(yǔ)言之間結(jié)構(gòu)體數(shù)組傳遞的技術(shù)關(guān)鍵。建立基于Fortran語(yǔ)言的水庫(kù)群聯(lián)合優(yōu)化調(diào)度模型,并采用粒子群優(yōu)化算法進(jìn)行求解。最后結(jié)合了VB人機(jī)交互界面的優(yōu)點(diǎn)和Fortran在數(shù)值運(yùn)算方面的長(zhǎng)處,實(shí)現(xiàn)水庫(kù)群聯(lián)合優(yōu)化調(diào)度計(jì)算數(shù)據(jù)輸入輸出的可視化。

Fortran語(yǔ)言;Visual Basic語(yǔ)言;水庫(kù)群聯(lián)合調(diào)度;粒子群優(yōu)化算法;系統(tǒng)開(kāi)發(fā)

1 Visual Basic與Fortran的混合編程的實(shí)現(xiàn)原理

Fortran編程語(yǔ)言具有數(shù)值計(jì)算與數(shù)學(xué)分析能力強(qiáng)的特點(diǎn),并且結(jié)構(gòu)層次清楚、運(yùn)行計(jì)算穩(wěn)定可靠,在數(shù)學(xué)與工程計(jì)算領(lǐng)域得到廣泛應(yīng)用。但是,可視化編程對(duì)于Fortran編程語(yǔ)言始終存在難度較大的問(wèn)題。Visual Basic編程語(yǔ)言在可視化編程方面較為簡(jiǎn)單,容易實(shí)現(xiàn),編制的人機(jī)交互界面友好并且有效,在Windows系統(tǒng)下的可視化界面設(shè)計(jì)應(yīng)用較為廣泛。Fortran和Visual Basic一樣來(lái)自微軟公司開(kāi)發(fā)的編程環(huán)境,兩種語(yǔ)言混合編程具有較好的基礎(chǔ)。

因此,兩者結(jié)合,在Windows系統(tǒng)下對(duì)Visual Basic和Fortran進(jìn)行混合編程,既可以利用VB界面設(shè)計(jì)和圖形開(kāi)發(fā)功能設(shè)計(jì)的優(yōu)勢(shì),設(shè)計(jì)出出友好的數(shù)據(jù)輸入界面平臺(tái),又可以利用該界面在計(jì)算水庫(kù)興利調(diào)節(jié)時(shí)調(diào)用Fortran程序進(jìn)行科學(xué)計(jì)算,將計(jì)算結(jié)果以可視化數(shù)據(jù)及圖形的形式顯示在Visual Basic開(kāi)發(fā)界面上,通過(guò)數(shù)值計(jì)算、交互式數(shù)據(jù)輸入、輸出和可視化功能所集成的混合編程技術(shù),建立水庫(kù)群聯(lián)合優(yōu)化調(diào)度系統(tǒng)。

1.1 利用visual fortran建立DLL

Visual Basic設(shè)計(jì)界面程序,調(diào)用Fortran語(yǔ)言程序編譯的動(dòng)態(tài)鏈接庫(kù)(DLL,Dynamic-Link Library)。Fortran程序編譯的動(dòng)態(tài)鏈接庫(kù),通過(guò)參數(shù)傳遞,從而實(shí)現(xiàn)數(shù)據(jù)的變換。新建以工程命名的工程,類(lèi)型為Dynamic-Link Library0。將原Fortran編寫(xiě)的源程序插入工程,或者在工程中加入一個(gè)只含有函數(shù)或子程序的Fortran程序,編譯并生成DLL。生成的函數(shù)或子程序如被調(diào)用,必須加以聲明,從而標(biāo)識(shí)在生成的DLL中,這些函數(shù)或子程序可被調(diào)用。

1.2 利用VB調(diào)用Fortran DLL

Visual Basic設(shè)計(jì)界面程序調(diào)用動(dòng)態(tài)鏈接庫(kù)可以采用上述方法,也可使用其他方法。在調(diào)用Fortran語(yǔ)言中的動(dòng)態(tài)鏈接庫(kù)前,被調(diào)用的動(dòng)態(tài)鏈接庫(kù)需要被聲明。調(diào)用過(guò)程中需要保證傳遞參數(shù)類(lèi)型的一致性,這樣才能保證Fortran DLL被Visual Basic設(shè)計(jì)界面正確調(diào)用。因?yàn)镕ortran和Visual Basic兩種語(yǔ)言在定義數(shù)據(jù)類(lèi)型時(shí),存在不一致性,所以需要將Fortran程序的參數(shù)類(lèi)型在Visual Basic的Declare語(yǔ)句中的參數(shù)列表中,與Visual Basic實(shí)現(xiàn)正確對(duì)應(yīng)。傳遞數(shù)組參數(shù)時(shí),還需要在Visual Basic參數(shù)列表的對(duì)應(yīng)位置放上數(shù)組的第一個(gè)元素作為參數(shù)[1]。

2 水庫(kù)群聯(lián)合優(yōu)化調(diào)度模型及算法

2.1 粒子群優(yōu)化算法基本原理

粒子群優(yōu)化算法模型里的每個(gè)粒子都有位置和速度這兩個(gè)因素。每個(gè)粒子對(duì)當(dāng)前的最優(yōu)粒子具有一個(gè)趨勢(shì),并在解空間中進(jìn)行搜索。粒子群優(yōu)化算法中的每次迭代的過(guò)程不是隨機(jī)進(jìn)行的,而是根據(jù)較優(yōu)的解對(duì)最優(yōu)解進(jìn)行搜索。

搜索過(guò)程中粒子的速度和位置按公式(1)和(2)進(jìn)行更新:

式中:i=1,2,…,m,m為種群中粒子個(gè)數(shù);j=1,2,…,n,n為空間向量的維數(shù);c1,c2為學(xué)習(xí)因子,均為非負(fù)實(shí)數(shù)通常令C1=C2=2;r1,r2為[0,1]區(qū)間內(nèi)的隨機(jī)數(shù);vij為粒子i的速度,vij∈[-vimax,vimax]。

粒子當(dāng)前的位置需要通過(guò)修正最大速度vmax來(lái)實(shí)現(xiàn),粒子可能因?yàn)関max過(guò)大而錯(cuò)過(guò)最優(yōu)解;相反可能會(huì)因?yàn)関max過(guò)小,而使整體算法搜索速度降低,影響算法效率,尤其當(dāng)粒子處于某一局部最優(yōu)解附近時(shí),可能因?yàn)関max過(guò)小而于陷入局部最優(yōu)解,粒子群算法的流程如圖1:

圖1 粒子群算法流程圖

2.2 聯(lián)合調(diào)度規(guī)則

水庫(kù)在供水的同時(shí),需要保證水庫(kù)下游河道的最小生態(tài)流量要求,在滿(mǎn)足最小環(huán)境流量的前提下進(jìn)行水庫(kù)直供及下游供水。水庫(kù)各項(xiàng)供水保證率及最大破壞深度見(jiàn)表1。

表1 各供水用戶(hù)供水保證率及破壞深度

各水庫(kù)在聯(lián)合調(diào)度時(shí),按照供水調(diào)度圖及調(diào)水調(diào)度圖進(jìn)行調(diào)度,以水庫(kù)時(shí)段初的蓄水位S(t)所在調(diào)度圖區(qū)域?yàn)橐罁?jù),判斷當(dāng)前時(shí)段水庫(kù)應(yīng)該加大供水、限制供水、正常供水或棄水。

2.3 目標(biāo)函數(shù)與決策變量

水庫(kù)聯(lián)合優(yōu)化調(diào)度模型以多年平均供水量最大且缺水量和棄水量最小為目標(biāo)函數(shù),各供水用戶(hù)需滿(mǎn)足供水保證率及破壞深度要求。模型應(yīng)以各用戶(hù)

的供水限制線及調(diào)水限制線為決策標(biāo)量,在滿(mǎn)足上述調(diào)度規(guī)則的前提下進(jìn)行優(yōu)化實(shí)現(xiàn)。

3 應(yīng)用實(shí)例——遼寧省北線水庫(kù)群調(diào)度系統(tǒng)開(kāi)發(fā)

3.1 系統(tǒng)組成

水庫(kù)群聯(lián)合調(diào)度系統(tǒng)由人機(jī)交互界面、調(diào)度模型庫(kù)和數(shù)據(jù)庫(kù)組成。系統(tǒng)組成示意圖見(jiàn)圖2:

圖2 北線水庫(kù)群聯(lián)合調(diào)度系統(tǒng)組成示意圖

數(shù)據(jù)庫(kù)為調(diào)度計(jì)算提供基本數(shù)據(jù)資料,計(jì)算最終結(jié)果也保存其中。水庫(kù)基本資料數(shù)據(jù)庫(kù)包括:水位~庫(kù)容曲線、水位~面積曲線、水庫(kù)特征水位參數(shù)表、蒸發(fā)滲漏損失系數(shù)等;水文徑流數(shù)據(jù)庫(kù)存儲(chǔ)各流域各區(qū)間天然徑流長(zhǎng)系列值及位置示意圖;用水戶(hù)需水?dāng)?shù)據(jù)庫(kù)存儲(chǔ)各流域區(qū)間用水戶(hù)的蓄水量及要求的供水保證率;調(diào)度數(shù)據(jù)庫(kù)存儲(chǔ)優(yōu)化后的水庫(kù)調(diào)度圖以及水庫(kù)群模擬優(yōu)化調(diào)度的結(jié)果[2]。

3.2 建立優(yōu)化調(diào)度模型庫(kù)

根據(jù)不同要求,選取不同目標(biāo)的權(quán)重,建立數(shù)學(xué)模型,并采用PSO優(yōu)化求解方法,用以水庫(kù)調(diào)度圖的尋優(yōu)計(jì)算,進(jìn)行水庫(kù)群聯(lián)合優(yōu)化模擬調(diào)度,并輸出各流域各用水戶(hù)的供水狀態(tài)以及水庫(kù)的水位狀態(tài),供研究人員對(duì)整個(gè)供水系統(tǒng)進(jìn)行綜合效益分析,指導(dǎo)規(guī)劃人員進(jìn)行方案的比選,對(duì)供水系統(tǒng)內(nèi)部水庫(kù)的運(yùn)行參數(shù)進(jìn)行調(diào)整,以獲得最優(yōu)方案。

3.3 人機(jī)交互式界面

通過(guò)界面可以導(dǎo)入流域的徑流及需水量資料,并修改水庫(kù)的特征水位、各用水戶(hù)的用水保證率、已經(jīng)PSO粒子群算法的優(yōu)化參數(shù),通過(guò)水庫(kù)調(diào)度計(jì)算,在界面輸出各水庫(kù)優(yōu)化調(diào)度圖,并可打印輸出水庫(kù)供水多年平均成果統(tǒng)計(jì)表。系統(tǒng)運(yùn)行于Windows操作系統(tǒng)之上,由菜單欄、工作區(qū)、狀態(tài)欄等組成,界面如圖3所示:

圖3 水庫(kù)群聯(lián)合供水調(diào)度系統(tǒng)界面

菜單欄包括水庫(kù)調(diào)度規(guī)則優(yōu)化、水庫(kù)優(yōu)化調(diào)度模擬、打印、幫助、退出五個(gè)一級(jí)菜單。“水庫(kù)調(diào)度規(guī)則優(yōu)化”菜單用于對(duì)水庫(kù)調(diào)度圖進(jìn)行優(yōu)化計(jì)算;“水庫(kù)優(yōu)化調(diào)度模擬”菜單用于水庫(kù)采用已優(yōu)化的調(diào)度圖進(jìn)行長(zhǎng)系列模擬優(yōu)化調(diào)度;“幫助”菜單提供調(diào)度幫助文本;“退出”菜單用于程序的退出。

4 結(jié) 論

1)研究過(guò)程中發(fā)現(xiàn),粒子群算法能以較高效率搜索函數(shù)的全局最優(yōu)解;本聯(lián)合調(diào)度系統(tǒng)中以調(diào)度圖中的供水調(diào)度線和調(diào)水控制線為決策變量,采用粒子群算法,得到最優(yōu)的水庫(kù)群聯(lián)合調(diào)度圖,較傳統(tǒng)的調(diào)度圖算法,無(wú)需進(jìn)行重復(fù)計(jì)算及經(jīng)驗(yàn)修正。在綜合利用水庫(kù)的調(diào)度中,能搜索得出調(diào)度圖的非劣解集,兼顧多個(gè)調(diào)度目標(biāo)。

2)調(diào)度系統(tǒng)充分利用Fortran在數(shù)值計(jì)算方面和VB在可視化方面的優(yōu)勢(shì),實(shí)現(xiàn)程序資源的共享和可視化,節(jié)約時(shí)間和提高效率。原始數(shù)據(jù)由VB界面直接輸人或更改(前處理),通過(guò)調(diào)用Fortran動(dòng)態(tài)鏈接庫(kù)實(shí)現(xiàn)計(jì)算功能(后臺(tái)處理),將計(jì)算成果傳回VB程序并且利用VB可視化功能直觀顯示和分析。

3)結(jié)合實(shí)際算例的研究表明:基于VB與Fortran混合編程的水庫(kù)群調(diào)度系統(tǒng)有一定的實(shí)用性,且在數(shù)據(jù)輸入/輸出和處理方面具有相當(dāng)?shù)膬?yōu)勢(shì)。

[1]李學(xué)哲,白云,陳國(guó)新.Fortran 90與VB混合編程技術(shù)的研究與實(shí)現(xiàn)[J].蘇州科技學(xué)院學(xué)報(bào),2008(04):76-80.

[2]杜文娟,李建東.用VB和Fortran語(yǔ)言混合編程開(kāi)發(fā)氣象軟件[J].氣象與環(huán)境科學(xué),2007(04):88-90.

Research on Optimal Scheduling System based on Fortran and VB Combined w ith Reservoir Group

QIYun-fei1and HU Fan2
(1.Planning Institute of LiaoningWater Conservancy&Hydroelectric Power Investigation,Design and Research Institute,Shenyang 110006,China;2.Liaoning ProvincialWater from East to West Project Construction Bureau,Shenyang 110003,China)

The basic method to mix programming in two languages of Visual Basic and Fortran is introduced in the paper,researching and solving the technological key of array transfer of structures between two languages.A optimal schedulingmodel combined with reservoir based on Fortran language is founded and the particle swarm optimization algorithm is adopted to solve.Finally,the advantage of human-computer interaction interface of VB and the strongpoint of numerical calculation of Fortran are combined,realizing the visualization of optimal scheduling calculation data input and output joint with reservoir group.

Fortran language;Visual Basic language;combined scheduling of reservoir group;particle swarm optimization algorithm;system development

TV697.12

B

2014-10-31

齊云飛(1978-),男,滿(mǎn)族,遼寧開(kāi)原人,高級(jí)工程師,從事規(guī)劃、水資源配置與水利經(jīng)濟(jì)專(zhuān)業(yè);胡凡(1956-),男,廣西桂林人,高級(jí)工程師。

1007-7596(2015)06-0001-03

猜你喜歡
可視化界面優(yōu)化
基于CiteSpace的足三里穴研究可視化分析
超限高層建筑結(jié)構(gòu)設(shè)計(jì)與優(yōu)化思考
基于Power BI的油田注水運(yùn)行動(dòng)態(tài)分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
民用建筑防煙排煙設(shè)計(jì)優(yōu)化探討
關(guān)于優(yōu)化消防安全告知承諾的一些思考
一道優(yōu)化題的幾何解法
國(guó)企黨委前置研究的“四個(gè)界面”
基于CGAL和OpenGL的海底地形三維可視化
“融評(píng)”:黨媒評(píng)論的可視化創(chuàng)新
基于FANUC PICTURE的虛擬軸坐標(biāo)顯示界面開(kāi)發(fā)方法研究
主站蜘蛛池模板: 日本人妻一区二区三区不卡影院| 九色视频最新网址| 很黄的网站在线观看| 亚洲精品动漫| 亚洲一级色| 91毛片网| 精品福利视频网| 在线观看无码av五月花| 欧美日韩国产精品va| 91麻豆国产精品91久久久| 国产美女精品一区二区| 九九这里只有精品视频| 国产91精选在线观看| 亚洲激情99| 69精品在线观看| 一区二区三区在线不卡免费| 久久综合丝袜长腿丝袜| 欧美一级高清片久久99| 国产精品三级专区| 中文字幕乱码二三区免费| 亚洲三级色| 国产91高清视频| 亚洲综合一区国产精品| 欧美中出一区二区| 中字无码精油按摩中出视频| 欧美一级色视频| 久久综合一个色综合网| 一级不卡毛片| 免费xxxxx在线观看网站| 国产www网站| 91亚洲视频下载| 在线免费亚洲无码视频| 国产91麻豆免费观看| 国产原创自拍不卡第一页| 色网站在线免费观看| 欧美三级自拍| 成人免费网站在线观看| 最新国产成人剧情在线播放| 久久窝窝国产精品午夜看片| 国模极品一区二区三区| 国产精品偷伦在线观看| 99热线精品大全在线观看| 国产成人精品在线| 日韩免费毛片| 午夜毛片免费观看视频 | 国产欧美日韩va| 久久亚洲国产视频| jijzzizz老师出水喷水喷出| 国产成人在线小视频| 中文字幕乱妇无码AV在线| 97se亚洲综合在线韩国专区福利| 亚洲日韩第九十九页| 免费国产在线精品一区| 99久久精品国产自免费| 二级特黄绝大片免费视频大片| 秘书高跟黑色丝袜国产91在线| 欧美在线免费| 日韩成人免费网站| 国产成人AV男人的天堂| 91精品伊人久久大香线蕉| 欧美高清国产| 福利一区在线| 狠狠综合久久久久综| 毛片免费试看| 亚洲乱强伦| 美女无遮挡免费网站| 国产成人精品在线1区| 亚洲AV无码乱码在线观看裸奔| 国产第三区| 国产一区二区三区精品欧美日韩| 久久综合色天堂av| 亚洲国产中文精品va在线播放| 国产a网站| 午夜啪啪网| 97视频免费在线观看| 在线观看欧美精品二区| 国产网站一区二区三区| 国产欧美日韩91| 影音先锋亚洲无码| 欧美一级片在线| 久久99久久无码毛片一区二区| 无码日韩视频|