丰台管理工具软件费用
作为一家致力于提供科研软件及相关服务的公司,北京天演融..顺义Visual Modflow价格
顺义Visual Modflow价格在当今科技高速发展的时代,科研软..海淀Visual Modflow电话
海淀Visual ModflowVisual Modflow 是一款**上广泛认可的三..Stata 18软件较新应用视频教程
Stata 18已经发布,之前StataCorp LLC录制了9个Stata软件操..CYMCAP(CYME)软件基础应用培训
CYMCAP致力于计算电力电缆装置的载流量和温度升高数据,其..石景山管理工具软件费用
石景山管理工具软件费用在当今数字化时代,管理工具软件已..使用AquaChem管理和解释水质数据培训
AquaChem是一款用于水质数据分析、绘图和报告生成的综合系..平谷GAMS价格
平谷GAMS价格在科学软件网上,我们引入了众多的科研软件,..snapgene价格
SnapGene价格SnapGene是一款备受科研人员欢迎的专为分子生..平谷SPSSPRO流程
平谷SPSSPRO流程科学软件网旗下的SPSSPRO是一款的在线数据..
今天给大家介绍一个从一系列外部来源收集数据的新方法,对其进行转换并使其可用于 GAMS 模型。输入“GAMS Connect”,下面您可以看到这个新工具集的简短描述,以及为什么我们认为它对所有 GAMS 建模者都非常有用。
背景情况
在软件领域,GAMS 是生命周期较长的产品之一。Alex Meeraus较初开发的通用代数建模系统**公开记录可追溯到 1976 年(International Symposium on Mathematical Programming, Budapest, p. 185)。GAMS 的**个商业版本在1987 年面世,此后许多人为 GAMS 的版本更新做出了贡献。由于GAMS没有像更传统的编程语言那样的模块系统,因此很多更新只能在Unix系统作为小命令行工具提交,例如,读取或写入 Excel 文件、CSV 文件、访问 Microsoft Access 数据库、与 Matlab 交互等等。该系统多年来一直运行良好,但要保持所有工具的更新,并且让GAMS支持所有平台变得越来越困难。此外,使用不同工具的语法也不统一,可能会让用户感到困惑。因此,我们认为需要一种更现代、更统一的方式来读写不同格式的数据。为了朝这个方向迈出一大步,我们近期推出了“GAMS Connect”。GAMS Connect 建立在“提取、转换、加载”(ETL)概念的基础上,其目的是在读取代理、转换代理和写入代理的帮助下,将一系列不同来源的数据获取到统一的*数据存储(“连接数据库”)中,并从那里转换为其他格式(图1)。
图 1:多个代理共享同一个*数据库
这一概念使得通过YAML语法配置的可插拔数据导入/导出系统成为可能。目前 GAMS Connect 支持 CSV、GDX 和 Excel 作为外部文件格式进行读写。下面是一个简单的例子:
这些行指示 GAMS Connect 读取两个 CSV 文件。从**个(distance.csv)开始,我们使用*1列和*2列中的索引值,将*3列中的值读入名为“distance”的符号中。从*二个CSV文件(capacity.CSV)中,我们使用*1列中的索引值将*2列中的值读取到名为“capacity”的符号中。在此阶段,这些值仅停留在 GAMS Connect 数据库中,现在我们可以将其提供给 GAMS。这是在最后一个“GAMSWrite”数据块中完成的,该块根据先前收集的数据创建符号“d”和“a”。
这种指示 GAMS Connect 读写数据的方式非常灵活和强大,您可以在文档中找到更复杂的示例。
Connect YAML 语法可以在三个不同的地方使用:
通过 GAMS 命令行参数“ConnectIn”和“ConnectOut”
通过嵌入式代码Connect(可能是较常见的情况)
通过独立的命令行实用程序“gamsconnect”
一旦数据进入 Connect 数据库,在写入 GAMS 数据库之前,您可以使用“Projection”代理,使用max、min、mean、median等统计函数,将数据投影和聚合到GAMS符号的缩减索引空间。如果这还不够,您甚至可以在 YAML 指令中使用 Python 代码来实现非常复杂的数据操作过程。
设计规划
在 GAMS Connect 的构思过程中,我们做了几个非常深思熟虑的决定:
Connect代理设计“简单”,每个代理只支持一种功能。GAMS Connect的强大功能源于通过YAML将多个代理连接在一起的能力。
我们提供的Connect代理将独立于平台。
所有代理都将由一致的语法控制,使用户更轻松(它们也区分大小写,这与通常的GAMS 语法不同)。
代码可读性至关重要,因此我们将避免使用缩写,而是使用长、显式、camelCased参数名。
提前验证错误:在执行任何指令之前,首先验证 YAML 语法,以便及早发现错误。
如果您是GAMS 39及以上版本,就可以体验GAMS Connect功能。之后,我们将实现更多代理(例如SQL数据库、HTML、Txt等),将Connect与GAMS Studio集成,甚至允许在Python中创建自己的Connect代理!
北京天演融智软件有限公司(科学软件网)是GAMS软件在中国的授权经销商,为中国的软件用户提供优质的软件销售和培训服务。
您是第3055798位访客
版权所有 ©2025 八方资源网 粤ICP备10089450号-8
北京天演融智软件有限公司 保留所有权利.
北京天演融智软件有限公司 保留所有权利.
技术支持: 八方资源网 八方供应信息 投诉举报 网站地图手机网站
微信号码
地址:北京市 海淀区 北京市海淀区上地东路35号院1号楼3层1-312-318、1-312-319
联系人:王经理女士
微信帐号:18510103847