0

関数の最小値を見つけようとしています。私が取り組んでいるのは次のようなものです

FindMinimum[Norm[{u1, u2, u3}, 2] + Norm[{v1, v2, v3}, 2] + Norm[{p1, p2, p3}, 2], {u1, 0, 1}, {u2, 0, 1}, {u3, 0, 1}, {v1, 0, 1}, {v2, 0, 1}, {v3, 0,   1}, {p1, 0, 1}, {p2, 0, 1}, {p3, 0, 1}]

今、私は制約を追加したい:

{u1, u2, u3} + {v1, v2, v3} + {p1, p2, p3} = {somevec1, somevec2, somevec3}

3 つのベクトルのそれぞれに少なくとも 1 つのゼロを持たせたいのですが、これが問題になっています。

試しCount[{u1, u2, u3}, 0] > 1てみましたが、このエラーが発生しています

FindMinimum::eqineq: {False} の制約は、すべてが等式または不等式の制約ではありません。線形計画法の整数ドメイン制約を除いて、ドメイン制約または不等 (!=) を使用した制約はサポートされていません。>>

編集:

私が現在持っているものは次のとおりです。

w = {1, 1, 1};
FindMinimum[{Norm[{u1, u2, u3}, 2] + Norm[{v1, v2, v3}, 2] + Norm[{p1, p2, p3}, 2], {u1, u2, u3} + {v1, v2, v3} + {p1, p2, p3} == w && u3 == 0 && v1 == 0 && p2 == 0}, {u1, 0, 1}, {u2, 0, 1}, {u3, 0, 1}, {v1, 0, 1}, {v2, 0, 1}, {v3, 0, 1}, {p1, 0, 1}, {p2, 0, 1}, {p3, 0, 1}]

これは十分に一般的ではありません。

4

1 に答える 1

0

u1*u2*u3=0 などはどうでしょうか。

于 2013-08-03T18:38:12.997 に答える