商品在庫予測では、アルゴリズムとモデルを使用して製品の販売傾向と在庫レベルを推定し、サプライチェーン管理者が調達計画と在庫調整戦略を策定するのに役立ちます。正確な在庫予測により、サプライチェーンの効率が効果的に向上し、コストが削減されます。この記事では、PHP を使用して過去の販売データに基づいて在庫予測を実装する方法について詳しく説明します。
まず、モデル トレーニングの基礎として過去の販売データを収集する必要があります。データには、各商品の販売数量と対応する日付が含まれている必要があります。データはデータベースから取得することも、CSV ファイル経由でインポートすることもできます。この記事の例では、CSV ファイルがデータのインポートに使用されます。
予測を行う前に、データをクリーンアップして前処理する必要があります。計算するには日付をタイムスタンプに変換する必要があり、さまざまな製品データを均一に分析できるように販売数量を正規化する必要があります。サンプルコードは次のとおりです。
// 読むCSV書類
$data = array_map('str_getcsv', file('sales_data.csv'));
// 前処理されたデータを格納する配列を定義する
$normalizedData = array();
// データの前処理
foreach ($data as $row) {
$date = strtotime($row[0]);
$quantity = $row[1];
// 正規化
$normalizedQuantity = ($quantity - $min) / ($max - $min);
$normalizedData[] = array($date, $normalizedQuantity);
}
データの前処理が完了したら、履歴データを使用してモデルをトレーニングする必要があります。この記事では、線形回帰モデルを例として使用して、日付ごとの販売数量を予測します。トレーニングのサンプルコードは次のとおりです。
// 特徴量と目標値を分離する
$dates = array_column($normalizedData, 0);
$quantities = array_column($normalizedData, 1);
// 線形回帰モデルを使用する
$model = new LinearRegression();
$model->train($dates, $quantities);
モデルのトレーニングが完了すると、将来の売上を予測して製品在庫のニーズを決定できます。サンプルコードは次のとおりです。
// 予測時間範囲を設定する
$startDate = strtotime('2022-01-01');
$endDate = strtotime('2022-12-31');
// 予測販売数量
$predictedQuantities = array();
// 各日付の予測を立てる
for ($date = $startDate; $date <= $endDate; $date += 86400) {
$predictedQuantity = $model->predict($date);
// 还原正規化
$quantity = $predictedQuantity * ($max - $min) + $min;
$predictedQuantities[] = array(date('Y-m-d', $date), $quantity);
}
予測が完了したら、販売数量を表示および分析して、サプライ チェーンの意思決定を支援できます。曲線グラフを描画したり、月間総売上高やその他の指標を計算したりできます。サンプルコードは次のとおりです。
// グラフを描いたり、総売上やその他の指標を計算したりする
foreach ($predictedQuantities as $row) {
echo $row[0] . ':' . $row[1] . '</br>';
}
上記の手順により、PHP を使用して過去の販売データに基づいた製品在庫予測を実現できます。このようにして、在庫ニーズをより正確に見積もることができ、調達と在庫調整を合理的に手配でき、サプライチェーン管理の効率を向上させ、運用コストを節約できます。同時に、企業はより複雑なモデルや他の影響要因 (プロモーション活動、季節の変化、気象要因など) を組み合わせて、より正確な予測分析を行うことができます。