問題タブ [feasibility]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scip - 問題が実行不可能である理由を理解できない
OSiL 形式で記述された単純な線形プログラミングの問題があります。これは、SCIP によって実行不可能と報告された複雑な非線形問題から切り出されたものです。この単純な問題は、この実行不可能な問題を再現するための最小限の行ですが、混乱します。以下は OSiL の内容です。
OSiL は次のように言っているのではありませんか。
? なぜこの問題は実行不可能なのですか? <con lb="10"/>
私には、誰も参照していないので役に立たないように見えます。しかし実際には、この制約は元の問題に私が気付かなかった方法で影響を与えます。なぜなら、下限を 0 以下に変更するか、上限に変更すると問題が解決するからです。誰かが私にこれを説明できますか?私は数値最適化と OSiL 形式の初心者なので、お時間をいただきありがとうございます。
feasibility - 実現可能性のみの問題に PySCIPOpt を使用する方法
CVXPY とその LP ソルバーのいくつかを使用して、A*x <= b 問題の解決策が実行可能かどうかを判断しました。次に、PySCIPOpt を試してみたいと思います。ドキュメントでこの例を見つけることができませんでした。正しい構文を理解するのに苦労しています。CVXPY を使用すると、コードは次のようになります。
PySCIPOpt では、上記のように行列表記を使用することはできませんが、ベクトルと行列をスカラー変数のコレクションとして扱う必要があると思います。それぞれを個別に追加する必要があるため、これを試しました:
この種の問題に対する addCons() の制約の正しい形式を教えてください。また、解決策が実行可能かどうかを尋ねる適切な方法は、単純に目的として 0 を渡すことであることを確認してください。
branch-and-bound - CBC の解決プロセスを一時停止して保存する
混合整数計画法に取り組んでおり、コイン CBC をツールとして使用しています。主実行可能解が得られるたびに、探索ノードで部分問題の実行可能性をチェックすることを考えています。
そのため、検索ツリーでソリューション プロセスを一時停止し、実現可能性チェック ルーチンを挿入する必要があります。このようなチェックの後、実行不可能性が検出されると、チェック ノードに戻り、ツリーの分岐と切断を実行し続けます。
CBC がそのような一時停止と再開機能をサポートしているかどうか知りたいですか?