問題タブ [maximization]

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 投票する
0 に答える
29 参照

python - Python での暗黙の方程式のプロットからの最大化

私はこれをグラフィック化する必要がある問題を解決していました:

r = (16442.21*(((np.e**(-10468.04/T))*(P 1.5))/((2-X)**1.5))*(((1-X)**2.5) /X))-17374.99*(((np.e (-23855.06/T)) (Fo 0.2) ((2-X)**0.5))/(P 0.5))*(X/((1-X) )**1.3))

私が必要としたグラフィックは X(T) で、曲線はパラメータ r が同じ値を持つ T と X の値を表しています。そこで、このコードを使用して、暗黙の方程式からプロットを作成しました。

これが結果でした:

https://i.stack.imgur.com/5ugDZ.png

問題は、各曲線を最大化する必要があり、グラフィックのデータが見つからないため方法がわからないため、フィッティングなどを行うことができません。

それを最大化する別の方法を知っていますか?

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

r - Rの反復/最大化Excelソルバー

ソルバーを使用して、以前に Excel で行った最大化を R で実行しようとしています。問題は、対処方法がわからないことです(Rのレベルが高くありません)。

私のデータについて少し話しましょう。スイスには 26 の州があり、スイス政府 (26 の州の値の合計) とその人口と「富」があります。したがって、変数ごとに27の観測があります。以下の説明が役に立つかどうかはわかりませんが、とりあえず置いておきます。これから、while ループでいくつかの変数を計算します。各カントンについて [i]:

  • リソースの可能性 = 平均 (wealth2011 [i],wealth2012 [i],wealth2013 [i])
  • 人口平均 = 平均(人口 2011 [i]、人口 2012 [i]、人口 2013 [i])
  • 1 人あたりの資源ポテンシャル = 1000*資源ポテンシャル [i]/人口 [i]
  • 資源指数 = 100*資源潜在人員[i]/資源潜在人員[スイス政府]

ここで私が使用したループの種類の小さな例:

スイス政府 (i = 27)の資源指数 (RI)は 100 です。これは、スイス政府 (i = 27 の場合) の資源潜在能力をそれ自体で割り、100 を掛けるためです。したがって、RI を持つすべてのカントン100 は豊かなカントンで、その他 (IR<100) は貧しいカントンです。ここまでは問題ありませんでした。データセットの構築方法を説明しました。

今私が直面している問題:変数の重み付けされた差分 (wd)を作成する必要があります。次の値を取ります。

  • RI>100 の場合は0 (豊かなカントン)
  • (100-RI[i])^(1+P)*Pop[i] if RI<100 (貧しい州)

この変数を次のように作成します: (コードの脆弱性については申し訳ありませんが、最善を尽くしました)。

ただし、「p」の値はわかりません。0 と 1 の間の値です。p の値を見つけるには、次の機能を使用して最大化を行う必要があります。

  • RI_26 = 65.9、これは私のデータの RI の最小値です
  • RI_min = 100-((x*wd [27])/((1+p)*z*100))^(1/p)、x と z は固定値 (x = 8'677、z = 4) '075'977'077) および wd [27] 各カントンの wd の合計。

RI_min と wd の 2 つの式にpがあります。Excel で解決するために、次の機能を備えた Excel ソルバーを使用しました。

  • p_dot = RI_26/RI_min* p ==> p_dot =[65.9/100-((x* wd [27])/((1+p)*z*100))^(1/p)]*p
  • RI_26 = RI_min ==>65.9 =100-((x*wd [27])/((1+p)*z*100))^(1/p)

Excel では、pは変数セル (変更が許可されている唯一の値)、p_dotは定義する目的、RI_26 = RI_minは制約です。

したがって、pを最大化したいのですが、Rでこれを行う方法がわかりません。主な問題は、 RI_min および wd にp が存在することです。それを解決するために反復を行う必要がありますが、これは私のスキルとはかけ離れています。

私が提供した情報を手伝ってくれる人はいますか?