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ā)方法研究
主站蜘蛛池模板: 欧美亚洲一区二区三区导航| 国产成人禁片在线观看| 亚洲欧美一区二区三区麻豆| 国产欧美日韩18| 久久国产V一级毛多内射| 国产自在自线午夜精品视频| 成人av手机在线观看| 久久久久88色偷偷| 91www在线观看| 91在线精品麻豆欧美在线| 欧美成人日韩| 国产区在线看| 亚洲视频色图| 成人午夜网址| 亚洲综合天堂网| 久久精品人妻中文系列| 热99re99首页精品亚洲五月天| 国产精品污视频| 91人妻日韩人妻无码专区精品| 亚洲高清无在码在线无弹窗| 色老头综合网| 亚洲欧美精品日韩欧美| 久久久久亚洲精品无码网站| 91av成人日本不卡三区| 亚洲中文字幕久久精品无码一区| 波多野结衣一二三| 69国产精品视频免费| 99爱视频精品免视看| 永久免费无码日韩视频| 亚洲精品片911| 动漫精品啪啪一区二区三区| 在线不卡免费视频| 日韩小视频在线观看| 欧美性猛交xxxx乱大交极品| 国内黄色精品| 国产在线视频福利资源站| 国产美女视频黄a视频全免费网站| 久草视频中文| 国产成人精品一区二区免费看京| 国产一区在线观看无码| 国产精品对白刺激| 亚洲欧美h| 任我操在线视频| 多人乱p欧美在线观看| 国产成人91精品| 狠狠色婷婷丁香综合久久韩国| 在线免费亚洲无码视频| 色综合a怡红院怡红院首页| 萌白酱国产一区二区| 欧美中文字幕一区二区三区| 精品伊人久久久久7777人| 国产午夜一级毛片| 毛片基地美国正在播放亚洲 | 亚洲欧美在线看片AI| 亚洲va精品中文字幕| 国产高颜值露脸在线观看| 国产成人调教在线视频| 国产精品网址你懂的| 日韩精品亚洲精品第一页| 99re热精品视频国产免费| 无码AV日韩一二三区| 久久大香伊蕉在人线观看热2| 国产毛片高清一级国语| 欧美国产在线精品17p| 精品视频在线一区| 亚洲区一区| 91国内外精品自在线播放| 国产欧美日韩一区二区视频在线| 丁香婷婷在线视频| 亚洲国产天堂久久综合226114| 伊人色在线视频| 国产av无码日韩av无码网站| 欧美精品在线看| 亚洲av日韩综合一区尤物| 欧美亚洲综合免费精品高清在线观看| 久久亚洲中文字幕精品一区 | 首页亚洲国产丝袜长腿综合| 欧美日韩国产精品综合| 成人国产精品网站在线看| 亚洲香蕉久久| 在线日韩一区二区| 国产精品美女自慰喷水|