ホームページ  >  記事  >  php教程  >  トレンド予測手法 - PHP の実装

トレンド予測手法 - PHP の実装

WBOY
WBOYオリジナル
2016-06-21 08:49:181565ブラウズ

トレンド予測・トレンド手法

トレンド予測手法の概要

傾向予測手法は傾向分析手法とも呼ばれます。これは、独立変数が時間であり、従属変数が時間の関数であるパターンを指します。

具体的には、トレンド平均法、指数平滑法、線形トレンド法、非線形トレンド法などが挙げられます。

傾向予測方法の主な利点は、時系列の発展傾向を考慮して、予測結果が現実によりよく一致することです。精度要件に応じて、予測用に 1 つまたは 2 つの移動平均を選択できます。まず、隣接する期間の平均値を個別に計算し、次に変化傾向と傾向の平均値を求め、最後に最新の期間の平均値と過去の期間の数の積を加算して予測値を求めます。予測時間から最新期間の平均値まで。

トレンド移動平均法における最初の移動平均は、期間 t の移動平均でもあることに注意してください。トレンド移動平均法は、期間 t から t までの実際の値を求めることです。 -n+ 期間 1 の合計の平均。単純移動平均法では項目 t-1 から期間 t-n までの実績値の合計の平均を求めます。 実際のアプリケーションでは、これらを混同しないでください。

[編集]

トレンド予測モデル

トレンド移動平均法では、最新の実績値の最初の移動平均を開始点として使用し、2 番目の移動平均でトレンド変化の傾きを推定し、予測モデルを確立します。

式では、at - は直線の切片を予測します

bt——直線の傾きを予測します

n ——各移動平均の長さ

t——期間の数。

トレンド移動平均法の予測モデルは次のとおりです。

式では、k - トレンド予測期間の数

yt + k —— 期間 t+k における予測値。

例: n = 5 として、表 1 に示すように 2 次移動平均を計算します。傾向平均法を使用して、期間 13 の予測値を見つけます。

表1 製品売上高と移動平均

月份 时期 t 实际销售额 一次移动平均
( n = 5 )
二次移动平均
( n = 5 )
1 1 1024    
2 2 1040    
3 3 1052    
4 4 1056    
5 5 1060 1046.40  
6 6 1044 1050.40  
7 7 1064 1055.20  
8 8 1072 1059.20  
9 9 1080 1064.00 1055.04
10 10 1088 1069.60 1059.68
11 11 1096 1080.00 1065.60
12 12 1092 1085.60 1071.68
次年 1 月 13

解決策: t=12 とすると、1085.60 と 1071.68

になります。

=2*1085.60-1071.68=1099.52

=0.5*(1085.60-1071.68)=6.96

yt + k=1099.53+6.96*1=1106.49

[編集]

トレンド分析 事例分析

[編集]

事例1:企業の動向分析の分析[1]

1. 会社概要と計画分析

1. 会社の発展戦略

同社は主に鉄道機関車の安全装置の研究開発、生産、販売、サービスおよびコンピュータソフトウェアの開発に従事しています。 2008年までに総売上高3~4億元を達成し、従業員の教育受講率70%、学士以上の各種技術人材および管理人材の80%、専門技術人材の80%を達成することを目指します。上記の会社の従業員総数のうち。同社は、トランスポンダーなどの新世代の安全監視製品の開発、機関車の状態検出などのエッジ製品の積極的な開発、自動車、船舶の「ブラックボックス」、都市鉄道ATPへの市場の拡大、海外市場のターゲット、そして新たな市場領域を開拓します。

2. 会社の人的資源の現状

2005 年末時点で、同社の従業員数は 220 人、一人当たりの売上高は 110 万元でした。従業員の平均年齢は 35 歳未満で 229 名です。彼らの専門分野は主にコンピュータとオートメーションです。 、およびエレクトロニクス関連の専攻があり、会計専攻やその他の専門家は少数です。スタッフの 84 % が大学以上の学位を取得し、78 名が学士号、6 名が修士号を取得し、1 名が現在博士号を取得するために勉強しています。

同社の研究開発部門、生産部門、ソフトウェアおよびハードウェア開発部門は技術部門に統合されています。表 1 から、同社の最大の部門は技術部門であり、マーケティング部門の能力が比較的弱いことがわかります。 、マーケティング部門の 34 人は、製品販売に関する大規模なタスクを完了する必要があります。研究開発人材も比較的弱く、総合的な管理人材も不足しています。構造的な冗長性は、技術力の弱さとサービス要員の多さによって引き起こされます。将来的に拡大する市場需要に応え、利益を最大化するには、中核となる科学研究能力を拡大し、向上させることが不可欠であることがわかります。

同社は現在、技術管理担当者6名、設計開発担当者43名(教授レベルの上級エンジニア3名、上級エンジニア5名を含む)を擁しています。 6名の研修管理と秘書業務。安全機器製品を保護するために、全国に 87 人のマーケティングおよびアフターサービス担当者が配置されています。人材分類の観点からは、マネジメント、エンジニアリング、テクノロジーとマーケティングに分けることができます。

2.トレンド分析手法による分析

つまり、企業または企業内のさまざまな部門の従業員数の過去の変化に基づいて、人材需要の将来の変化を予測します。手順は次のとおりです。

1. 従業員の規模に関連する適切な組織要因を決定します。この組織要因は組織の基本特性に直接関係しており、この要因に基づいて組織計画を策定するには、選択された要因の変化が必要な労働量の変化に比例する必要があります。 Times Monitoring Company は生産指向の企業であるため、組織的な要素は販売です。

2. 過去の傾向を未来に直接導く方法では、時間要因を唯一の変数とし、過去の労働力と過去の組織要因との定量的関係を見つけます。

企業の定量的な関係は、2001 年から 2005 年の売上高と労働生産性です。

3. 労働生産性の動向を把握し、一定期間に収集した組織要因と労働力量のデータを用いて、平均的な生産性の変化と組織要因の変化を計算し、補正し、将来の変化を予測する。過去数年の傾向に基づくと、労働生産性は今後数年間も変わらないと予測されています。

上の表からわかるように、同社の発展戦略における経済指標によれば、2008 年の売上は 3 億~4 億に達し、2008 年の売上は 3 億 8,000 万に達すると予想されています。2006 年から 2008 年にかけて、売上は 5,000 万増加しました。定量的な傾向としては、以下のような予測がなされています。

2005 年の労働生産性 = 23500 ÷ 220 = 106 万 8100 元/人によると、2006 年から 2008 年まで労働生産性が変わらないと予測すると、2006 年の予測人数は = 28000 ÷ 106.81 = 262 人になります。 2007 年の予測人数 = 33000 ÷ 106.81 = 309 人、2008 年の予測人数 = 38000 ÷ 106.81 = 356 人。

上記の方法により、同社は 2008 年までに従業員を (356-220) = 136 人増加する必要があると予測できます。

===================================

/**

※数値傾向推定手法

* @param int $datas データサンプル

* @param int $k 計算期間

* @param int $n 平均長

* @return 配列予測データ

* @著者 leeldy

​*/

関数 cal_tendency($datas, $k = 1, $n = false) {

//データ期間

$t = カウント($datas);

//n が要件を満たしているかどうかを判断します

if ($n) {

If ($t exit('平均長さ n の値が大きすぎます!');

}

} else {

// 最大の n 値を取得します

$n = intval(($t + 1) / 2);

}

$m = 配列(

// 平均 1 つの

1 => 配列()、

//二次平均

2 => array()

);

//最初の n 項目の合計

$m_1 = 0;

//最初の n 項目の平均値の合計

$m_2 = 0;

//平均点の添字の計算を開始します

$n_1 = $n - 1 - 1;

//二次平均の点添字の計算を開始します

$n_2 = $n_1 + $n - 1;

//平均を計算

for ($i = 0; $i

//最初の n 項目のデータの合計

$m_1 += $datas[$i]

If ($i > $n_1) {

//平均値の計算を開始

$m[1][$i] = $m_1 / $n;

//最初の項目を削除

$m_1 -= $datas[$i - $n + 1]

// 前の N と

$m_2 += $m[1][$i];

if ($i > $n_2) {

”””””” //二次平均を計算

$m[2][$i] = $m_2 / $n;

$m_2 -= $m[1][$i - $n + 1];

}

}

//基礎値とトレンド係数を計算

$at = $m[1][$t - 1] + $m[1][$t - 1] - $m[2][$t - 1];

$bt = 2 / ($n - 1) * ($m[1][$t - 1] - $m[2][$t - 1]);

//トレンドを計算

$result = 配列($at);

$i = 0;

while (++$i

$result[$i] = $result[$i - 1] + $bt;

}

$result を返します

}

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。