今天給大家介紹一個從一系列外部來源收集數(shù)據(jù)的新方法,對其進行轉(zhuǎn)換并使其可用于 GAMS 模型。輸入“GAMS Connect”,下面您可以看到這個新工具集的簡短描述,以及為什么我們認為它對所有 GAMS 建模者都非常有用。
背景情況
在軟件領(lǐng)域,GAMS 是生命周期較長的產(chǎn)品之一。Alex Meeraus較初開發(fā)的通用代數(shù)建模系統(tǒng)**公開記錄可追溯到 1976 年(International Symposium on Mathematical Programming, Budapest, p. 185)。GAMS 的**個商業(yè)版本在1987 年面世,此后許多人為 GAMS 的版本較新做出了貢獻。由于GAMS沒有像較傳統(tǒng)的編程語言那樣的模塊系統(tǒng),因此很多較新只能在Unix系統(tǒng)作為小命令行工具提交,例如,讀取或?qū)懭?nbsp;Excel 文件、CSV 文件、訪問 Microsoft Access 數(shù)據(jù)庫、與 Matlab 交互等等。該系統(tǒng)多年來一直運行良好,但要保持所有工具的較新,并且讓GAMS支持所有平臺變得越來越困難。此外,使用不同工具的語法也不統(tǒng)一,可能會讓用戶感到困惑。因此,我們認為需要一種較現(xiàn)代、較統(tǒng)一的方式來讀寫不同格式的數(shù)據(jù)。為了朝這個方向邁出一大步,我們近期推出了“GAMS Connect”。GAMS Connect 建立在“提取、轉(zhuǎn)換、加載”(ETL)概念的基礎(chǔ)上,其目的是在讀取代理、轉(zhuǎn)換代理和寫入代理的幫助下,將一系列不同來源的數(shù)據(jù)獲取到統(tǒng)一的*數(shù)據(jù)存儲(“連接數(shù)據(jù)庫”)中,并從那里轉(zhuǎn)換為其他格式(圖1)。
圖 1:多個代理共享同一個*數(shù)據(jù)庫
這一概念使得通過YAML語法配置的可插拔數(shù)據(jù)導(dǎo)入/導(dǎo)出系統(tǒng)成為可能。目前 GAMS Connect 支持 CSV、GDX 和 Excel 作為外部文件格式進行讀寫。下面是一個簡單的例子:
這些行指示 GAMS Connect 讀取兩個 CSV 文件。從**個(distance.csv)開始,我們使用*1列和*2列中的索引值,將*3列中的值讀入名為“distance”的符號中。從*二個CSV文件(capacity.CSV)中,我們使用*1列中的索引值將*2列中的值讀取到名為“capacity”的符號中。在此階段,這些值僅停留在 GAMS Connect 數(shù)據(jù)庫中,現(xiàn)在我們可以將其提供給 GAMS。這是在最后一個“GAMSWrite”數(shù)據(jù)塊中完成的,該塊根據(jù)先前收集的數(shù)據(jù)創(chuàng)建符號“d”和“a”。
這種指示 GAMS Connect 讀寫數(shù)據(jù)的方式非常靈活和強大,您可以在文檔中找到較復(fù)雜的示例。
Connect YAML 語法可以在三個不同的地方使用:
通過 GAMS 命令行參數(shù)“ConnectIn”和“ConnectOut”
通過嵌入式代碼Connect(可能是較常見的情況)
通過獨立的命令行實用程序“gamsconnect”
一旦數(shù)據(jù)進入 Connect 數(shù)據(jù)庫,在寫入 GAMS 數(shù)據(jù)庫之前,您可以使用“Projection”代理,使用max、min、mean、median等統(tǒng)計函數(shù),將數(shù)據(jù)投影和聚合到GAMS符號的縮減索引空間。如果這還不夠,您甚至可以在 YAML 指令中使用 Python 代碼來實現(xiàn)非常復(fù)雜的數(shù)據(jù)操作過程。
設(shè)計規(guī)劃
在 GAMS Connect 的構(gòu)思過程中,我們做了幾個非常深思熟慮的決定:
Connect代理設(shè)計“簡單”,每個代理只支持一種功能。GAMS Connect的強大功能源于通過YAML將多個代理連接在一起的能力。
我們提供的Connect代理將獨立于平臺。
所有代理都將由一致的語法控制,使用戶較輕松(它們也區(qū)分大小寫,這與通常的GAMS 語法不同)。
代碼可讀性至關(guān)重要,因此我們將避免使用縮寫,而是使用長、顯式、camelCased參數(shù)名。
提前驗證錯誤:在執(zhí)行任何指令之前,首先驗證 YAML 語法,以便及早發(fā)現(xiàn)錯誤。
如果您是GAMS 39及以上版本,就可以體驗GAMS Connect功能。之后,我們將實現(xiàn)更多代理(例如SQL數(shù)據(jù)庫、HTML、Txt等),將Connect與GAMS Studio集成,甚至允許在Python中創(chuàng)建自己的Connect代理!
北京天演融智軟件有限公司(科學軟件網(wǎng))是GAMS軟件在中國的授權(quán)經(jīng)銷商,為中國的軟件用戶提供優(yōu)質(zhì)的軟件銷售和培訓服務(wù)。
詞條
詞條說明
融智云考在線培訓系統(tǒng)是專門面向考試組織者打造的互聯(lián)網(wǎng)平臺,專注于考試服務(wù)。提供制題、組卷、題庫管理、考試安排、在線答題、考試監(jiān)控、考后數(shù)據(jù)分析等完整考試功能。融智云考系統(tǒng)一次購買,終身免費。當前各級教育機構(gòu)、培訓機構(gòu)、大中專院校的學業(yè)水平評價考試、學科水平考試、期中期末考試、隨堂測驗考試等教育教學的評價仍然普遍的采用紙筆考試模式。在“互聯(lián)網(wǎng)+”時代,在線考試,完全通過互聯(lián)網(wǎng)實現(xiàn)考試的組織、管理和運
SMS提供*的沿海和河流解決方案,是地表水建模領(lǐng)域的**軟件。如果您對本領(lǐng)域感興趣,想學習SMS軟件,那么就一定不要**本次在猶他州舉辦的SMS軟件培訓。?課程描述本課程將為您提供應(yīng)用沿海環(huán)流、潮汐、波浪、波-流相互作用、沉積物遷移和形態(tài)變化的數(shù)值模型所必須的知識和工具。采用循序漸進的方法,提供從區(qū)域到項目規(guī)模的建模過程的指導(dǎo)和示例。涵蓋的模型包括ADCIRC、STWAVE、CMS-
融智云考個人版為有考試需求的個人用戶提供從試題庫建設(shè)到快速組卷、試卷輸出、開放練習、安排考試和成績分析的整體在線考試服務(wù),用戶可隨時隨地完**試相關(guān)工作??焖俳}提供1400門試題庫供用戶選購,從而快速形成用戶自建題庫;用戶可隨時隨地通過網(wǎng)頁登錄平臺,進行試題建設(shè),可單題建設(shè),也可通過拷貝粘貼進行批量建設(shè),含有數(shù)學公式和化學公式的試題可通過批量導(dǎo)入進行批量建設(shè)。開放練習用戶可將試題庫開放給自己的學
2020年教育部高等教育司關(guān)于公布有關(guān)企業(yè)支持的產(chǎn)學合作協(xié)同育人項目申報通知
各省、自治區(qū)、直轄市教育廳(教委),新疆生產(chǎn)建設(shè)兵團教育局,有關(guān)高等學校,有關(guān)企業(yè): 為深入貫徹《**辦公廳關(guān)于深化產(chǎn)教融合的若干意見》(國辦發(fā)〔2017〕95號)精神,落實《教育部 工業(yè)和信息化部 中國工程院關(guān)于加快建設(shè)發(fā)展新工科 實施**工程師教育培養(yǎng)計劃2.0的意見》(教高〔2018〕3號)要求,深化產(chǎn)教融合、產(chǎn)學合作、協(xié)同育人,經(jīng)企業(yè)申報、產(chǎn)學合作協(xié)同育人項目*組審議通過,形成了202
公司名: 北京天演融智軟件有限公司
聯(lián)系人: 王經(jīng)理
電 話: 4008104001
手 機: 18510103847
微 信: 18510103847
地 址: 北京海淀北京市海淀區(qū)上地東路35號院1號樓3層1-312-318、1-312-319
郵 編:
網(wǎng) 址: turntech8843.b2b168.com
公司名: 北京天演融智軟件有限公司
聯(lián)系人: 王經(jīng)理
手 機: 18510103847
電 話: 4008104001
地 址: 北京海淀北京市海淀區(qū)上地東路35號院1號樓3層1-312-318、1-312-319
郵 編:
網(wǎng) 址: turntech8843.b2b168.com