gpt4 book ai didi

postgresql - AMPL 的相关系数

转载 作者:行者123 更新时间:2023-11-29 13:53:20 24 4
gpt4 key购买 nike

我有一个具体问题,非常感谢任何帮助。

我正在从事一个关于 AMPL(一种数学编程语言)的特定项目:我需要实现一个目标函数来最小化变量成本的风险,该函数具有成本作为参数和相关系数。

风险是使用成本方差估算的,我有相关矩阵数据。我的相关矩阵如下所示:相关系数(%)
2015
燃煤汽轮机 燃气轮机 风力 中央光伏 水力 非抽水 核 GenIII 核 GenIV 煤汽轮机 CCS
1 0.47 0 0 0 0.12 0.12 1 燃煤汽轮机
0.47 1 0 0 0 0.06 0.06 0.47 燃气轮机
0 0 1 0 0 0 0 0 风
0 0 0 1 0 0 0 0 中央光伏
0 0 0 0 1 0 0 0 水力非泵送
0.12 0.06 0 0 0 1 1 0.12 核第三代
0.12 0.06 0 0 0 1 1 0.12 第四代核
1 0.47 0 0 0 0.12 0.12 1 煤汽轮机CCS

在我的例子中,我想最小化的成本风险是燃料价格(燃料类型是相关的,相关系数每年都在变化,燃料价格取决于技术类型、省份和年份)。

我需要找到一种方法来找到在表(psgAdmin (psql) 上的数据库)中输入相关矩阵的有效方法,然后使用适当的参数来读取它们,并在我的目标函数上实现它们。

我目前的表格如下所示:

table fuel_prices "inputs/fuel_prices.tab" IN:
[province, fuel, year], fuel_price, cv_fuel_price;
read table fuel_prices;

我需要修改它以添加相关系数。

# Table for the correlation coefficients
# table fuel_prices_corr "inputs/fuel_prices_corr.tab" and IN:
# [province, year], fuel, correl_coeff1, correl_coeff2;
# read table fuel_prices_corr;

我使用的技术是从表格中提取出来的,如下: 表 generator_info "inputs/generator_info.tab"IN:
TECHNOLOGIES <- [技术],technology_id,燃料; 读取表 generator_info;

table gen_cap_cost "inputs/gen_cap_cost.tab" IN:
[technology, year], overnight_cost_yearly ~ overnight_cost, fixed_o_m_yearly ~ fixed_o_m, variable_o_m_yearly ~ variable_o_m;
read table gen_cap_cost;

table existing_plants "inputs/existing_plants.tab" IN:
EXISTING_PLANTS <- [project_id, province, technology],
ep_plant_name ~ plant_name, ep_carma_plant_id ~ carma_plant_id,
ep_capacity_mw ~ capacity_mw, ep_heat_rate ~ heat_rate, ep_cogen_thermal_demand ~ cogen_thermal_demand_mmbtus_per_mwh,
ep_vintage ~ start_year,
ep_overnight_cost ~ overnight_cost, ep_connect_cost_per_mw ~ connect_cost_per_mw, ep_fixed_o_m ~ fixed_o_m, ep_variable_o_m ~ variable_o_m,
ep_location_id;
read table existing_plants;


table new_projects "inputs/new_projects.tab" IN:
PROJECTS <- [project_id, province, technology], location_id, ep_project_replacement_id,
capacity_limit, capacity_limit_conversion, heat_rate, cogen_thermal_demand, connect_cost_per_mw;
read table new_projects;

我的目标函数如下所示:pid = project specific id,a = province,t = technology,p = PERIODS,投资期的开始以及发电厂开始运行的日期,h = study hour - 考虑的独特时间点,p = 投资期。

sum{(pid, a, t, p)in PROJECT} Gen[pid, a,t, p, h] * fuel_cost[pid,a,t,p]))

有没有人对此有任何提示,或者有使用 MPT 和相关变量的项目?

最佳答案

下面是一个表声明示例,用于读取取自 here 的二维参数 amt :

table dietAmts IN "ODBC" (ConnectionStr) "Amounts":
[NUTR, FOOD], amt;

在你的例子中,你将在关键部分有两次相同的集合,比如 [ENERGY_SOURCE, ENERGY_SOURCE],其中 ENERGY_SOURCE 是一组能源如煤汽轮机等。由于矩阵是对称的,所以只需要存储它的一半。

关于postgresql - AMPL 的相关系数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36876884/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com