問題タブ [mathprog]

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.

0 投票する
2 に答える
443 参照

linear-programming - 線形計画法のインデックス作成による最適化

コストを最大化または最小化するベクトル内の 1 つまたは複数のインデックスを特定することを含む、いくつかの最適化の問題に遭遇しました。線形計画法でそのようなインデックスを識別する方法はありますか? mathprogCVXRCVXPY、またはその他の API のソリューションを受け入れます。

たとえば、変化点の問題 (関数が変化するインデックスを見つける) にはインデックスの特定が必要であり、巡回セールスマンの問題 (累積距離 Y の前に都市 X を訪問する) に距離の制約を課す必要があります。

簡単な例として、両側の合計が最も等しい (差が最小である) ベクトル内の位置を特定したいとします。この例では、ソリューションはインデックス 5 です。

試行 1

を使用して、それをインデックスとしてCVXR宣言して使用しようとしました(例: ):split_indexx[1:split]

とエラー1:split_indexになりNA/NaN argumentます。

試行 2

明示的なインデックス ベクトル ( indices) を宣言し、 かどうか要素ごとに論理テストを行いますsplit_index <= indices。次に、そのバイナリ ベクトルを要素ごとに乗算してx、分割の一方または他方の側を選択します。

とエラーにx * is_firstなりnon-numeric argument to binary operatorます。is_firstがオブジェクトになったため、このエラーが発生したと思われIneqConstraintます。