econ-ark / HARK

Heterogenous Agents Resources & toolKit
Apache License 2.0
315 stars 195 forks source link

NPMF for ConsIndShock #1374

Open sbenthall opened 3 months ago

sbenthall commented 3 months ago

The New Python Model Format (see #1371) has been used so far for a very simple model: infinite horizon perfect foresight.

A clear next step is to implement a similar file for ConsIndShock and at it to the model library: https://github.com/econ-ark/HARK/tree/master/HARK/models

In principle, this would enable to ConsIndShock model file to be refactored to use the generic Monte Carlo simulator, rather than its own custom simulation code.

Since there are so many variations of the ConsIndShock model supported by the current object-oriented version of the model, this task also involves putting some thought into how to efficiently encode multiple models which are slight variations of each other. This work will be roughly analogous to the way that YAML model configurations can be built off of each other.

llorracc commented 3 months ago

Seb,

It is not clear to me how the proposed work here integrates with or contributes to the DSL work that Matt is heading up.

In our earlier discussions, particularly with Pablo, I thought we had reached the conclusion that a syntactic specification like that of Dolo is the only approach that has a realistic shot of convincing other people to adopt it.

I'd rather not have you work on this for Econ-ARK unless you can convince me that it is necessary to do this in order to pursue the DSL project.

mnwhite commented 3 months ago

We can talk about this on Wednesday, but this is something that needs to happen. Seb's post came from a discussion we had Monday morning.

On Mon, Jan 29, 2024 at 11:54 PM Christopher Llorracc Carroll < @.***> wrote:

Seb,

It is not clear to me how the proposed work here integrates with or contributes to the DSL work that Matt is heading up.

In our earlier discussions, particularly with Pablo, I thought we had reached the conclusion that a syntactic specification like that of Dolo is the only approach that has a realistic shot of convincing other people to adopt it.

I'd rather not have you work on this for Econ-ARK unless you can convince me that it is necessary to do this in order to pursue the DSL project.

— Reply to this email directly, view it on GitHub https://github.com/econ-ark/HARK/issues/1374#issuecomment-1916073915, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADKRAFJUPCUORD6HJ6VTZOTYRB4HTAVCNFSM6AAAAABCP7LSI6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJWGA3TGOJRGU . You are receiving this because you are subscribed to this thread.Message ID: @.***>

sbenthall commented 3 months ago

Thanks @mnwhite

And yes, @llorracc , I made these issues as proposed next steps for HARK after discussing with Matt what would be productive ways forward: #1371 #1372 #1373 #1374

Essentially, what we discovered last semester is that the distance between the DSL and a Python object that it compiles to is very small. Together, these issues would establish that it's possible to use the DSL to define and work with the ConsIndShock model, which is the most important model to HARK users.

sbenthall commented 3 months ago

This has gotten the thumbs up from @llorracc

Once we have this ready, we can make sure we can accommodate the shuffle method for simulations. This will be a separate issue, but it is certainly in mind.