PyPSA / PyPSA/linopy

How to add multi-objectives?

Open
#233 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

model formulation question solver interface
Dominant language
Python
Stars
257
Forks
87
Avg merge
1d 3h
Merged PRs (30d)
29

Description

According to the source code, only one objective can be added to a model. Instead of converting to single objective, how to optimize multi-objective problems?

if not overwrite:
assert self.objective.expression.empty(), (
"Objective already defined."
" Set overwrite to True to force overwriting."
)

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.

Research direction

Start by tracing the source code around the self.objective.expression.empty() assertion and the model objective API. Determine whether multi-objective optimization is supported by the project or its solver integrations, and identify the intended behavior and interface. Done should be a decided, documented approach or an explicitly scoped implementation plan.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.