← 論文一覧に戻る

PyPSA/linopy: v0.7.0

Fabian Hofmann, Lukas Trippe, Jonas Hörsch, Ulf Worsøe, Heinz-Alexander Fuetterer, Felix, Fabian Neumann, Robbie, Siddharth Krishna, Florian Maurer, Henning Blunck, Iegor Riepin, Felix Hennings, Daniel Müller, Fridolin Glatter, Michał Marszal, Oscar Dowson, Max Parzen, Kristijan Faust, ollie-bell +8

Zenodoプレプリント2026-05-11#その他Origin: Global
DOI: 10.5281/zenodo.20116604
原典: https://zenodo.org/records/20116604

🤖 gxceed AI 要約

日本語

PyPSA/linopy v0.7.0は、線形計画法ライブラリの主要なアップデートであり、区分線形制約(SOS2、増分法、選言法)のAPIを追加し、半連続変数や変数の固定・緩和機能を実装した。パフォーマンス改善やバグ修正も含まれる。

English

PyPSA/linopy v0.7.0 is a major update of the linear optimization library, adding a unified API for piecewise linear constraints (SOS2, incremental, disjunctive), semi-continuous variables, and variable fixing/relaxation. It includes performance improvements and bug fixes.

Unofficial AI-generated summary based on the public title and abstract. Not an official translation.

📝 gxceed 編集解説 — Why this matters

日本のGX文脈において

このソフトウェアアップデートは、日本のGX実務に直接的な示唆を与えるものではないが、エネルギーシステムモデリングのツールとして間接的に寄与する可能性がある。

In the global GX context

This software release is not directly relevant to global GX discourse but serves as a tool for energy system modeling, which underpins many GX analyses.

👥 読者別の含意

🔬研究者:エネルギーシステムモデリングに携わる研究者にとって、区分線形制約の実装は最適化の表現力を高める。

📄 抄録(日本語訳)

変更内容 機能追加: linopyにSOS再定式化を追加し、新しいSOS機能の採用を簡素化 @FBumann による https://github.com/PyPSA/linopy/pull/549 機能追加: 区分的線形制約API(SOS2、増分、選言的)を追加 @FBumann による https://github.com/PyPSA/linopy/pull/576 solve()にreformulate_sos='auto'サポートを追加 @FabianHofmann による https://github.com/PyPSA/linopy/pull/595 修正: google-cloud-storageとrequestsをオプション依存関係にする @lkstrp による https://github.com/PyPSA/linopy/pull/589 ビルド(deps): github-actionsグループを3つの更新でバンプ @dependabot[bot] による https://github.com/PyPSA/linopy/pull/598 knitroコンテキストを公開 @finozzifa による https://github.com/PyPSA/linopy/pull/600 SCIPを使用したWindowsでの二次計画法を有効化 @davide-f による https://github.com/PyPSA/linopy/pull/588 区分的線形制約: フォローアップ改善 @FabianHofmann による https://github.com/PyPSA/linopy/pull/602 不安定なSCIP時間制限テストを修正(#577を修正) @FabianHofmann による https://github.com/PyPSA/linopy/pull/606 リファクタリング: 部分集合と上位集合を用いたlinopy操作の一貫した規約を導入 @FabianHofmann による https://github.com/PyPSA/linopy/pull/572 マスクされた制約に対するXpress IISマッピングを修正 @FabianHofmann による https://github.com/PyPSA/linopy/pull/605 バリア解法にクロスオーバーがない場合の欠落した双対値を処理 @danielelerede-oet による https://github.com/PyPSA/linopy/pull/601 機能追加: 半連続変数をオプションとして追加 @mcoughlin による https://github.com/PyPSA/linopy/pull/593 CI: ドキュメントノートブックをテストするCIワークフローを追加 @FBumann による https://github.com/PyPSA/linopy/pull/615 OetcSettings.from_env()を追加し、Model.solve()を通じてソルバーオプションを転送 @FabianHofmann による https://github.com/PyPSA/linopy/pull/612 機能追加: モデルのディープコピーを作成するm.copy()メソッドを追加 @bobbyxng による https://github.com/PyPSA/linopy/pull/623 機能追加: VariableおよびVariablesにfix()、unfix()、fixedを追加 @FBumann による https://github.com/PyPSA/linopy/pull/625 修正: Variable.typeプロパティに半連続を含める @FBumann による https://github.com/PyPSA/linopy/pull/635 knitroコンテキストクロージャを再導入し、ソルバー数量をエクスポート @finozzifa による https://github.com/PyPSA/linopy/pull/633 機能追加: VariableおよびVariablesにrelax()とunrelax()を追加 @FBumann による https://github.com/PyPSA/linopy/pull/634 リファクタリング: print呼び出しを文字列を返すformat_*メソッドに置き換え @FBumann による https://github.com/PyPSA/linopy/pull/621 パフォーマンス: 解の展開にnumpy配列ルックアップを使用 @MaykThewessen による https://github.com/PyPSA/linopy/pull/619 雑務: ベンチマーク @FBumann による https://github.com/PyPSA/linopy/pull/567 修正: add_variablesがDataArray境界のcoordsを無視 @FBumann による https://github.com/PyPSA/linopy/pull/614 修正: highs 1.14.0をブラックリストに登録 @coroa による https://github.com/PyPSA/linopy/pull/654 修正: コンストラクタの代わりにxarray.Datasetコピーを使用 @maurerle による https://github.com/PyPSA/linopy/pull/647 機能追加: Model.slotsにweakrefを追加 @FBumann による https://github.com/PyPSA/linopy/pull/656 修正: as_dataarrayがマルチインデックスレベルを追加次元として扱う @FabianHofmann による https://github.com/PyPSA/linopy/pull/659 修正: Xpressの実行不可能性パスで単一のIISを計算 @FabianHofmann による https://github.com/PyPSA/linopy/pull/658 v0.6.7のリリースノートを更新 @FabianHofmann による https://github.com/PyPSA/linopy/pull/661 修正: 目的関数なしでモデルを解く際に明確なエラーを発生 @FBumann による https://github.com/PyPSA/linopy/pull/671 ビルド(deps): github-actionsグループを1ディレクトリで3つの更新でバンプ @dependabot[bot] による https://github.com/PyPSA/linopy/pull/669 機能追加: add_piecewise_formulationの背後で区分的APIを統一(符号+LPディスパッチ) @FBumann による https://github.com/PyPSA/linopy/pull/638 機能追加: breakpoints()にslopes_alignを追加 @FabianHofmann による https://github.com/PyPSA/linopy/pull/672 リファクタリング(区分的): Slopesクラスを導入し、breakpoints(slopes=)モードを削除 @FBumann による https://github.com/PyPSA/linopy/pull/673 修正: scipy netCDFバックエンド用にMultiIndexレベル名をJSONとしてシリアライズ @FBumann による https://github.com/PyPSA/linopy/pull/674 ドキュメント: 今後の変更ログを再構成し、欠落しているPRを追加 @FBumann による https://github.com/PyPSA/linopy/pull/675 雑務: v0.7.0のリリースノートを更新 @FBumann による https://github.com/PyPSA/linopy/pull/676 新規コントリビューター @finozzifa は https://github.com/PyPSA/linopy/pull/600 で初めての貢献を行いました @davide-f は https://github.com/PyPSA/linopy/pull/588 で初めての貢献を行いました @danielelerede-oet は https://github.com/PyPSA/linopy/pull/601 で初めての貢献を行いました @mcoughlin は https://github.com/PyPSA/linopy/pull/593 で初めての貢献を行いました @bobbyxng は https://github.com/PyPSA/linopy/pull/623 で初めての貢献を行いました @MaykThewessen は https://github.com/PyPSA/linopy/pull/619 で初めての貢献を行いました 完全な変更ログ: https://github.com/PyPSA/linopy/compare/v0.6.4...v0.7.0

AI 翻訳(deepseek-v4-flash)。 正確を期す場合は下の原文を参照してください。

📄 Abstract(原文)

What's Changed feat: add sos reformulations into linopy to simplify adoption of new sos features by @FBumann in https://github.com/PyPSA/linopy/pull/549 feat: add piecewise linear constraint API (SOS2, incremental, disjunctive) by @FBumann in https://github.com/PyPSA/linopy/pull/576 Add reformulate_sos='auto' support to solve() by @FabianHofmann in https://github.com/PyPSA/linopy/pull/595 fix: make google-cloud-storage and requests optional dependencies by @lkstrp in https://github.com/PyPSA/linopy/pull/589 build(deps): bump the github-actions group with 3 updates by @dependabot[bot] in https://github.com/PyPSA/linopy/pull/598 Expose the knitro context by @finozzifa in https://github.com/PyPSA/linopy/pull/600 enable quadratic for win with scip by @davide-f in https://github.com/PyPSA/linopy/pull/588 Piecewise linear constraints: follow-up improvements by @FabianHofmann in https://github.com/PyPSA/linopy/pull/602 Fix flaky SCIP time limit test (fixes #577) by @FabianHofmann in https://github.com/PyPSA/linopy/pull/606 refac: introduce consistent convention for linopy operations with subsets and supersets by @FabianHofmann in https://github.com/PyPSA/linopy/pull/572 Fix Xpress IIS mapping for masked constraints by @FabianHofmann in https://github.com/PyPSA/linopy/pull/605 handle missing dual values when barrier solution has no crossover by @danielelerede-oet in https://github.com/PyPSA/linopy/pull/601 feat: Add semi-continous variables as an option by @mcoughlin in https://github.com/PyPSA/linopy/pull/593 ci: Add CI workflow to test documentation notebooks by @FBumann in https://github.com/PyPSA/linopy/pull/615 Add OetcSettings.from_env() and forward solver options through Model.solve() by @FabianHofmann in https://github.com/PyPSA/linopy/pull/612 feat: add m.copy() method to create deep copy of model by @bobbyxng in https://github.com/PyPSA/linopy/pull/623 feat: Add fix(), unfix(), and fixed to Variable and Variables by @FBumann in https://github.com/PyPSA/linopy/pull/625 fix: Include semi-continuous in Variable.type property by @FBumann in https://github.com/PyPSA/linopy/pull/635 Re-introduce knitro context closure and export solver quantities by @finozzifa in https://github.com/PyPSA/linopy/pull/633 feat: Add relax() and unrelax() to Variable and Variables by @FBumann in https://github.com/PyPSA/linopy/pull/634 refac: replace print calls with str-returning format_* methods by @FBumann in https://github.com/PyPSA/linopy/pull/621 perf: use numpy array lookup for solution unpacking by @MaykThewessen in https://github.com/PyPSA/linopy/pull/619 chore: benchmarks by @FBumann in https://github.com/PyPSA/linopy/pull/567 fix: add_variables ignoring coords for DataArray bounds by @FBumann in https://github.com/PyPSA/linopy/pull/614 fix: blacklist highs 1.14.0 by @coroa in https://github.com/PyPSA/linopy/pull/654 fix: use xarray.Dataset copy instead of constructor by @maurerle in https://github.com/PyPSA/linopy/pull/647 feat: add weakref to Model. slots by @FBumann in https://github.com/PyPSA/linopy/pull/656 fix: as_dataarray treating multi-index levels as extra dims by @FabianHofmann in https://github.com/PyPSA/linopy/pull/659 fix: compute a single IIS in Xpress infeasibility path by @FabianHofmann in https://github.com/PyPSA/linopy/pull/658 Update release notes for v0.6.7 by @FabianHofmann in https://github.com/PyPSA/linopy/pull/661 fix: raise clear error when solving model without objective by @FBumann in https://github.com/PyPSA/linopy/pull/671 build(deps): bump the github-actions group across 1 directory with 3 updates by @dependabot[bot] in https://github.com/PyPSA/linopy/pull/669 feat: Unify piecewise API behind add_piecewise_formulation (sign + LP dispatch) by @FBumann in https://github.com/PyPSA/linopy/pull/638 feat: add slopes_align to breakpoints() by @FabianHofmann in https://github.com/PyPSA/linopy/pull/672 refac(piecewise): introduce Slopes class, remove breakpoints(slopes=) mode by @FBumann in https://github.com/PyPSA/linopy/pull/673 fix: serialize MultiIndex level names as JSON for scipy netCDF backend by @FBumann in https://github.com/PyPSA/linopy/pull/674 docs: restructure upcoming changelog and add missing PRs by @FBumann in https://github.com/PyPSA/linopy/pull/675 chore: Update release notes for v0.7.0 by @FBumann in https://github.com/PyPSA/linopy/pull/676 New Contributors @finozzifa made their first contribution in https://github.com/PyPSA/linopy/pull/600 @davide-f made their first contribution in https://github.com/PyPSA/linopy/pull/588 @danielelerede-oet made their first contribution in https://github.com/PyPSA/linopy/pull/601 @mcoughlin made their first contribution in https://github.com/PyPSA/linopy/pull/593 @bobbyxng made their first contribution in https://github.com/PyPSA/linopy/pull/623 @MaykThewessen made their first contribution in https://github.com/PyPSA/linopy/pull/619 Full Changelog : https://github.com/PyPSA/linopy/compare/v0.6.4...v0.7.0

🔗 Provenance — このレコードを発見したソース

🔔 こうした論文の新着を逃したくない方は キーワードアラート に登録(無料・3キーワードまで)。

gxceed は公開メタデータに基づく研究支援データセットです。要約・翻訳・解説は AI 支援で生成されています。 最終的な解釈・検証は利用者が原典資料に基づいて行うことを前提とします。