PyPSA / PyPSA/pypsa-usa

Non-Gurobi Solver for UV environment

Open
#629 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Python
Stars
148
Forks
55
Avg merge
2d 11h
Merged PRs (30d)
18

Description

Checklist
  • I am using the current master branch
  • I am running on an up-to-date pypsa-usa environment. Update via conda env update -f envs/environment.yaml
The Issue

When running via UV, the environment can not find the ipopt solver during the clustering steps. Is there a way to us UV with open-source solvers?

Image

Steps To Reproduce
  1. Run uv run snakemake -j1 --configfile config/config.default.yaml --scheduler-ilp-solver GLPK_CMD
Expected Behavior

ipopt should be available in the uv environment

Error Message

Anything else?

According to this comment, there may be an issue using CBC with UV? Not sure if this is a limitation of running pypsa-usa via UV right now?

Contributor guide

No contributing guide indexed for this repository

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.

Research direction

Inspect envs/environment.yaml and the UV invocation used with uv run snakemake -j1 --configfile config/config.default.yaml --scheduler-ilp-solver GLPK_CMD; compare the declared environment with the solver availability during clustering. Check the referenced issue #483 discussion for related CBC and UV behavior. Done means an open-source solver such as ipopt is available in the UV environment and the documented command reaches the clustering steps successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.