شما در حال خواندن درس مقدمه‌ی روش‌های کمی پیش‌بینی از دوره‌ی پیش‌بینی تقاضا هستید.

روش هموارسازی نمایی (نمو هموار) در پیش بینی تقاضا

در این درس با روش هموارسازی نمایی (Exponential Smoothing) یا نموّ هموار آشنا می‌شوید که در دو بخش ارائه می‌شود.

در بخش اول از هموارسازی نمایی ساده صحبت می‌کنیم که قابلیت تصحیح روندهای افزایشی یا کاهشی داده‌ها را ندارد، یعنی اگر داده‌ها پیوسته در حال زیاد یا کم شدن باشند در پیش‌بینی لحاظ نمی‌شود و اصولاً این روش برای سری‌های زمانی مبتنی بر Trend مناسب نیست.

در بخش دوم با هموارسازی نمایی دوبل آشنا می‌شوید که می‌تواند روند‌های افزایشی یا کاهشی داده‌ها را جبران کند.

بخش اول: روش هموارسازی نمایی (نمو هموار)

فرض کنید که مقدار فروش ویکی‌تولید در مهر ماه ۲۰۰ عدد بوده است، فروش آبان چقدر می‌شود؟ قاعدتاً اگر هیچ اتفاقی رخ ندهد، در آبان هم ۲۰۰ واحد فروش خواهیم داشت اما اتفاقاتی مثل افزایش تعداد کاربران، تعطیلات نوروز، تحولات اجتماعی، برنامه‌های تبلیغاتی ویکی‌تولید و … باعث می‌شود که این مقدار در آبان ماه تغییر کند و مثلاً به ۲۴۰ عدد برسد؛ پس اصولاً مقدار هر دوره در شرایط کاملاً با ثبات، با دوره‌ی قبلی برابر است اما چون تغییراتی رخ می‌دهد (که شاید آن‌ها را بدانیم یا ندانیم) مقدارش تغییر می‌کند.

در روش هموارسازی نمایی، برای پیش‌بینی (محاسبه‌ی Ft+1) از مقدار واقعی دوره‌ی قبلی (At) و مقدار پیش‌بینی شده برای دوره‌ی قبلی (Ft)، میانگین وزن‌دار می‌گیریم که رابطه‌ی ریاضی آن به شکل زیر است:

فرمول نمو هموار ساده

رابطه‌ی بالا را می‌توانیم به شکل زیر هم بنویسیم:

فعلاً برای بررسی توضیحات روی رابطه‌ی اول تمرکز کنید.

مقدار t نشان دهنده‌ی دوره‌ی فعلی و مقدار t+1 نشان دهنده‌ی دوره‌ی بعدی است، حرف F مقدار پیش‌بینی شده را نشان می‌دهد و مقدار آلفا بین ۰ تا ۱ است.

قصد داریم مقدار F را برای دوره‌ی t+1 پیش‌بینی کنیم (Ft+1) و همان‌طور که گفتیم مقدار آن برابر است با مجموعِ درصدی از مقدار واقعی دوره‌ی قبلی (At) و درصدی از مقدار پیش‌بینی شده دوره‌ی قبلی (Ft) و اگر آلفا برابر ۰٫۵ باشد، نتیجه‌ی پیش‌بینی برای دوره‌ی t+1 همان میانگین ساده‌ی دو مقدار At و Ft خواهد بود.

در تصویر زیر، شرایط ویژه‌ای که به واسطه‌ی بعضی مقادیر آلفا ایجاد می‌شود را مرور کردیم:


کاملاً مشخص است که در روش هموارسازی از داده‌های آخرین دوره استفاده می‌کنیم اما تکلیف دوره‌های قبلی چه می‌شود؟ اگر دقت کنید مقدار Ft خودش بر مبنای At-1 و Ft-1 محاسبه می‌شود و به همین ترتیب Ft-1 بر مبنای At-2 و Ft-2، پس تمام داده‌های قبلی اثرگذار هستند اما در هر مرحله به واسطه‌ی ضریب آلفا (که مقدارش بین ۰ تا ۱ است) از تأثیرشان کم می‌شود، مگر این‌که آلفا را صفر در نظر بگیریم.


متخصصان علم آمار گاهی مقدار آلفا را به‌صورت تجربی انتخاب می‌کنند اما استفاده از آزمون و خطا هم رایج است. برای این‌کار داده‌های قبلی (که مقدارشان معلوم است) با مقادیر مختلف آلفا پیش‌بینی می‌شوند تا مشخص شود کدام مقدار آلفا به نتایج دقیق‌تری رسیده است و سپس از همان مقدار برای پیش‌بینی دوره‌ها‌ی بعدی استفاده می‌شود.

مثال. به جدول زیر توجه کنید:


برای ماه اول امکان پیش‌بینی وجود ندارد چون اطلاعات ماه قبل (ماه ۰) موجود نیست.

برای ماه دوم، از آن‌جایی که مقدار Ft (پیش‌بینی برای ماه اول) وجود ندارد، همان عدد ۱۷۳ را قرار می‌دهیم.

از ماه سوم می‌توانیم میانگینِ وزن‌دار هر دوره را بر اساس تعداد فروش واقعی و پیش‌بینی ماه قبلی محاسبه کنیم که رابطه‌ی آن را بالاتر نوشتیم.

در این مثال از آلفای ۰٫۲ استفاده کردیم، پس برای ماه سوم داریم:

مطابق این رابطه، مقدار F3 (پیش‌بینی برای ماه سوم) برابر است با ۱۵۸ و به همین ترتیب می‌توانیم مقادیر مربوط به ماه‌های دیگر را محاسبه کنیم.

در قدم بعدی همین محاسبات را با آلفای ۰٫۸ انجام می‌دهیم تا ببینیم کدام مقدار آلفا (۰٫۲ یا ۰٫۸) دقت بالاتری دارد.

نکته: نرم‌افزارهای آماری خودشان این محاسبات را انجام می‌دهند تا بهترین مقدار n را پیشنهاد کنند.

محاسبات مربوط به آلفای ۰٫۲ و ۰٫۸ و خطای هر کدام را در جدول زیر مشاهده می‌کنید:

همان‌طور که می‌بینید، آلفا با مقدار ۰٫۸ خطای بسیار کمتری دارد، پس برای پیش‌بینی ماه سیزدهم از آلفای ۰٫۸ استفاده می‌کنیم، ضمناً نتایج پیش‌بینی ماه‌های بعدی در جدول بالا نیست اما دقیقاً مثل دوره‌های قبلی محاسبه می‌شود.

استفاده از روش هموارسازی نمایی ساده در اکسل


ابتدا اطلاعات فروش را وارد می‌کنیم.

سپس از منوی DATA روی DATA Analysis کلیک می‌کنیم. (اگر گزینه‌ی Data Analysis را مشاهده نمی‌کنید، به توضیحات اکسل در درس روابط علت و معلول مراجعه کنید)

از پنجره‌ی باز شده Exponential Smoothing را انتخاب می‌کنیم.

نمو هموار در اکسل


در پنجره‌ی تنظیمات، برای Input Range مقادیر اطلاعات وارد شده و یک خانه پایین‌تر را انتخاب می‌کنیم. در صورتی که این خانه‌ی خالی انتخاب نشود، دوره‌ی بعدی پیش‌بینی نخواهد شد.


در Output Range مشخص می‌کنیم که جواب‌ها در کدام ناحیه‌ نمایش داده شود.


مقدار Damping Factor تفاضل مقدار آلفا از عدد یک را نشان می‌دهد، یعنی برای آلفای ۰٫۴ مقدار Damping Factor را ۰٫۶ انتخاب می‌کنیم یا برای آلفای ۰٫۲ مقدار Damping Factor را ۰٫۸ انتخاب می‌کنیم.


اگر تیک Labels فعال باشد،‌ اولین مقدار وارد شده به عنوان اسم ستون در نظر گرفته می‌شود و در محاسبات لحاظ نمی‌شود، پس حتماً تیک آن را بردارید تا مشکلی ایجاد نشود.

بخش‌ دوم: روش هموارسازی نمایی با تصحیح روند

همان‌طور که در درس روابط علت و معلول گفتیم گاهی داده‌ها از یک روند افزایش یا کاهش پیروی می‌کنند.

روش‌هایی که تا این لحظه یاد گرفتید قابلیت جبران این روندها را ندارند، اما در این بخش با روشی برای این‌کار آشنا می‌شوید.

البته قرار نیست کار سختی انجام دهیم، بلکه همان اقدامات بخش اول را انجام می‌دهیم اما به نتایج پیش‌بینی مقادیری را اضافه یا کم می‌کنیم تا روند افزایشی یا کاهشی داده‌ها در نظر گرفته شود. شبیه رابطه‌ی زیر:

جبران روند در هموارسازی نمایی

جمله‌ی (Ft+1) همانی است که در بخش اول پیش‌بینی کردیم:

اما جمله‌ی دوم (Tt+1) که الگوی افزایش یا کاهش روند را پیش‌بینی می‌کند برابر است با:

پیش‌بینی مقدار روند (Trend)

اگر دقت کنید برای پیش‌بینی میزان رشد یا کاهش (تحت تأثیر روند) از همان روش هموارسازی نمایی ساده استفاده می‌کنیم، فقط به ‌جای آلفا از بتا استفاده شده است.

در ادامه مثال قبلی را با تصحیح روند حل می‌کنیم. در بخش قبلی دیدیم که آلفای ۰٫۸ خطای کمتری داشت، پس آلفا را ۰٫۸ و بتا را ۰٫۵ در نظر می‌گیریم، البته می‌توانیم برای انتخاب بتا از آزمون و خطا استفاده کنیم (شبیه کاری که در مثال اول انجام شد) اما به علت محدودیت فضای جدول از این‌کار صرف نظر کردیم.

داده‌های ستون اول (پیش‌بینی با آلفای ۰٫۸) با روش نمو هموار ساده محاسبه شده است که در در بخش اول حل کردیم.

برای پیش‌بینی روند، در مورد ماه اول به داده‌های قبلی دسترسی نداریم و آن را رها کردیم و برای ماه دوم یک مقدار فرضی نوشتیم. (فرض کردیم افزایش یا کاهش نداریم و صفر گذاشتیم)

وقتی تعداد داده‌ها زیاد است، می‌توانیم این مقدار فرضی را صفر در نظر بگیریم و خودش به تدریج، با طی دوره‌های بعدی، دقیق و دقیق‌تر می‌شود.  اما اگر تعداد داده‌ها کم باشد می‌توانیم به مقدار افزایش و کاهش دوره‌ها (روند تقریبی) دقت کنیم و بر اساس آن‌ها مقداری را بنویسیم تا سریع‌تر به دقت مناسب برسد.

نهایتاً مقدار پیش‌بینی شده‌ی نهایی (با تصحیح روند) از مجموع نتایج نمو هموار ساده و روندهای پیش‌بینی شده محاسبه شده است، مثلاً پیش‌بینی اولیه برای ماه دهم ۲۶۱٫۸۰ فروش بوده است و حدس زدیم که الگوی Trend به‌اندازه‌ی ۲۹٫۳۴+ روی آن اثر بگذارد، پس پیش‌بینی نهایی برابر شد با ۲۹۱٫۱۴ واحد فروش.

خطای پیش‌بینی هر دو روش را در جدول وارد کردیم تا بتوانید آن‌ها را به سادگی مقایسه کنید.

هموار سازی نمایی با تصحیح روند در اکسل

متأسفانه در اکسل دستور آماده‌ای برای تصحیح روند وجود ندارد و باید خودمان فرمول‌نویسی کنیم، به همین علت درس جداگانه‌ای را به این موضوع اختصاص دادیم که در ادامه‌ی دوره به آن می‌رسید.

شماره و نام درسی که هم‌اکنون خواندید:

درس هفتم. پیش‌بینی با روش هموارسازی نمایی از دوره‌ی پیش‌بینی تقاضا

درس اولپیش بینی تقاضا چیست و چه کاربردی دارد؟
درس دومتفاوت روش‌های کمی و کیفی پیش بینی
درس سومروش‌های کیفی پیش‌بینی
درس چهارممقدمه‌ی روش‌های کمی
درس پنجم شناسایی رابطه‌ی ریاضی میان علت و معلول
درس ششمپیش بینی با روش‌های مبتنی بر میانگین
درس هفتمپیش‌بینی با روش هموارسازی نمایی (نمو هموار)
درس هشتمپیش‌بینی داده‌های فصلی
درس نهممعیارهایی برای سنجش دقت پیش‌بینی
درس دهممثال کاربردی از پیش‌بینی با اکسل