شما در حال خواندن درس برنامهریزی تجمعی چیست از مجموعه برنامهریزی و کنترل تولید هستید.
برنامه ریزی تجمعی، برنامهریزی ادغامی، برنامهریزی جامع یا Aggregate Planning عناوینی هستند که برای برنامهریزی ظرفیت در میانمدت استفاده میکنیم. برای افق زمانی میانمدت مناسب است که جای برنامهریزی برای هر محصول به صورت جداگانه، محصولات مشابه را در گروههای مشترک قرار داده و برای هر گروه به صورت تجمعی برنامهریزی کنیم. برای مثال اگر دو مدل خودکار و ده مدل مداد داریم، همه خودکارها را در یک گروه و همه مدادها را در گروه دیگر قرار میدهیم و برای عرضه محصولات هر گروه در میانمدت به صورت تجمعی برنامهریزی میکنیم.
اما حتی در شرایطی که فقط یک محصول داریم و گروهبندی مقدور نیست، کماکان برنامهریزی برای آن در میانمدت مفید است. لذا نباید در دام عنوان برنامهریزی تجمعی گرفتار شویم و آن را به گروهبندی محصولات و برنامهریزی آنها محدود کنیم؛ چرا که «تجمعی» بودن مشخصهی اصلی این برنامهریزی نیست و «برای میان مدت بودن» شاخصهی اصلی آن است. چه بسا در بعضی منابع نیز جای عبارت «برنامهریزی تجمعی» از «برنامهریزی عملیات و فروش» یا «Sales and Operations Planning» استفاده میکنند که اشارهای به تجمعی بودن ندارد.
در این درس، توضیحاتی در مورد برنامه ریزی تجمعی ارائه خواهیم کرد. تاکید میکنیم که برنامهریزی تجمعی همان برنامهریزی ظرفیت برای میانمدت است. لذا با توجه به این که در ویکیتولید، مجموعه جداگانهای برای مدیریت ظرفیت تالیف کردهایم، کارمان در این درس سادهتر است و از قبل بسیاری از نکات را میدانیم.
برنامه ریزی تجمعی چیست؟
برنامه ریزی تجمعی (Aggregate Planning) یا برنامه ریزی فروش و عملیات (Sales and Operations Planning) فرایندی است که در آن از برای مواردی مثل تعیین سطوح ظرفیت، مقادیر خروجی، برونسپاری، موجودی، کسری و برنامههای فروش در یک افق زمانی میانمدت تصمیمگیری میکنیم.
این برنامه حداقلیترین و کلیترین تصویری است که برای برنامهریزی و کنترل تولید ترسیم میکنیم و از تصمیمهای استراتژیک سازمان تاثیر میگیرد. ضمن این که برنامه تجمعی از برنامههای بازاریابی و برنامههای مالی تاثیر میگیرد و بر آنها تاثیر میگذارد. نهایتا نیز همین برنامه به برنامه زمانبندی اصلی تولید منتهی میشود و راه را برای تنظیم برنامههای اجرایی با جزئیات بیشتر هموار میکند.
علت استفاده از کلمه تجمعی این است که برای اتخاذ تصمیمهای میانمدت، سادهتر و معمولاً دقیقتر است که محصولات مشابه را در گروههای مشترک تجمیع کرده و برنامهریزی را به صورت گروهی انجام دهیم. با این وجود حتی اگر فقط یک محصول داشته باشیم و گروهبندی بیمورد باشد، کماکان برنامهریزی برای میانمدت مفید است و میتوانیم برای عرضه همان یک محصول از این شیوه برنامهریزی استفاده کنیم.
در منابع مختلف، افق زمانی برنامه ریزی تجمعی را معمولاً ۲ یا ۳ ماه تا ۱۲ یا ۱۸ ماه اعلام میکنند. اما در واقع افق زمانی مناسب به چگونگی تاثیر عوامل خارجی بستگی دارد. در اکثر موارد افق زمانی مناسب برای میانمدت، مدتی است که نمیخواهیم تغییرات اساسی در زیرساختها اعمال کنیم و همچنین عوامل خارجی به اندازهای تاثیرگذار نیستند که زیرساختهای فعلی برای پاسخ به تقاضا ناکارآمد تلقی شوند یا تغییرات تقاضا فاصله زیادی با نتایج پیشبینی داشته باشد. برای همین هر چه عوامل بیشتری روی تقاضا و ظرفیت واقعی تاثیرگذار باشند، افق زمانی را کوتاهتر انتخاب میکنیم.
ضمن این که اشاره کردیم برنامه ریزی تجمعی، همان برنامهریزی ظرفیت برای میانمدت است. لذا همانطور که در درس مدیریت ظرفیت گفتیم، هدف اصلی ایجاد انطباق میان عرضه و تقاضا است تا بیشترین سود حاصل شود.
چرا برنامه ریزی تجمعی ضروری است؟
برنامه ریزی تجمعی از لحاظ افق زمانی، در میان برنامهریزی استراتژیک و برنامهریزی کوتاهمدت قرار میگیرد. سوالی که شاید به ذهنمان برسد این است که: چرا بعد از برنامهریزی بلندمدت، فوراً به سراغ برنامهریزی کوتاهمدت نرویم؟ برای پاسخ، ملموستر است از مثال استفاده کنیم.
فرض کنید میخواهیم کارخانه راهاندازی کنیم. این کارخانه به چه تعداد تجهیزات و چقدر فضا نیاز دارد؟ پاسخی که میدهیم، نوعی تصمیم بلندمدت است و باید متناسب با مقدار احتمالی تقاضا در ماهها و سالهای آینده باشد. چرا که ما نمیتوانیم در کوتاهمدت، فضا را بزرگتر یا کوچکتر کنیم یا تجهیزات را تغییر دهیم. برای همین تصمیمی اتخاذ میکنیم که حداقل تا چند سال -یک افق زمانی بلندمدت- به نیازهای ما پاسخ دهد.
اما فرض کنید تصمیمهای بلندمدت را اتخاذ و کارخانه را تاسیس کردهایم. آیا از این لحظه تا چند سال آینده میتوانیم فقط روی برنامههای روزانه و کوتاهمدت تمرکز کنیم و نسبت به چند ماه دیگر -میانمدت- بیتفاوت باشیم؟ درست است که تغییرات اساسی در بلندمدت اتفاق میافتند، اما برنامهریزی برای اموری مثل: تبلیغات، قیمتگذاری، تنظیم سطح موجودی مواد در انبار، تعداد کارکنان و انعقاد قرارداد برای برونسپاری فعالیتها مستلزم این است که از چند ماه قبل و در یک افق زمانی میانمدت برنامهریزی کرده باشیم. مثلاً اگر نتایج پیشبینی دال بر افزایش تقاضا در چهار ماه آینده باشد، موجودی انبار را به سطح بالاتری میرسانیم تا افزایش تفاضا را به کمک آنها جبران کنیم، یا برای استخدام کارکنان جدید برنامهریزی میکنیم تا ظرفیت تولید در ماههای آینده افزایش یابد. این امور زمانبرند و برنامهریزی آنها به چند ماه زمان نیاز دارد. لذا بایستی برای تصمیمگیری در مورد آنها از برنامهریزی تجمعی یا میانمدت استفاده کنیم.
برنامه ریزی تجمعی روی عرضه تمرکز دارد یا تقاضا؟
در درس مدیریت ظرفیت چیست گفتیم: مدیریت ظرفیت دو سمت دارد که یکی سمت عرضه و دیگری سمت تقاضا است. عرضه برآمده از سازمان و منابع آن و تقاضا برآمده از بازار و محیط خارجی سازمان است. برنامهریزی تجمعی میتواند روی سمت تقاضا، روی سمت عرضه یا هر دو متمرکز باشد.
برای برنامهریزی سمت عرضه در میان مدت میتوانیم از گزینههایی مثل: قیمتگذاری، تبلیغات، تغییر در چگونگی انتقال مالکیت و روشهای مبتنی بر پروموشن استفاده کنیم. این روشها را در درس نگاهی به مدیریت تقاضا مطالعه کردیم.
برای برنامهریزی سمت عرضه در میانمدت، میتوانیم از راهکارهایی مثل تغییر اندازه نیروی کار با جذب نفرات جدید یا تعدیل نیرو، استفاده از کارکنان پارهوقت، اضافهکار یا برونسپاری فعالیتها و استفاده از موجودیها استفاده کنیم. اصولاً اعمال تغییرات اساسی در میانمدت مقدور نیست، اما این روشها با تغییرات جزئی به تنظیم تقاضا کمک میکنند. برای مثال اگر تقاضا در حال رشد باشد، میتوانیم با کارخانهای دیگر قرارداد ببندیم تا بخشی از فرایند تولید محصول را بر عهده بگیرد و قابلیت عرضه افزایش یابد. همچنین میتوانیم مقدار خروجی را زیاد کنیم تا هر ماه مقداری محصول در انبار ذخیره شود تا بعداً که تقاضا زیاد شد، از موجودیهای انبار برای جبران کمبود ظرفیت تولید استفاده کنیم.
البته گاه در منابع از عبارت برنامهریزی تجمعی تولید یا Aggregate Production Planninng استفاده میشود که در این حالت برنامه ناظر بر تولید یا سمت عرضه است و اموری مثل بازاریابی را شامل نمیشود.
دو استراتژی برای برنامه ریزی ظرفیت
در درس ظرفیت پایه و برنامهریزی تنظیم ظرفیت توضیح دادیم که برای تنظیم ظرفیت در میانمدت دو استراتژی وجود دارد که یکی ثابت نگه داشتن خروجیها و دیگری تنظیم آن متناسب با مقادیر تقاضا است. استراتژی اول Level Capacity Plan و استراتژی دوم Chase Capacity Plan نام دارد. این دو استراتژی اصلیترین رویکردها برای برنامهریزی تجمعی هستند؛ البته ممکن است در میانمدت ترکیبی از آنها را استفاده کنیم.
اگر بخواهیم برنامه تجمعی را بر اساس استراتژی Level Capacity تنظیم کنیم، مقدار خروجی را در تمام دورهها ثابت نگه میداریم، اما برای پاسخ به نوسانات تقاضا از موجودیهای انبار استفاده میکنیم. ضمن این که در دورههایی که تقاضا زیاد است، در صورتی که امکانپذیر باشد، شاید بخشی از تقاضا را به عنوان سفارش قبول کرده اما محصول را در دورههای دیگر عرضه کنیم.
اگر بخواهیم برنامه تجمعی را بر اساس استراتژی Chase Capacity تنظیم کنیم، مقادیر خروجی را از راه تغییر در تعداد کارکنان، ساعات اضافهکاری، استفاده از کارکنان پارهوقت یا برونسپاری فعالیتها در هر دوره تغییر میدهیم و متناسب با تغییرات تقاضا تنظیم میکنیم.
همچنین ممکن است هر دوی این استراتژیها را همزمان در برنامهمان داشته باشیم که اصطلاحاً استراتژی ترکیبی یا Mixed Strategy نام دارد.
برنامه تجمعی چیست؟
برنامه تجمعی (Aggregated Plan) مهمترین خروجی برنامهریزی تجمعی (Aggregate Planning) است. در برنامه تجمعی معمولاً در مورد موضوعاتی مثل: مقدار تولید محصولات، ظرفیت تجهیزات، تعداد و نوع نیروی کار، میزان ساعات اضافهکار، قراردادهای برونسپاری، مقدار موجودی کالا در یک افق میانمدت تصمیمگیری میکنیم. ضمن این که راهکارهای سمت تقاضا مثل برنامههای تبلیغاتی، قیمتگذاری، پروموشن، عقب انداختن پاسخ به تقاضا، ارائه محصولات جایگزین یا تغییر در نحوهی انتقال مالکیت (مثل فروش اقساطی) هم میتوانند در برنامه تجمعی مورد توجه قرار بگیرند.
نمونه فرمت برای برنامه تجمعی
جدول زیر یک فرمت نمونه برای برنامه تجمعی است که آن را از ویراست چهاردهم کتاب مدیریت عملیات استیونسون انتخاب و ترجمه کردیم. این جدول کامل و دقیق نیست و میتوانیم آن را بسته به مورد تغییر دهیم. مثلاً در این جدول به رایجترین روشهای تنظیم ظرفیت توجه شده، اما برنامهریزی سمت تقاضا و موضوعاتی مثل تبلیغات نادیده گرفته شده است. همجنین شاید ما نخواهیم یا نتوانیم از گزینههایی مثل اضافهکاری، برونسپاری، تغییر تعداد کارکنان یا ذخیره کردن موجودی استفاده کنیم و آنها را از جدول برداریم. البته به طور کلی بهتر است که جدول، شامل تمام روشهای اصلی برای مدیریت هر دو سمت عرضه و تقاضا باشد و نهایتا مواردی که به کار نمیآید را خالی رها کنیم یا مقدار آنها را صفر قرار دهیم. با این کار سادهتر میتوانیم برنامهها یا آلترناتیوهای مختلف را توسعه دهیم و آنها را مقایسه کنیم.
با این که جدول بالا یک فرمت استاندارد و جامع به حساب نمیآید، بررسی آن مفید است و کمک میکند که متناسب با پروژههایمان، جداول مورد نظرمان را ایجاد کنیم. لذا در ادامه بخشهای مختلف آن را توضیح خواهیم داد.
دورههای زمانی: این جدول برای یک برنامه شش ماهه تنظیم شده، یعنی افق زمانی برنامهریزی شش ماه است؛ با این وجود همین افق زمانی به دورههای کوتاهتر یک ماهه تقسیم شده است. گفتنی است برای ایجاد برنامه تجمعی حتماً لازم نیست بازههای زمانی را یک ماهه انتخاب کنیم، بلکه شاید آن را دو ماهه، سه ماهه یا هر مقدار دیگری در نظر بگیریم.
مقدار تقاضا مطابق نتایج پیشبینی: مبنای اصلی برای برنامهریزی ظرفیت، نتایج حاصل از پیشبینی تقاضا است. مطابق نتایج پیشبینی انتظار داریم که مقدار تقاضا در هر دوره به مقدار خاصی برسد که آن را در ردیف اول درج میکنیم. اگر نمیدانید منظور از نتایج پیشبینی تقاضا چیست و چرا باید مبنا قرار بگیرد، لازم است مجموعه پیشبینی تقاضا و مجموعه مدیریت ظرفیت را مطالعه کنید.
مقدار خروجی در هر دوره: یکی از مهمترین موضوعات برنامهریزی تجمعی، تعیین مقادیر خروجی برای کلیهی محصول یا محصولات هر گروه است. مثلاً شاید برنامهریزی کنیم که مقدار خروجی در دوره اول ۴۰۰ واحد باشد. اما چگونه به این مقدار میرسیم؟ شاید در ساعات عادی بتوانیم ۲۵۰ واحد محصول عرضه کنیم. همچنین شاید برای جبران ۱۵۰ واحد باقیمانده، تصمیم بگیریم ۱۰۰ واحد محصول را به کارگاهی دیگر برونسپاری کنیم. همچنین شاید ۵۰ واحد را به واسطه اضافهکار تولید کنیم. نتیجهی این تصمیمها را باید در ردیفها و ستونهای آبی جدول درج کنیم.
فاصله مقدار خروجی تا پیشبینی: در هر دوره ممکن است تصمیم بگیریم که مقدار خروجی بیشتر، برابر یا کمتر از مقدار تقاضای احتمالی باشد. مثلاً شاید در یک دوره خروجی را بیشتر از تقاضای احتمالی تعیین کنیم تا موجودی بیشتری در انبار داشته باشیم و آنها را در دوره بعد که تقاضا بیشتر است، عرضه کنیم. یا شاید امکانات موجود یا منابع مالی در حدی نباشد که به تمام تقاضا پاسخ دهیم، لذا خروجی را کمتر از تقاضا انتخاب کنیم. یا شاید خروجی تمام دورهها را برابر با تقاضای احتمالی قرار دهیم تا موجودیها به حداقل برسند، یا به کلی انبارها را حذف کنیم. در نهایت باید فاصله مجموع مقدار خروجی در هر دوره از مقدار تقاضای احتمالی که در ردیف اول نوشته شده را در ردیف «فاصله مقدار خروجی تا پیشبینی» درج کنیم.
مقدار موجودی در هر دوره: یکی از راههای تنظیم ظرفیت، استفاده از موجودیها است. در واقع میتوانیم مقدار خروجی در بعضی دورهها را افزایش دهیم تا مقداری را به عنوان موجودی در انبار نگه داریم و در دورههای بعدی که کمبود ظرفیت داریم، عرضه کنیم. در نهایت تصمیمهایی که در ارتباط با موجودیها اتخاذ کردهایم را در خانههای سبر جدول درج میکنیم.
تقاضای موکول شده به آینده: یکی از راههای تنظیم ظرفیت، پذیرفتن تقاضا در یک دوره و پاسخ به آن در دورههای آینده است. برای مثال میتوانیم در یک دوره از مشتریان سفارش بگیریم، اما محصول را در دورههای دیگر تحویل دهیم. اگر منابع موجود برای پاسخ به همه تقاضا در یک دوره غیرممکن یا غیر توجیهپذیر باشد، با کمک این راهکار میتوانیم به تقاضای بیشتری پاسخ دهیم. تعداد تقاضایی که بدین شکل در یک دوره قبول میکنیم، اما قرار نیست به آن پاسخ دهیم را در ردیف تقاضای موکول شده یا صورتی درج میکنیم.
هزینههای مربوط به هر دوره: راهکارهای مختلف برای تنظیم ظرفیت مثل برونسپاری، اضافهکاری و نگه داشتن موجودیها، هزینههای متفاوتی دارند. مثلاً شاید هزینه تولید ۱۰۰ واحد محصول به واسطه اضافهکاری، کمتر یا بیشتر از هزینه تولید همین مقدار محصول با برونسپاری باشد. برای همین هزینهها را درج میکنیم تا ببینیم نهایتاً برنامهمان چقدر هزینه تحمیل خواهد کرد. هزینهها میتوانند معیاری برای شناسایی گزینهها و برنامههای مطلوبتر باشند، مثلاً مقادیر مربوط به اضافهکار، برونسپاری و موجودیها را بارها تغییر میدهیم تا مجموع هزینه به حداقل برسد.
برنامه تجمعی و فرایند عمومی حل مساله
توسعه برنامه تجمعی، مسالهای است که هدف آن دستیابی به حداکثر سود با کاهش هزینهها است. این مساله معمولاً جواب دقیق و مشخصی ندارد و اصطلاحاً بدساختار (ill structured) است. برای حل این مسائل مناسب است از فرایند عمومی حل مساله استفاده کنیم. بر اساس فرایند عمومی حل مساله، برای رسیدن به برنامه نهایی ابتدا باید چند برنامه اولیه را توسعه دهیم، سپس مناسبترین برنامه را با ارزیابی و مقایسه گزینهها انتخاب کنیم. بدین جهت معمولاً برای برنامهریزی تجمعی، چند برنامه مختلف پیشنهاد میکنند. مثلاً جدول بالا را با استفاده از راهکارهای مختلف توسعه میدهند. شاید تمرکز یک برنامه روی کاهش تعداد کارکنان و افزایش ساعات اضافهکار باشد. اما برنامه دیگر روی حذف اضافهکار و تنظیم ظرفیت با برونسپاری تمرکز داشته باشد. نهایتا این برنامهها باید مقایسه شوند و مهمترین ملاک، هزینههای ناشی از هر برنامه یا سود حاصل از آن است. مثلاً در مورد جدول بالا میتوانیم نسخههای مختلف را از لحاظ هزینه نهایی مقایسه کنیم تا ببینیم کدام از لحاظ اقتصادی مناسبتر است.
تکنیکهای برنامهریزی تجمعی
تکنیکهای برنامهریزی تجمعی، روشها و ابزارهایی هستند که به تصمیمگیری در مورد موضوعات و مسائل مربوط به آن کمک میکنند. مثلاً اگر بتوانیم ظرفیت را با کمک سه روش «تغییر تعداد کارکنان»، «برونسپاری» و «اضافهکار» تنظیم کنیم، بهترین ترکیب کدام است؟ یا اگر بخواهیم کمبود ظرفیت را با موجودیها جبران کنیم، چگونه موجودیها را برنامهریزی کنیم که به بیشترین سود برسیم؟ برای پاسخ به این سوالات میتوانیم آزمون و خطا کنیم، مثلاً ترکیبهای مختلف را بیابیم و هزینههایشان را محاسبه و مقایسه کنیم. همچنین میتوانیم این مسائل را به شکل ریاضی تعریف کنیم و از روشهای ریاضی کمک بگیریم.
مطالعات زیادی برای توسعه تکنیکهای ریاضی و استفاده از آنها برای حل مسائل برنامهریزی انجام شده است. با این حال، از آن جایی که اولاً روشهای ریاضی بر پایهی فرضیاتی هستند که در جهان واقعی حاکم بر مساله وجود ندارند و ثانیاً به علت عجز مدلهای ریاضی از درک و تجزیهوتحلیل بسیاری از موضوعات، معمولاً سهم روشهای مبتنی بر آزمون و خطا در حل مسائل برنامهریزی پررنگتر است. اما تکنیکهای ریاضی میتوانند امکان تجزیهوتحلیل مقادیر زیادی داده را فراهم آورند، سرعت برنامهریزی را افزایش دهند، ابزاری برای صحهگذاری نتایج آزمون و خطا باشند و به ارزیابی آلترناتیوها کمک کنند.
معمولاً در منابع مدیریت عملیات برای تکنیکهای برنامهریزی به برنامهریزی خطی (Linear Programming) و گاه به قانون تصمیمگیری خطی (Linear Desicision Rule) و مدلهای رگرشن (Regression Models) اشاره میکنند. در مجموعه برنامهریزی و کنترل تولید نیز به بعضی از این روشها خواهیم پرداخت.
دیدگاه خود را ثبت کنید
تمایل دارید در گفتگوها شرکت کنید؟در گفتگو ها شرکت کنید.