Planned

:speech_balloon:

"Decision variables"

Milestones are great – they work kinda like “timestamp variables”

I’d love to have something similar to milestones that work like “boolean variables”

It would be nice to be able to - create a decision variable like “have a big wedding?” or “fully pay for kids college?” - assign certain expenses to be hidden if a decision is true/false, and - toggle the decision with a single click to see its impact on the chart/milestones

41 votes

Tagged as Suggestion

Suggested 04 February 2022 by user Ankush Gupta

Moved into Planned 08 February 2022

  • Sign in to comment and vote. Sign in by email
  • 04 February 2022 Ankush Gupta suggested this task

  • 04 February 2022 Kyle Nolan approved this task

  • 08 February 2022 Kyle Nolan moved this task into Planned

  • avatar

    I’ve also been thinking about this feature, and was about to add something similar. What Ankush describes is probably more flexible and easier to use.

    I was thinking about having expenses optionally depend on Milestones, and add the ability to toggle off and on milestones themselves, which would then automatically turn their dependent expenses off and on.

    But what Ankush describes would allow you to roll-up exactly which expenses depends on a specific decision variable, which could comprise multiple milestones, or parts of many, and other life events. So this approach seems like a better way to go, more all encompassing. Although maybe for visual clarity on the chart you could have Milestones depend on Decision Variables, such that you could hide them.

    e.g. you could have “Get Married” as a decision variable, which would have expenses and milestones associated with it.

    And you could have Decision Variables depend on other decisions variables. e.g. You may want to say “Have a kid” Decision Variable, depends on “Getting Married” == true. and “Adopt a Kid” decision variable, depends on Getting Married == false. And of course each of these decision variables could have numerous different dependent expenses.

    I would also like to see House assets be able to depend on these Decision Variables. e.g. “Have 1-2 kids” makes us choose a specific House asset, vs. no kids, or 3-4 kids.

    Even cash-flow priorities might make use of these Decision Variables.

    28 April 2022
  • avatar

    It’d be helpful if decision variables could depend on other decision variables. Example:

    • Decide to buy land.
    • IF bought land: Decide to build a rental unit
    29 April 2022
  • avatar

    More on this: some decisions depend on having taken other decisions, and some decisions preclude other decisions.

    29 April 2022
  • avatar

    adding my comments from duplicate issue: https://changemap.co/projectifi/projectifi/task/10790-support-milestone-re-evaluation-aka-active/

    One major flaw of milestones currently is that they are only evaluated for being hit once, and once the milestone is hit that’s it, all items dependent on that milestone trigger.

    Sometimes we wish to have a milestone turn on and off in response to a set of conditions, i propose we support enabling a milestone to be allowed to be turned on and off each simulation year.

    My initial intuition for flex expenses was to make it possible for milestones to move from being one-time events to constantly re-evaluated. So you can make a milestone for “Extra Discretionary Spending” tied to your Net Worth being greater than some value. Then an expense which is tied to that milestone being “active”. Thus, at the beginning of a year if that milestone condition is met, it is set active and expenses which are dependent on it being active are enabled, but if the simulation causes the net worth to dip below that value in the milestone condition, it is evaluated next year again and disabled, and thus turns off the expense tied to it.

    I realize Flex Expenses were not implemented this way, but the ability to have milestones (or maybe we call them something else like “conditional states”) evaluate frequently would enable us to do a lot more powerful modeling.

    I think the 4.4 early access “Flex Expenses” covers probably 80% of the use cases that most people need.

    But if you think about this instead as a way to set up conditional states it could allow projection lab to become a lot more powerful.

    Imagine down the line if/when projection lab supports something like “Family Planning”, i.e. having a child with associated expenses.

    By creating this totally customizable “conditional state” feature you could design a system that does something like

    Expense: “Kid A Daycare costs” Active when: Condition “Kid A In Daycare” is TRUE

    then setup Condition “Kid A In Daycare”: * Kid A AGE LESS THAN 5

    Overall, a dynamic condition system allows for huge flexibility.

    But I understand with that huge flexibility also comes a TON of edge cases and associated bugs, so it will be up to you to decide how far you want to take this feature if you do take it on

    14 October