線形最適化の目的関数の絶対値

RamKumar RanjithKumar

私は次の式の解決策を見つけようとしています

目的関数:

最小化(| x --c0 | + | y --c1 |)

制約:

0 < x < A
0 < y < B

ここで、c0、c1、A、Bは正の定数です

http://lpsolve.sourceforge.net/5.1/absolute.htmで与えられた変換に続いて

式を次のように言い換えました

制約:

    (x - c0) <= xbar
-1 *(x - c0) <= xbar
    (y - c1) <= ybar
-1 *(y - c1) <= ybar

     0 < x < A
     0 < y < B

目的関数:

minimize(xbar + ybar)

ただし、これを実装することはできません。次のスニペットを試しました

#include "ortools/linear_solver/linear_solver.h"
#include "ortools/linear_solver/linear_expr.h"

MPSolver solver("distanceFinder", MPSolver::GLOP_LINEAR_PROGRAMMING);
MPVariable* x = solver.MakeNumVar(0, A, "x");
MPVariable* y = solver.MakeNumVar(0, B, "y");

const LinearExpr e = x;
const LinearExpr f = y;

LinearExpr X;
LinearExpr Y;

LinearRange Z = slope * e + offset == f; // Where 'slope' & 'offset' are real numbers.
solver.MakeRowConstraint(Z);

const LinearRange r = -1 * (e - c0) <= X;
const LinearRange s = (e - c0]) <= X ;
const LinearRange m = -1 * (f - c1) <= Y;
const LinearRange k = (f - c1) <= Y ;

solver.MakeRowConstraint(r);
solver.MakeRowConstraint(s);
solver.MakeRowConstraint(m);
solver.MakeRowConstraint(k);

MPObjective* const objective = solver.MutableObjective();
objective->MinimizeLinearExpr(X+Y);

エラーが発生します。E020616:41:08.889048 80935 linear_solver.cc:1577]解決策がありません。MPSolverInterface :: result_status_ = MPSOLVER_INFEASIBLE

私のユースケースは常に実行可能な解決策を生み出します(私は点と線の間の最小のマンハッタン距離を見つけようとしています)。

私はGOOGLE-ORツールの使用に非常に慣れていません。私が見落としているかもしれないより簡単な解決策を提案してくださいどんな助けもいただければ幸いです

ありがとう、ラム

ローラン・ペロン

これが実際の例です。コード内の変数を混同しました

const double A = 10.0;
const double B = 8.0;
const double c0 = 6.0;
const double c1 = 3.5;

MPSolver solver("distanceFinder", MPSolver::GLOP_LINEAR_PROGRAMMING);
MPVariable* x = solver.MakeNumVar(0, A, "x");
MPVariable* y = solver.MakeNumVar(0, B, "y");

MPVariable* xbar = solver.MakeNumVar(0, A, "xbar");
MPVariable* ybar = solver.MakeNumVar(0, B, "ybar");

LinearExpr X(x);
LinearExpr Y(y);

const LinearRange r = -1 * (X - c0) <= xbar;
const LinearRange s = (X - c0) <= xbar;
const LinearRange m = -1 * (Y - c1) <= ybar;
const LinearRange k = (Y - c1) <= ybar;

solver.MakeRowConstraint(r);
solver.MakeRowConstraint(s);
solver.MakeRowConstraint(m);
solver.MakeRowConstraint(k);

MPObjective *const objective = solver.MutableObjective();
objective->MinimizeLinearExpr(LinearExpr(xbar) + LinearExpr(ybar));

計算します

x = 6
y = 3.5
xbar = 0
ybar = -0

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Rの非線形制約を使用して非線形目的関数を最適化する方法は?

分類Dev

PuLPの最適化問題の絶対値の定式化

分類Dev

Javaの非線形多変数関数の制約付き最適化

分類Dev

RでlpSolveを使用して、目的関数の絶対値を最小化する

分類Dev

lpSolve-目的関数を特定の値に最適化します

分類Dev

非線形関数のためのScipyによる制約付き最適化

分類Dev

Rustの絶対値関数

分類Dev

TypeError:タイプ 'int'のオブジェクトに目的関数の非線形最適化月光にlen()がありません

分類Dev

問題ベースの非線形最適化(MATLAB)の初期値

分類Dev

Spark数値関数の最適化(python)

分類Dev

Rでの非線形最適化

分類Dev

符号性の線形補間最適化

分類Dev

遅くRcppとR目的関数の最適化、なぜ?

分類Dev

Pythonで非線形関数を最適化する

分類Dev

C関数の最適化

分類Dev

KDB:関数の最適化

分類Dev

関数内の変数の固定値に対してPython数学コードを最適化する

分類Dev

Python GEKKO:非線形最適化のパフォーマンスの最適化

分類Dev

数値の絶対値

分類Dev

非線形最適化のための赤黒木の使用

分類Dev

2進数の絶対値

分類Dev

nloptrとExcelを使用したRの非線形最適化

分類Dev

nloptrとExcelを使用したRの非線形最適化

分類Dev

Rでの非線形有界最適化

分類Dev

ExcelからRへの非線形最適化

分類Dev

制約付き線形最適化の設定

分類Dev

線形最適化R

分類Dev

この目的関数で分散を絶対値に置き換えることはできますか?

分類Dev

constrOptim:適応バリアアルゴリズムを使用して線形不等式制約の対象となる関数を最小化します

Related 関連記事

  1. 1

    Rの非線形制約を使用して非線形目的関数を最適化する方法は?

  2. 2

    PuLPの最適化問題の絶対値の定式化

  3. 3

    Javaの非線形多変数関数の制約付き最適化

  4. 4

    RでlpSolveを使用して、目的関数の絶対値を最小化する

  5. 5

    lpSolve-目的関数を特定の値に最適化します

  6. 6

    非線形関数のためのScipyによる制約付き最適化

  7. 7

    Rustの絶対値関数

  8. 8

    TypeError:タイプ 'int'のオブジェクトに目的関数の非線形最適化月光にlen()がありません

  9. 9

    問題ベースの非線形最適化(MATLAB)の初期値

  10. 10

    Spark数値関数の最適化(python)

  11. 11

    Rでの非線形最適化

  12. 12

    符号性の線形補間最適化

  13. 13

    遅くRcppとR目的関数の最適化、なぜ?

  14. 14

    Pythonで非線形関数を最適化する

  15. 15

    C関数の最適化

  16. 16

    KDB:関数の最適化

  17. 17

    関数内の変数の固定値に対してPython数学コードを最適化する

  18. 18

    Python GEKKO:非線形最適化のパフォーマンスの最適化

  19. 19

    数値の絶対値

  20. 20

    非線形最適化のための赤黒木の使用

  21. 21

    2進数の絶対値

  22. 22

    nloptrとExcelを使用したRの非線形最適化

  23. 23

    nloptrとExcelを使用したRの非線形最適化

  24. 24

    Rでの非線形有界最適化

  25. 25

    ExcelからRへの非線形最適化

  26. 26

    制約付き線形最適化の設定

  27. 27

    線形最適化R

  28. 28

    この目的関数で分散を絶対値に置き換えることはできますか?

  29. 29

    constrOptim:適応バリアアルゴリズムを使用して線形不等式制約の対象となる関数を最小化します

ホットタグ

アーカイブ