Skip to content

Problem treating tranches as separate assets #1383

Description

@tsmbland

I've tried to come up with a simpler/more generic example to demonstrate the point above about tranching.


Consider the following scenario:
3 timeslices (TS1, TS2, TS3) each of which is 1/3 of the year
We're considering a process with an output coefficient of 1, and an annual activity limit of 2/3

Together, these imply:

  • Max timeslice output for 1 unit of capacity = 1/3
  • Max annual output for 1 unit of capacity = 2/3

If demand = 100 in each timeslice (total annual demand = 300), we can calculate the demand limiting capacity (the capacity required to meet the full demands) as the max of:

  • TS1 DLC: 100 / (1/3) = 300
  • TS2 DLC: 100 / (1/3) = 300
  • TS3 DLC: 100 / (1/3) = 300
  • Annual DLC: 300 / (2/3) = 450
    -> 450

In other words, we can calculate in advance that 450 capacity is sufficient to meet the full demand profile, based on the activity limits of the process.

Now, suppose we split this into three tranche assets of 150 capacity. Treating each as an independent asset, it would have a production limit of 50 in each timeslice (based on each timeslice being 1/3 of the year) and an annual limit of 100 (based on 2/3 utilisation)

Tranche 1 discovers that TS1 and TS2 are most profitable (e.g. if the output commodity price is highest in these timeslices) so it runs at full utilisation there, giving remaining demand of:

  • TS1: 50
  • TS2: 50
  • TS3: 100

Tranche 2 does the same, giving remaining demand of:

  • TS1: 0
  • TS2: 0
  • TS3: 100

By the time of tranche 3, there's 100 units remaining demand in TS3, but this asset can only serve 50 of this because of its own timeslice-level limits.

Therefore, after 3 tranches and 450 capacity investment, according to the investment algorithm there's still unmet demand, despite the fact that we earlier calculated 450 capacity to be sufficient (at this point it would currently give up and exit the simulation). We could overcome this by allowing it to consider a 4th tranche, but in the end that would allow it to invest in more capacity than it actually needs.

Originally posted by @tsmbland in #1319 (comment)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    Status
    📋 Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions