Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

new discount function: Exponential-Power #147

Open
6 tasks done
drbenvincent opened this issue Nov 18, 2016 · 2 comments
Open
6 tasks done

new discount function: Exponential-Power #147

drbenvincent opened this issue Nov 18, 2016 · 2 comments
Labels

Comments

@drbenvincent
Copy link
Owner

drbenvincent commented Nov 18, 2016

My version

V = reward * exp(-a*(delay^b))

This is very similar to the discount function proposed by Ebert & Prelec (2007):

V = reward * exp(-(a*delay)^b))
  • add to unit tests
  • JAGS: separate model
  • JAGS: mixed model
  • add STAN models [edit: later removed, see below]

Implement properly for JAGS at the moment.

STAN models are very poor for this discount function (as they are with others). For the moment, just focus on JAGS and come back to STAN later. There are more general issues with STAN that I'm having with other discount functions.

  • 17 Jan 2017: updated priors based on analysis of real data from my lab.

Avoiding hierarchical (group level) inference with this model

Because the joint posterior over (k, tau) is complex, I've decided to skip implementing this for the moment. Sticking with just the 'separate' or the 'mixed' models

Update priors and improve model stability

We have been getting issues with VB=inf or VB=NaN because of certain parameter combinations of (k, tau).

  • fix it

New subplot of subjective time

  • Add new plot of implied prospective time perception
drbenvincent pushed a commit that referenced this issue Dec 9, 2016
Need to work on matrix power (delay ^ tau)
drbenvincent pushed a commit that referenced this issue Jan 8, 2017
- removing ExpPower hierarchical model. Hierarchical inference on (k,
tau) needs more thought #147
- introduces (epsilon_alpha, epsilon_beta) which will help with the
hierarchical / mixed / separate models #161
drbenvincent pushed a commit that referenced this issue Jan 8, 2017
alpha_precision ~ dgamma(0.001,0.001)
drbenvincent pushed a commit that referenced this issue Jan 17, 2017
more restrictive priors, based upon analysis of real data from my lab
drbenvincent pushed a commit that referenced this issue Feb 12, 2017
@drbenvincent drbenvincent changed the title new 'secret' discount function model new discount function: Exponential-Power Apr 30, 2017
drbenvincent pushed a commit that referenced this issue May 20, 2017
Changes based around experimentMultiPanelFigure() method. Aims to make
it easier to extend and compose a different series of experiment
related plots based on the model type. For example, plotting subjective
time functions (see #147).
Has involved moving some methods to superclasses
drbenvincent pushed a commit that referenced this issue May 20, 2017
Fixed error with this line of DF_ExponentialPower.m
y = exp( - theta.k .* x.^theta.tau );
@drbenvincent
Copy link
Owner Author

This is now working pretty well on data from my lab. There is probably scope to be a bit more informed about the priors, but they seem to be working well for the data I have so far.

@drbenvincent drbenvincent reopened this Jul 11, 2017
drbenvincent pushed a commit that referenced this issue Jul 11, 2017
Error was in ExponentialPower.m. It was using the wrong subjective time function.
@drbenvincent
Copy link
Owner Author

The issue of numerical instability continues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant