跳转到主要内容

异质代理资源 & 工具包

项目描述

异构代理资源与工具包(HARK)

HARK是一个用于结构化建模优化和非优化异构代理经济选择的工具包。有关HARK的使用信息,请参阅Econ-ARK网站

Econ-ARK项目采用开放式治理模式,并由NumFOCUS提供财政赞助。请考虑捐赠以帮助该项目支付开发时间、专业服务、差旅、研讨会和其他各种需求,捐赠可享受税收减免。


本项目受行为准则约束。

问题/评论/帮助

我们有一个Gitter Econ-ARK 社区

目录

安装

通过运行以下命令从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。

DOI

[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的更多信息,请访问我们的网站

支持

需要帮助?请打开GitHub问题或联系TSC

发布类型

  • 当前:处于积极开发中。当前版本的代码位于其主版本号的分支上(例如,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 (12.2 MB 查看哈希值)

上传时间 源代码

构建分发

econ_ark-0.15.1-py2.py3-none-any.whl (2.2 MB 查看哈希值)

上传时间 Python 2 Python 3

支持者