リンゴプログラミングの基礎が少しある人がリンゴをもう一度読んで学び、忘れられた小さな知識をたくさん見つけて、それを本のオペレーター、数学関数、財務関数、確率密度関数、変数区切り、操作機能の設定

1.まえがき

Lingoは、最適化問題を処理するための非常に使いやすいソフトウェアです。
よく使うのですが、体系的に勉強していないので、少し前にMATLABを再学習して、忘れてしまった知識のポイントをたくさん見つけました。今日は、基本的な文法をマスターするために、用語を再学習することにしました。それは忘れがちです。

第二に、オペレーター

誰もが演算子に精通していますが、Lingoの演算子の順序についてどのくらい知っていますか?
以下に示します(高いものから低いものへ):

#not#-
^
* /
+-
#eq ## ne ## gt ## ge ## lt ## le
## and ## or#
<= => =(<すべて<=と見なされます)(用語ではありません非常に少量を追加することで達成されるよりも厳密に少ない)

3つの数学関数

基本的な三角関数、指数関数、対数関数、記号関数などについては説明しません。
lgm(x)-xのガンマ関数の自然対数を返します
floor(x)-ゼロに
丸めますsmax(x1、x2、…、xn)
smin(x1、x2、…、xn)-名前としてつまり、前にsしかないだけです(以前はなかったと思いました)

4、財務機能

財務関数は主に
正味現在価値を計算するために使用されます@FPA(I、N)
-後者の場合は正味現在価値の合計を返します@FPL(I、N)-後者の場合は正味現在価値を返します

4.1正味現在価値

正味現在価値が何であるかわからない場合があります。偶然にも、私はあまり知らないので、Baiduを検索して、次の一連の例を見つけました。
ここに画像の説明を挿入
簡単に言うと、正味現在価値は、プロジェクト投資の収益性を反映する一連の指標です。
それが0より大きい場合、解決策は実行可能です。
0未満の場合は実行できません。
この値は当然大きいほど良いです。

5、確率関数

厄介な確率関数、彼は再び来ました。
忘れて、さあ、さあ、隠れることはできません。

確かにたくさんあり、覚えていないのに一度だけ閲覧する必要があります、はい、覚えておく必要はありません、印象があり、そのような機能があることを知っています、そしてあなたがそれが必要。

記憶のテクニックを教えてください。記憶機能は実際には英語を覚えるほど速くはありません。
いくつかの乱数を除いて、他の機能は3文字で構成されています。

最初の文字はすべてpです-確率密度関数を表すためにpを使用することはあまりありません
真ん中の文字は、この分布に関連する英語の記号です。
最後の文字は、多くの場合、分布の一般的なパラメーターに関連しています。

累積分布関数

5.1 @pbn(p、n、x)-二項分布の累積分布関数。

魔法は、nとxが整数でない場合があることです。整数でない場合、プログラムは線形補間に従って計算します。(Tql-強すぎる)

二項-おそらく二項を意味します。

内部のパラメータの使い方がわからず、いろいろな説明がわからないと言う方もいらっしゃいますが、写真を撮るとわかりやすくなりますか?(効果が良いか悪いか、私にメッセージを残すことができます)
ここに画像の説明を挿入

5.2 @pcx(n、x)-n自由度のカイ2乗分布の累積分布関数。

カイ二乗-おそらくカイ二乗を意味します。

自由度パラメータn、写真の式では、自由度はkです。
ここに画像の説明を挿入

5.3 @pfd(n、d、x)-自由度nおよびdのF分布の累積分布関数。

F分布、真ん中の文字は当然fです。

ここに画像の説明を挿入
私たちが見つけたF分布は、パラメーターが不明な状況である必要があります。つまり、上の図のプロパティ6とプロパティ5が理解できます。この関数は、確率と統計の過程でよく使用されます。

5.4 @phg(pop、h、g)-超幾何分布の累積分布関数

超幾何-おそらく超幾何を意味します

ここに画像の説明を挿入
累積分布を解いていることに注意してください。

5.5 @pps(a、x)-ポアソン分布(poisson)累積分布関数

xは整数ではない場合があります。この場合でも、線形補間が使用されます。

5.6 @ppl(a、x)-ポアソン分布の線形損失関数

これは、ポアソン分布に関連する別の関数です。

これは、max(0、zx)の期待値を返します。ここで、確率変数zは、平均aのポアソン分布に従います。

5.7 @psl(x)-単位正規線形損失関数、

これも線形損失関数です。

これは、max(0、zx)の期待値を返します。ここで、確率変数zは、平均aのポアソン分布に従います。

5.8 @psn(x)-標準正規分布の累積分布関数

確率分布関数の線形損失は終わったと思いますか?最も一般的に使用される正規分布を忘れることはできません。

5.9 @ptd(n、x)-n自由度のt分布の累積分布関数

私はあなたにそれを説明する百科事典を見つけないことに決めました。配布は今まで書かれていました、そして誰もが今それを見ました、あなたと私はもう魂を持っていません。
だから、知識のポイントはここにあります、詳細な説明は皆次第です

不过,好消息,分布到这里就结束了,大家可以稍作休息,下面来介绍几个其他的硬核概率密度函数。

首先让我们来瞅一瞅三个与排队论有关的函数,不知道直接跳过,学习排队论之后再来看就懂了,我也只会排队论的几个简单的小模型,但下面三个函数,还是十分简单而且有用的。

5.10 @peb(a、x)-負荷aに達すると、サービスシステムにx台のサーバーがあり、無限のキューを許可するErlangビジー確率。

5.11 @peb(a、x)-前の関数との違いは、この関数がキューが許可されないビジー確率であるということです。

5.12 @pfs(a、x、c)-負荷制限がa、顧客数がc、並列サーバー数がxの場合、ポアソンサービスの待機中または修理済みの顧客数の期待値有限ソースのシステム。

aは、顧客数に平均サービス時間を掛け、次に平均修理時間を割ったものです。

cとxは整数ではない可能性があり、補間は引き続き使用されます。

次に、2つの乱数生成関数があります

5.13 @qrand(seed)-区間(0,1)で準乱数を生成します。

モデルのデータ部分での使用のみが許可されており、彼女は設定された属性を準乱数で埋めます。

これらの乱数は、層化サンプリングによって生成されます。

5.14 @rand(seed)-指定されたシードに応じて、間隔(0,1)で疑似乱数を生成します。

一般的な使用法:
U(k + 1)= @rand(U(k))

6.可変区切り機能とセット操作機能

6.1変数区切り機能

言うまでもなく、頻繁に使用されるので、よく知っておく必要があります。

6.1.1 @bnd(L、x、U)-制限L <= x <= U

6.1.2 @free(x)-0以上の制限をキャンセルします

6.1.3 @gin(x)-xを整数変数に制限する

6.1.4 @bin(x)-xを0-1変数に制限します

6.2操作機能の設定

6.2.1 @in(コレクション名、要素1、...)

セットでは、1を返します。それ以外の場合は、0を返します。

6.2.2 @index(コレクション名、要素)

コレクション名は省略できます

6.2.3 @wrap(index、limit)

j = index-k * limitを返します。これは、[1、limit]間隔の制限に似ています。

6.2.4 @size(コレクション名)

要素の数を返します

7つの集合ループ機能と入出力機能

7.1ループ機能の設定

@ for、@ max、@ min、@ sum、@ size、@ inなどはすべて一般的に使用されているので、あまり言いません。

7.2入力および出力機能

7.2.1@file関数

この関数は外部ファイルからデータを入力し、モデルのどこにでも配置できます。
レコードの終わりとして〜で終わる読み取り方法に注意してください。最後のレコードを読み取った後、lingoはファイルを閉じます。
同時に開かれるファイルの総数は16を超えることはできないことに注意してください

7.2.2@text関数

データをテキストファイルに出力するために使用される、データを出力するための関数。

出力ファイル名が指定されていない場合は、標準出力デバイス(ディスプレイ)に出力されます。

7.2.3ole関数

Excelからデータをインポートまたはエクスポートする

7.2.4 @ranged(variable_or_row_name)

最適な基底を変更しないようにするために、変数のコスト係数または制約線の右端の項を減らすことができます。

7.2.5 @rangeu(variable_or_row_name)

上記と同じですが、出力を増やすことができます

7.2.6 @status()

Lingoがモデルを解決した後の状態に戻ります
。0——GlobalOptimun
1——Infeasible
2——Unbounded
3—— Undeterminded (uncertain)
4——Feasible
5——InfeasibleorUnbounded(通常、前処理オプションをオフにして、再処理する必要があります。モデルを解いて、実行不可能か無制限かを判断します)
6——LocalOptimun
7——LocallyInfeasible
8——Cutoff(目的関数のカットオフ値に到達)
9——NumericError(未定義の操作により終了)

7.2.7 @dual(variable_or_row_name)

変数の判別番号(テスト番号)
または制約行のデュアル(シャドウ)価格(dualprice)を返します

8.補助機能

8.1 if(logical_condition、true_return、false_return)

True、true_return
返し、その逆も同様です。

8.2 warn( 'text'、logical_condition)

trueの場合、情報ボックスを出力します。

おすすめ

転載: blog.csdn.net/qq_41563270/article/details/108399665