實(shí)戰(zhàn)AI大模型輔助編程:新安江水文模型和SCE-UA優(yōu)化算法的C#語言實(shí)現(xiàn)
新安江水文模型與 SCE-UA 優(yōu)化算法是水文學(xué)和水資源管理領(lǐng)域的重要工具,二者結(jié)合使用可以有效模擬流域的水文過程并優(yōu)化模型參數(shù)。
本文主要記錄使用DeepSeek和通義千問大模型, 把新安江水文模型和SCE-UA優(yōu)化算法的C++程序移植到C#程序的過程。
C++版本是河海大學(xué)水文水資源系盧家波博士生開發(fā)的,https://github.com/lujiabo98/XAJ-SCEUA
這個(gè)程序?qū)懙煤芎茫恢毕胍浦驳紺#版本,方便學(xué)習(xí)使用。
【水文模型】10 新安江模型C++實(shí)現(xiàn) https://blog.csdn.net/weixin_43012724/article/details/127096422
【PEST++】02 新安江模型參數(shù)自動率定 https://blog.csdn.net/weixin_43012724/article/details/103968567
【水文模型】09 新安江模型SCE-UA算法自動率定 https://blog.csdn.net/weixin_43012724/article/details/123183366
其實(shí)chatGPT和OpenAI已經(jīng)出現(xiàn)有一段時(shí)間,但是國內(nèi)訪問這些AI網(wǎng)站并不方便,無法進(jìn)行愉快的體驗(yàn)。
Deepseek 的出現(xiàn),點(diǎn)燃了2025年國內(nèi)AI大模型的第一團(tuán)火,可以說今年是中國AI應(yīng)用元年,
0)軟件環(huán)境:Windows 10, Visual Studio 2022
1)從github.com下載C++程序,編譯運(yùn)行一次通過
2)訪問 deepseek.com ,把 sceua.h, sceua.cpp 復(fù)制過去,注明轉(zhuǎn)換成C#程序
可以看到整個(gè)轉(zhuǎn)換過程基本可以,并給出了轉(zhuǎn)換的思路,和人工思考過程基本類似,
當(dāng)中幾個(gè)比較長的函數(shù)如cce函數(shù),沒有給出轉(zhuǎn)換
嘗試多次之后,因?yàn)閐eepseek一直提示服務(wù)器繁忙,轉(zhuǎn)而使用通義千問大模型,據(jù)說內(nèi)置連接了deepseek大模型
3)通義千問大模型(https://tongyi.aliyun.com/)可以容忍的輸入文本似乎沒有那么長,但是可以分段輸入,轉(zhuǎn)換內(nèi)容基本正確
C#程序和C++程序類成員變量有些不一樣,比如C++加了前綴 m_nXXX, 為了保持一致方便觀察,
我加了二個(gè)轉(zhuǎn)換限制:變量名不變 逐行轉(zhuǎn)換
4)這次我專門轉(zhuǎn)換比較長的程序 cce() 等,基本轉(zhuǎn)換出來了,還不知道是否有問題,目測可以用
5)經(jīng)過拆分篇幅,幾次分段轉(zhuǎn)換,終于把 sceua.h, sceua.cpp轉(zhuǎn)換成功,當(dāng)中有幾個(gè)小錯(cuò)誤,修改一下即可
6) 要檢驗(yàn)sce-ua算法是否可以運(yùn)行,還需要移植新安江程序,SCEUA程序內(nèi)部已經(jīng)包含了新安江模型程序,
接下來就是把新安江模型程序里面的幾個(gè)類一個(gè)個(gè)轉(zhuǎn)換過來即可。
7)經(jīng)過重復(fù)的復(fù)制C++程序并依靠通義千問轉(zhuǎn)換過程,終于完成所有的轉(zhuǎn)換。
8)工程文件里面已經(jīng)提供了測試數(shù)據(jù),且這個(gè)程序是命令行方式運(yùn)行,所以很方便運(yùn)行起來。
經(jīng)過運(yùn)行對比,結(jié)果基本正確,參數(shù)有改變。轉(zhuǎn)換后的C#程序,因?yàn)槭褂枚嗪瞬⑿写a,運(yùn)行時(shí)間比C++更快。

以上就是我借助AI來轉(zhuǎn)換程序的過程,大概一個(gè)晚上完成,如果要手工轉(zhuǎn)換,可能需要一天時(shí)間才能做完。
我想如果轉(zhuǎn)換成python程序,應(yīng)該也是可以的,期待有人去嘗試一下。
最后代碼全部上傳:http://www.timegis.com/opensource.htm
也可以在gitee.com下載整個(gè)源程序:https://gitee.com/timegis/sceuaxaj
要了解更多,請?jiān)L問 www.WaterGIS.cn 和 QQ群 722489551
posted on 2025-02-18 23:23 時(shí)空地圖-TimeGIS-com 閱讀(665) 評論(0) 收藏 舉報(bào)
浙公網(wǎng)安備 33010602011771號