問題タブ [cvxpy]
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.
python - CVXPY で制約のリストを動的に生成する
私は、CVXPY を使用して Python で最小分散最適化問題に取り組んでおり、次の形式で制約を取り入れています。
w
という形で
これをより効率的に実行するために、設定を保存するファイルに基づいて、制約のリストを動的に作成したいと考えています。制約リストの読み取りと作成は正常に機能し、
それが示している
しかし、それに含まれる実際のエントリを見ると
一方、私のものはこの形式です
データの読み込みに使用されるコードは次のとおりです。
これを行う方法を知っている人はいますか?問題は、使用前に CVXPY の変数形式で w を取得することです。
python - CVXPY を使用してスロープを最大化する
株式ポートフォリオのシャープレシオを最大化するために CVXPY を使用しようとしています。
変数 w はポートフォリオの重みベクトル、Sigma は nxn 相関行列、mu は各ポートフォリオ株式の平均リターン、rf はリスクフリー レート (スカラー値) です。
最初に、問題を次のように構築しようとしました: Maximise((ret-rf)/(sqrt(risk)))、これにより TypeError: Can only Division by a scalar constant が発生しました。最大化しようとしている値のログを取得してこの問題を回避しようとしましたが、「prob.solve()」によって発生した「無効な構文」が発生しています。問題が最大化式に起因することは確かですが、それが何であるかはわかりません。
(CVXPY ログ式、つまり log_det() と log_sum_exp() の両方を試しました)
以下にコードを示します。
python - CVXpy のインストール: コンパイルがエラー コード 1 で失敗しました
Python 2.7.6、pip 1.5.4を使用して、Ubuntu 14.04にCVXpyをインストールしようとしています。ここで提案された方法を試しました: http://www.cvxpy.org/en/latest/install/index.html
エラーが発生する場所で、nosetests cvxpy までスムーズに実行されます。
ImportError: canonInterface という名前のモジュールがありません
そのため、パッケージ CVXcanon をインストールしようとしましたが、コマンド pip install CVXcanon で次のエラーが発生します。
この問題を解決する方法についてアドバイスをいただけますか。ありがとうございました。
python - CVXPYによる最小限の燃料制御
CVXPY を使用して、最小燃料最適制御問題を離散時間で解きたいと考えています。連続時間の線形システムでゼロ次ホールドを使用すると、問題を凸制御制約を持つ線形プログラムに変換できます。Yalmip や CVX などの Matlab 環境を使用してこの問題の基本的な定式化を行いましたが、これを CVXPY で機能させることはできません。私が抱えている問題は、問題がコンパイルされて完全に解決されたように見えても、出力値が境界条件を明らかに満たしておらず、出力をプロットすると結果が空になることです。
コードを添付しました。問題は、二重積分器の最小燃料制御であると想定されています。厳密に正方向と負方向の制御信号が必要で、それぞれが 0 から umax の間の値を取ります。
二重積分行列を定義するクラスは次のとおりです。
メインコードは次のとおりです。
よろしくお願いいたします。
mathematical-optimization - CVXPYを使用したエントロピー最大化は無制限/実行不可能
CVXPY を使用してエントロピー最大化問題を数値的に解こうとしています。問題がDCPチェックに合格しても、無限の結果が得られ続け、infeasible や unbounded_inaccurate などの問題のステータスが表示されます (パラメーターに選択した値によって異なります)。R の Alabama のような非線形制約付きオプティマイザを使用して、同じ問題を解決することができました。以下は、問題を再現する小さな例です。
なぜ CVX が凸計画問題用に設計されていない他のアルゴリズムよりもこの問題を解決するのに苦労しているのか、私にはよくわかりません。制約を書いた方法で何かを見落としていませんか?
* 編集 *
これまで回答が得られなかったので、 CVXPY Google グループでもこの質問をします。それに応じてこのスレッドを更新します。
python - 暫定最小化関数に依存する制約を設定するには?
最小化された関数値に依存する制約を設定しようとしています。
私が抱えている問題は、次の性質のものです。
fmin = 最小化 (d1x1 +d2x2 ... +d5x5)
次の制約で最適化したい場所:
この場合、y1..yn はスカラー定数です。
だからどういうわけか私は定義する必要があります:
制約の 1 つとして x1d1/fmin = y1。
ここで、最適値ベクトルは (d1 .. dn) になります。ただし、ここでは例として、制約 d1/minimized(d1..dn) = y1 も満たさなければなりません。
これをどのように設定すればよいですか?どのようなオプティマイザーを使用しますか?
Excelソルバーを使用してこれを非常に簡単に行うことができますが、今はこれをPythonでコーディングしたいと考えています。scipy.linprog を使用しようとしていますが、これが線形プログラミングの問題なのか、それとも別のアプローチを使用する必要があるのか わかりません。この問題に対して linprog で制約を設定する方法を考えることができません。誰でも私を助けることができますか?