بهینهسازی تولید معمولاً با یک مدل ریاضی شروع میشود: متغیرها، محدودیتها و یک هدف. اما مدل ریاضی فقط به اندازهٔ فرضهایش درست است. در تولید انرژیبر، همین فرضها مدام تغییر میکنند: تعرفهٔ انرژی نوسان دارد، قطعیهای برنامهریزینشده رخ میدهد و رفتار فرایند را نمیتوان بهسادگی با یک مدل تحلیلی دقیق توصیف کرد. در این یادداشت توضیح میدهم چرا ترکیب یادگیری ماشین و بهینهسازی برای چنین شرایطی مناسب است.
مسئله: زمانبندی تولید در شرایط نوسان انرژی
کیفیت محصول باید حفظ شود، در حالی که محدودیتها تغییر میکنند. برنامهای که دیروز بهترین بود، با تعرفهٔ امروز یا با یک قطعی ممکن است دیگر بهترین نباشد. پس مسئله فقط «حل» یک مدل نیست؛ مسئله این است که برنامه همراه با وضعیت عملیاتی بهروز بماند.
بهینهسازی مبتنی بر یادگیری
ایدهٔ اصلی، که یکی از محورهای پژوهش دکتریام در مهندسی صنایع در دانشگاه تهران هم هست، ساده است: مدلهای جانشین آموختهشده از دادهٔ عملیاتی درون برنامهریزی ریاضی قرار میگیرند و بهینهسازی را به رفتار واقعی فرایند نزدیکتر میکنند.
به زبان سادهتر:
- یادگیری ماشین رفتار فرایند و کیفیت را از داده تقریب میزند؛ همان بخشی که مدل تحلیلی دقیق برایش در دست نیست.
- برنامهریزی عدد صحیح مختلط (MILP) این تقریب را در کنار محدودیتهای کیفیت، انرژی، تعرفه و قطعی به کار میگیرد و زمانبندی تولید را میسازد.
هیچکدام بهتنهایی کافی نیست. مدل یادگیری ماشین بدون بهینهسازی فقط پیشبینی میکند؛ بهینهسازی بدون مدل آموختهشده بر فرضهایی تکیه میکند که در عمل برقرار نیستند.
حلقهٔ بسته، نه یکبار اجرا
در پروژهٔ بهینهسازی مبتنی بر یادگیری با هوش مصنوعی عاملمحور این دو در یک چارچوب حلقهبسته کنار هم قرار گرفتند:
- سیگنالهای فرایند، کیفیت و انرژی از عملیات گردآوری میشود.
- مدلهای جانشین رفتار فرایند و کیفیت را تقریب میزنند.
- زمانبندی MILP با در نظر گرفتن محدودیتهای کیفیت، انرژی، تعرفه و قطعی، گزینههای اجرایی را بررسی میکند.
- یک عامل هوش مصنوعی ناظر وضعیت را پایش میکند، حلقه را دوباره اجرا میکند و بدهبستان گزینهها را توضیح میدهد.
- خروجی، برنامهٔ تولیدی کیفیتآگاه و انرژیآگاه است که برنامهریز میتواند بر پایهٔ آن اقدام کند.
نقش من در این ابتکار، بهعنوان مدیر تحقیق و توسعه، صورتبندی مسئلهٔ عملیاتی، تعریف رویکرد مدلسازی و بهینهسازی، طراحی معماری لایهٔ عاملمحور و راهبری کار تا رسیدن به سامانهٔ در حال اجرا بود.
چرا توضیحپذیری مهم است
برنامهریز برنامهای را اجرا نمیکند که نمیداند چرا پیشنهاد شده است. برای همین عامل ناظر فقط حلقه را دوباره اجرا نمیکند؛ منطق انتخاب گزینهها را هم توضیح میدهد. بهینهسازی تولید وقتی به نتیجه میرسد که تصمیمش قابلفهم و قابلاجرا باشد.
گام بعد
اگر در تولید شما هم کیفیت، انرژی و محدودیتهای متغیر همزمان در برنامه اثر میگذارند، دربارهٔ خدمات بهینهسازی و تحقیق در عملیات بیشتر بخوانید. زاویهٔ دیگر همین موضوع را در یادداشت برنامهریزی تولید با بهینهسازی و هوش مصنوعی نوشتهام.