Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Cryptic error for infeasible investment options

Open
#1,403 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
30/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Quiet
Tech stack
rust
Domain
backend

Research direction

Start by reproducing the failure with the attached simple_modified 2.zip model and trace the investment appraisal path that reports “Could not find optimal result: Infeasible.” Compare the lower availability and supply constraints, then establish which of the three proposed behaviors is accepted as done: exclude the option, relax supply, or cap capacity to avoid oversupply.

Written by the indexing model from the issue text.

Description

simple_modified 2.zip

The attached model fails with Could not find optimal result: Infeasible during investment appraisal.

I believe this is due to the presence of lower availability constraints, meaning that the asset cannot supply the remaining demands without exceeding them. The capacity constraint is set up to bound supply to less than or equal to demand (the idea being that it should max out demand as much as it can, so long as it has positive activity coefficients), but with lower availability constraints it's possible that this constraint cannot be met, making the problem infeasible. Three possible solutions:

  • we exclude this investment option and allow the simulation to continue (possibly raising a warning)
  • we relax (possibly remove entirely) the supply constraint, allowing this asset to be appraised. The appraisal metric would then have to take into account how much of the supplied commodity is actually demanded, which would penalise any wasteful assets
  • find a way to calculate the max capacity that avoids having to oversupply, and cap capacities based on this. We already cap capacities based on current DLC and investment limits, so it would just be an additional cap, or a modification to the DLC calculation
Dominant language
Rust
Stars
8
Forks
5
Avg merge
11h 31m
Merged PRs (30d)
33

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from EnergySystemsModellingLab/MUSE2

All issues in EnergySystemsModellingLab/MUSE2

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.