پژوهشگران MIT ابزاری برای شبیهسازی دقیق سامانههای پیچیده ایجاد کردند

پژوهشگران MIT ابزاری برای شبیهسازی دقیق سامانههای پیچیده ایجاد کردند
پژوهشگران اغلب هنگام طراحی الگوریتمهای جدید از شبیهسازیها استفاده میکنند، زیرا آزمایش ایدهها در دنیای واقعی میتواند پرهزینه و پرخطر باشد. اما از آنجایی که امکان ثبت تمام جزئیات یک سامانه پیچیده در شبیهسازی وجود ندارد، معمولاً مقدار کمی داده واقعی جمعآوری میکنند که در طول شبیهسازی اجزایی که قصد مطالعه آنها را دارند، بازپخش میشود.
این روش که به نام «شبیهسازی مبتنی بر ردپا» (trace-driven simulation) شناخته میشود (و دادههای واقعی کوچک “ردپا” یا “trace” نامیده میشوند)، گاهی منجر به نتایج دارای سوگیری میشود. این بدان معناست که ممکن است پژوهشگران ناآگاهانه الگوریتمی را انتخاب کنند که بهترین گزینه ارزیابیشده نباشد و عملکرد واقعی آن از آنچه شبیهسازی پیشبینی کرده ضعیفتر باشد.
پژوهشگران مؤسسه فناوری ماساچوست (MIT) روشی جدید توسعه دادهاند که منبع این سوگیری را در شبیهسازیهای مبتنی بر ردپا از بین میبرد. با فراهم کردن امکان شبیهسازی بدون سوگیری، این تکنیک جدید میتواند به پژوهشگران در طراحی الگوریتمهای بهتر برای کاربردهای گوناگون کمک کند، از جمله بهبود کیفیت ویدیو در اینترنت و افزایش عملکرد سامانههای پردازش داده.
الگوریتم یادگیری ماشین این پژوهشگران بر پایه اصول علیت عمل میکند تا بیاموزد که چگونه رفتار سامانه بر دادههای ردپا تأثیر گذاشته است. به این ترتیب، آنها میتوانند نسخهای صحیح و بدون سوگیری از ردپا را در طول شبیهسازی بازپخش کنند.
در مقایسه با یک شبیهساز مبتنی بر ردپای پیشین، روش شبیهسازی این پژوهشگران بهدرستی پیشبینی کرد که کدام الگوریتم تازهطراحیشده برای پخش ویدیو بهتر خواهد بود — یعنی الگوریتمی که منجر به وقفه کمتر و کیفیت تصویری بالاتری میشود. شبیهسازهای موجود که سوگیری را در نظر نمیگیرند، ممکن بود پژوهشگران را بهسوی انتخاب الگوریتمی با عملکرد ضعیفتر سوق دهند.
آرش نصر اصفهانی، دانشجوی کارشناسی ارشد مهندسی برق و علوم کامپیوتر و یکی از نویسندگان اصلی مقالهای درباره این تکنیک جدید میگوید:
«دادهها تنها چیز مهم نیستند. داستان پشتپرده اینکه دادهها چگونه تولید و جمعآوری شدهاند نیز اهمیت دارد. اگر بخواهید به یک پرسش خلافواقع (counterfactual) پاسخ دهید، باید فرآیند تولید دادهها را بدانید تا فقط روی آن چیزهایی مداخله کنید که واقعاً میخواهید شبیهسازی شوند.»
او در این مقاله با عبدالله العمر و پویا حمدانیان، دانشجویان کارشناسی ارشد همتراز خود، انیش اگرول (Anish Agarwal) دانشآموخته دکتری سال ۲۰۲۱، و نویسندگان ارشد محمد علیزاده، دانشیار مهندسی برق و علوم کامپیوتر، و دواورات شاه (Devavrat Shah)، استاد کرسی اندرو و ارنا ویتربی در EECS و عضو مؤسسه داده، سامانهها و جامعه (IDSS) و آزمایشگاه سامانههای اطلاعات و تصمیمگیری (LIDS) همکاری داشته است. این پژوهش بهتازگی در کنفرانس USENIX در زمینه طراحی و پیادهسازی سامانههای شبکهای ارائه شده است.
شبیهسازیهای گمراهکننده
پژوهشگران MIT شبیهسازی مبتنی بر ردپا را در زمینهی کاربردهای پخش ویدیوی آنلاین مورد مطالعه قرار دادند.
در پخش ویدیو، یک الگوریتم تطبیقی نرخ بیت (adaptive bitrate) بهطور پیوسته کیفیت ویدیو یا نرخ بیت را براساس دادههای لحظهای مربوط به پهنای باند کاربر انتخاب میکند. برای بررسی اینکه الگوریتمهای مختلف تطبیق نرخ بیت چگونه بر عملکرد شبکه تأثیر میگذارند، پژوهشگران میتوانند در حین پخش ویدیو دادههای واقعی کاربران را جمعآوری کرده و از آنها برای یک شبیهسازی مبتنی بر ردپا استفاده کنند.
آنها از این ردپاها استفاده میکنند تا شبیهسازی کنند که اگر در همان شرایط زیرساختی، پلتفرم از یک الگوریتم تطبیق نرخ بیت متفاوت استفاده میکرد، چه اتفاقی برای عملکرد شبکه میافتاد.
پژوهشگران بهطور سنتی فرض میکردند که دادههای ردپا “برونزاد” (exogenous) هستند، یعنی تحت تأثیر عواملی که در طول شبیهسازی تغییر داده میشوند قرار ندارند. به عبارت دیگر، آنها تصور میکردند که الگوریتم تطبیق نرخ بیت در دورهای که دادههای عملکرد شبکه جمعآوری شده، هیچ تأثیری بر آن دادهها نداشته است.
اما این فرض اغلب نادرست است و منجر به سوگیری در درک رفتار الگوریتمهای جدید میشود، که شبیهسازی را نامعتبر میکند. علیزاده در این رابطه توضیح میدهد:
«ما (و دیگران) به این نتیجه رسیدیم که این روش شبیهسازی میتواند خطا ایجاد کند. اما فکر نمیکنم خیلیها واقعاً میدانستند که این خطاها چقدر میتوانند جدی باشند.»
برای یافتن راهحل، علیزاده و همکارانش این مسئله را بهعنوان یک مسئلهی استنباط علیتی (causal inference) مطرح کردند. برای جمعآوری یک ردپای بدون سوگیری، باید علتهای مختلفی را که بر دادههای مشاهدهشده تأثیر میگذارند، درک کرد. برخی علتها درونی سیستم هستند و برخی دیگر تحت تأثیر کنشهایی هستند که انجام میشوند.
در مثال پخش ویدیو، عملکرد شبکه هم تحت تأثیر انتخابهای الگوریتم تطبیق نرخ بیت قرار دارد و هم تحت تأثیر عوامل ذاتی مانند ظرفیت شبکه.
او میگوید:
«وظیفه ما این است که این دو تأثیر را از هم تفکیک کنیم؛ یعنی بفهمیم چه بخشهایی از رفتاری که مشاهده میکنیم ناشی از ویژگیهای ذاتی سیستم است و چه بخشهایی نتیجهی کنشهایی است که انجام شدهاند. اگر بتوانیم این دو اثر را از هم جدا کنیم، آنگاه میتوانیم شبیهسازیهایی بدون سوگیری انجام دهیم.»
یادگیری از دادهها
اما پژوهشگران اغلب نمیتوانند ویژگیهای درونی سیستم را بهطور مستقیم مشاهده کنند. اینجاست که ابزار جدیدی به نام CausalSim وارد عمل میشود. این الگوریتم میتواند تنها با استفاده از دادههای ردپا، ویژگیهای زیرساختی و پنهان سیستم را یاد بگیرد.
CausalSim دادههای ردپایی را که از طریق یک آزمایش کنترلشده تصادفی (randomized control trial) جمعآوری شدهاند، دریافت میکند و تابعهای زیرین تولیدکننده آن دادهها را تخمین میزند. این مدل به پژوهشگران نشان میدهد که تحت شرایط زیرساختی دقیقاً مشابهی که یک کاربر تجربه کرده، یک الگوریتم جدید چگونه نتیجه را تغییر میدهد.
در یک شبیهسازی معمولی مبتنی بر ردپا، سوگیری ممکن است پژوهشگر را به انتخاب الگوریتمی سوق دهد که در واقع عملکرد ضعیفتری دارد، حتی اگر شبیهسازی نشان دهد که باید بهتر باشد. CausalSim به پژوهشگران کمک میکند تا بهترین الگوریتم آزمایششده را انتخاب کنند.
پژوهشگران MIT این موضوع را در عمل مشاهده کردند. زمانی که آنها از CausalSim برای طراحی الگوریتم بهبودیافتهی تطبیق نرخ بیت استفاده کردند، این ابزار آنها را بهسوی انتخاب گونهای جدید سوق داد که نرخ وقفهی پخش (stall rate) آن تقریباً ۱.۴ برابر کمتر از یک الگوریتم شناختهشده و رایج بود، در حالی که کیفیت ویدیو در همان سطح باقی ماند. نرخ وقفهی پخش، مدتزمانی است که کاربر صرف بافر شدن ویدیو میکند.
در مقابل، یک شبیهساز تخصصی مبتنی بر ردپا پیشبینی متفاوتی ارائه داد؛ این شبیهساز نشان میداد که گونهی جدید باید نرخ وقفهای تقریباً ۱.۳ برابر بیشتر داشته باشد. پژوهشگران الگوریتم را در پخش ویدیوی واقعی آزمایش کردند و دریافتند که پیشبینی CausalSim درست بوده است.
پویا حمدانیان میگوید:
«نتایجی که ما در گونهی جدید بهدست آوردیم، بسیار نزدیک به پیشبینیهای CausalSim بود، در حالی که شبیهساز تخصصی کاملاً اشتباه کرده بود. این خیلی هیجانانگیز است، چون این شبیهساز تخصصی در یک دههی گذشته در تحقیقات مورد استفاده بوده. اگر CausalSim اینقدر بهتر باشد، چه بسا کارهای فوقالعادهای با آن بتوان انجام داد.»
در یک آزمایش ۱۰ ماهه، CausalSim بهطور مداوم دقت شبیهسازی را بهبود داد و الگوریتمهایی تولید کرد که تقریباً نیمی از خطاهای الگوریتمهای طراحیشده با روشهای پایه را داشتند.
پژوهشگران در آینده قصد دارند از CausalSim در شرایطی استفاده کنند که دادههای آزمایش کنترلشده تصادفی در دسترس نباشد یا بازیابی پویاییهای علّی سیستم بهویژه دشوار باشد. آنها همچنین میخواهند بررسی کنند که چگونه میتوان سیستمها را بهگونهای طراحی و نظارت کرد که تحلیل علّی در آنها آسانتر و دقیقتر انجام شود.
دیدگاهتان را بنویسید