异质代理资源 & 工具包
项目描述
异构代理资源与工具包(HARK)
HARK是一个用于结构化建模优化和非优化异构代理经济选择的工具包。有关HARK的使用信息,请参阅Econ-ARK网站。
Econ-ARK项目采用开放式治理模式,并由NumFOCUS提供财政赞助。请考虑捐赠以帮助该项目支付开发时间、专业服务、差旅、研讨会和其他各种需求,捐赠可享受税收减免。
本项目受行为准则约束。
问题/评论/帮助
目录
安装
通过运行以下命令从Anaconda Cloud安装:
conda install -c conda-forge econ-ark
通过运行以下命令从PyPi安装:
pip安装econ-ark
使用
我们从一个几乎是最简单的消费模型开始:一个具有CRRA效用的消费者
对除了(随机的)死亡日期之外的所有事情都有完美的预见能力。
代理的问题可以用贝尔曼形式表示为
要模拟上述问题,首先从适当的HARK
模块导入PerfForesightConsumerType
模型,然后使用适当的参数创建代理实例
import HARK
from HARK.ConsumptionSaving.ConsIndShockModel import PerfForesightConsumerType
PF_params = {
"CRRA": 2.5, # Relative risk aversion
"DiscFac": 0.96, # Discount factor
"Rfree": 1.03, # Risk free interest factor
"LivPrb": [0.98], # Survival probability
"PermGroFac": [1.01], # Income growth factor
"T_cycle": 1,
"cycles": 0,
"AgentCount": 10000,
}
# Create an instance of a Perfect Foresight agent with the above paramaters
PFexample = PerfForesightConsumerType(**PF_params)
一旦模型创建完成,请使用.solve()
让代理解决问题
# Tell the agent to solve the problem
PFexample.solve()
解决问题将填充代理的.solution
列表属性,其中包含每个时期的解决方案。在无限期模型的情况下,列表中只有一个元素,位于索引零处。
您可以从解决方案的.cFunc
属性检索解决方案的消费函数
# Retrieve the consumption function of the solution
PFexample.solution[0].cFunc
或者您可以从解决方案的.hNrm
属性检索按永久性收入归一化的人均财富的解决值
# Retrieve the solved value for human wealth normalized by permanent income
PFexample.solution[0].hNrm
有关上述示例的详细说明,请参阅演示笔记本A Gentle Introduction to HARK。
有关更多示例,请访问econ-ark/DemARK存储库。
引用
如果您在您的工作或研究中使用Econ-ARK,请引用我们的数字对象标识符或复制以下BibTex。
[1] Carroll, Christopher D, Palmer, Nathan, White, Matthew N., Kazil, Jacqueline, Low, David C, & Kaufman, Alexander. (2017, October 3). econ-ark/HARK
BibText
@InProceedings{carroll_et_al-proc-scipy-2018,
author = { {C}hristopher {D}. {C}arroll and {A}lexander {M}. {K}aufman and {J}acqueline {L}. {K}azil and {N}athan {M}. {P}almer and {M}atthew {N}. {W}hite },
title = { {T}he {E}con-{A}{R}{K} and {H}{A}{R}{K}: {O}pen {S}ource {T}ools for {C}omputational {E}conomics },
booktitle = { {P}roceedings of the 17th {P}ython in {S}cience {C}onference },
pages = { 25 - 30 },
year = { 2018 },
editor = { {F}atih {A}kici and {D}avid {L}ippa and {D}illon {N}iederhut and {M} {P}acer },
doi = { 10.25080/Majora-4af1f417-004 }
}
有关认可Econ-ARK的更多信息,请访问我们的网站。
支持
发布类型
- 当前:处于积极开发中。当前版本的代码位于其主版本号的分支上(例如,v0.10.x)。
- 开发:目前处于积极开发中。当前版本代码正在开发中。
文档
最新版本的文档可在docs.econ-ark.org找到。
简介
为学生:HARK的温和介绍
到目前为止,经济学家在“大数据”方面所做的许多工作,与开普勒对天文数据的处理方式类似:整理数据,寻找模式和规律以及相互关系。
另一种称为“结构建模”的方法旨在对经济数据进行处理,就像牛顿对天文数据所做的那样:提供一种深刻而严谨的数学(或计算)框架,提炼出产生“大数据”的潜在行为的本质。
笔记本HARK的温和介绍详细说明了如何轻松利用我们的工具箱进行结构建模。从简单的完美预期模型开始,我们解决了一个代理问题,然后通过添加收入冲击和改变构建属性进行实验。
为经济学家:使用HARK进行结构建模
对代表性代理模型回答大衰退提出的重要问题的能力的不满,导致宏观经济学文献中出现了向“异质代理”模型转变的强烈趋势,在这种模型中,微观经济代理人(消费者;企业)解决与微观经济数据相匹配的结构性问题;通过明确模拟解决此类模型的群体的均衡行为来推导出总结果。
类似的建模技术也越来越多地受到微观经济学家的欢迎,这些技术涵盖了从劳动经济学到产业组织等多个领域。在宏观经济学和结构微观经济学中,这些技术广泛应用的障碍主要是,直到现在,编写结构模型需要大量的专业知识和定制软件开发。
HARK提供了一个强大、设计良好的开源工具箱,可以比过去更有效地构建此类模型。
我们的DCEGM Upper Envelope笔记本演示了如何使用HARK复制Iskhakov, Jørgensen, Rust, and Schjerning论文,以解决离散-连续退休储蓄问题。
笔记本从经验结果中制作结构估计是使用HARK进行快速结构估计的另一例证,基于MPC Heterogeneity and Household Balance Sheets by Fagereng, Holm, and Natvik的第9表。
对于计算经济学开发者
HARK提供了一个模块化和可扩展的开源工具箱,用于解决异质代理部分和一般均衡结构模型。此类模型的代码一直是手工制作、具有特殊性、文档记录不佳,有时也没有从主要研究人员慷慨地分享给外部人士。结果是,新研究人员需要数年时间才能熟练掌握。通过使用面向对象编程技术和其他工具自下而上构建集成系统,我们的目标是提供一个将成为使用此类模型的人们的焦点平台。
HARK是用Python编写的,大量使用了如numpy和scipy等库,这些库提供了广泛的数学和统计函数和工具。我们的模块通常分为工具(数学函数和技术)、模型(特定的经济模型和求解器)和应用(使用工具来模拟经济现象)。
有关如何创建自己的模型或使用工具和模型创建应用的更多信息,请参阅HARK手册。
为HARK做出贡献
我们希望向Econ-ARK的贡献对每个人来说都既有趣、愉快又富有教育意义。
贡献远远超出了拉取请求和提交。尽管我们很高兴能给你机会在HARK上留下你的印记,但我们也非常期待收到各种其他贡献,包括
- 文档更新、增强、设计或错误修复
- 拼写或语法修正
- REAME.md修正或重新设计
- 添加单元测试或功能测试
- 整理GitHub问题 — 例如指出相关文件,检查可重现性
- 在Twitter上搜索#econ-ark并帮助需要帮助的其他人
- 回答带有econ-ark标签的StackOverflow问题
- 教授他人如何为HARK做出贡献
- 撰写关于HARK的博客、演讲或创建教程
- 帮助我们的邮件列表中的其他人
如果你担心或者不知道如何开始,你可以随时联系TSC,或者简单地提交一个问题,成员可以帮助你提供指导!
在你的第一次贡献之后,请告诉我们,我们将把你添加到下面的贡献者名单中!
有关开发安装的更多信息,请参阅快速入门指南。
有关为HARK做出贡献的更多信息,请参阅贡献指南。这是合作者维护Econ-ARK项目时遵循的指南。
免责声明
这是HARK的beta版本。代码尚未经过充分的测试。我们希望它是有用的,但绝对没有任何保证(明示或暗示)它能正常工作或满足你的需求。请自行承担风险。并且,如果你发现错误,请通过在GitHub页面上提交问题来告诉我们!
项目详情
econ_ark-0.15.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e63b85b295d012c3ed5f34beb4aefc6ec81b0ab0b4285c091c1874d3f1bfc0dc |
|
MD5 | 43cd062901be6c274f1e1ca2ad7e0b7d |
|
BLAKE2b-256 | a94a4eec946031ad7e745cbe97ecde1af39b587af8b82d20ac183fee79045071 |
econ_ark-0.15.1-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 5de57b9473523bd430f7cfaa923051b3e239b71d3a34847f77acad1a73804d81 |
|
MD5 | c7bd27d404a42af77fdbf989a6f0dd8c |
|
BLAKE2b-256 | 52e1f0c7ca5cd9d6b42e3886558ade15673a78390f41a1f1443220340df2b235 |