باتیں ادھر ادھر کی

تازہ ترین

Post Top Ad

Your Ad Spot

پیر، 30 دسمبر، 2019

مریخ گاڑی کا مسئلہ اور کمپیوٹر سائنس


خلانوردی کی تاریخ کا اہم سنگِ میل حاصل کر لیا گیا تھا۔ 1997 کے موسمِ گرما میں پہلی بار زمین سے بھیجی گاڑی مریخ کی سطح پر 4 جون کو اتری تھی ۔پندرہ کروڑ ڈالر کے خرچ سے ہونے والے مشن مارس پاتھ فائنڈر کا سپیس کرافٹ سولہ ہزار میل فی گھنٹہ کی رفتار حاصل کر کے 31 کروڑ میل کا سفر کر کے سرخ سیارے تک پہنچا تھا۔ مریخ گاڑی ائیربیگ کی مدد سے لینڈ کرنے میں کامیاب ہو گئی تھی۔ اور اب ۔۔۔

یہ گاڑی کچھ بھی نہیں کر رہی تھی۔

۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔

کائنات میں کیا ممکن ہے؟ کس کی اجازت ہے؟ بنیادی قوانین اور حدود کیا ہیں؟ روشنی کی رفتار، سپرکنڈکٹر، تھرموڈائنامک انٹروپی، وقت کا سفر ۔۔۔ پارٹیکل فزسٹ اور کاسمولوجسٹ ہی نہیں، کمپیوٹر سائنٹسٹ بھی “خدا کے بلیوپرنٹ” میں ویسے ہی جھانکتے دکھائی دیتے ہیں۔ کمپیوٹر سائنس کے سوال کچھ اس طرح کے ہوتے ہیں کہ “ایک فہرست کو کم سے کم کتنے وقت میں ترتیب میں لایا جا سکتا ہے؟”۔ کیا یہ ممکن ہے کہ اس کو لینئیر وقت میں کیا جا سکے (یعنی جتنی لمبی فہرست ہو، وقت بڑھنے کا تناسب اتنا ہی ہو) یا پھر کانسٹنٹ وقت میں کیا جا سکے، (یعنی جتنی بھی لمبی فہرست ہو، ترتیب دینے میں وقت اتنا ہی لگے)۔

۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔

شیڈول بنانا ایک مسئلہ ہے۔ اگر میرے پاس کاموں کی ایک لسٹ ہے تو پہلے کونسا کام کیا جائے؟ کس چیز کو کتنا وقت دیا جائے؟ اس کو کرنے کے کئی طریقے ہیں۔ یہ وہ چیلنج ہے جو ہمیں روزانہ کی زندگی میں درپیش ہوتا ہے۔ اس پر کتابوں پر کتابیں لکھی جا چکیں ہیں۔ (جن میں دئے گئے مشورے ایک دوسرے سے متضاد بھی ہوتے ہیں)۔ کمپیوٹنگ میں شیڈولنگ کو ٹھیک کرنا ایک بڑا چیلنج ہے۔

۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔

جیٹ پروپلشن لیب کا عملہ پریشان بھی تھا اور اسے کچھ سمجھ نہیں آ رہا تھا۔ ترجیح میں سب سے زیادہ اہم کام (جو ڈیٹا کو انفارمیشن بس سے نکالنا اور ڈالنا تھا) کو روبوٹ مسلسل نظرانداز کر رہا تھا۔ اپنا وقت ایک درمیانہ درجے کی اہمت والے کام پر لگا رہا تھا۔ اس روبوٹ کو کیا ہو گیا تھا؟

پھر بڑی دیر تک جب زیادہ ترجیح والا کام مکمل نہ ہو سکا تو روبوٹ کے سسٹم نے آخری حربے کے طور پر خود کو ری سٹارٹ کر دیا۔ اس سب میں ایک پورا دن ختم ہو چکا تھا۔ اگلا دن ایک بار پھر ویسا ہی رہا۔

۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔

ٹیم دن رات اس مسئلے کو سمجھنے میں لگی ہوئی تھی اور آخر انہیں اس کی وجہ سمجھ آ گئی۔ مسئلہ شیڈولنگ کا تھا۔ ایک کلاسیکل مسئلہ جسے ترجیح کا معکوس ہو جانا کہتے ہیں۔

ایک بہت کم ترجیح والا کام شروع ہوا۔ اس نے اس دوران ایک اہم ریسورس پکڑ لیا۔ اس کام کے دوران زیادہ ترجیح والے کام کا وقت آ گیا۔ سسٹم نے پہلے کام کو درمیان میں روک کر زیادہ ترجیح والا کام اٹھا لیا۔ اس کو وہی ریسورس درکار تھا جو کم ترجیح والا کام پکڑ چکا تھا۔ نیا شروع ہونے والا کام اس کا انتظار کرتا رہا۔ سسٹم نے جب دیکھا کہ یہ تو ہو نہیں رہا تو اس کو بھی روک دیا اور اگلا کام اٹھا لیا۔ درمیانہ ترجیح والے کام ہوتے ہوتے بہت کم ترجیح والے کی دوبارہ باری ہی نہیں آئی اور اس کی وجہ سے نہ ہی سب سے اہم کام ہو سکا اور یہ دیر تک رکا رہا۔ یہاں تک کہ سسٹم ہی غیرمستحکم ہو کر ری سٹارٹ ہو گیا۔

۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔

ایک بار مسئلہ پتا لگ گیا تو حل آسان تھا۔ اس کا پروگرام ٹھیک کیا گیا۔ مواصلاتی رابطے کے روور تک بھیجا گیا اور یوں یہ مریخ گاڑی ٹھیک ہوئی۔ لیکن یہ حل کیا تھا؟ اس کو ترجیح کی وراثت کہتے ہیں۔ اس کا کیا مطلب ہے؟ اس کو عام زندگی کی مثال سے۔

۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔

آپ کے پاس ایک کرائے کی وین ہے جس کو واپس کرنا ارجنٹ ہے۔ لیکن آپ اس کو اس وقت تک واپس نہیں کر سکتے جب تک کچھ بھاری آلات کسی اور کو واپس نہیں کر دیتے جو اسی وین پر لے جائے جا سکتے ہیں۔ یہ آلات اس وقت تک واپس نہیں کر سکتے جبکہ گھر میں ایک مرمت کو ختم نہیں کر لیتے۔ یہ مرمت خود میں بالکل اہم نہیں اور اس کو کرنے کی کوئی جلدی نہیں۔

لیکن وین کو واپس کرنے کی جلدی کی وجہ سے یہ کم اہم کام ارجنٹ ہو گیا۔ یہ ترجیح کی وراثت ہے۔ یعنی ایک کام کے دوسرے پر انحصار نے اس کی ترجیح بدل دی۔ اور یہ مرمت کرنا اب آپ کے شیڈول میں سب سے پہلے آنا چاہیے۔

پاتھ فائنڈر کے مسئلے کو شیڈولنگ کے اس طریقے سے ٹھیک کیا گیا۔

۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔

پاتھ فائنڈر میں یہ مسئلہ آیا کیوں تھا؟ اس کی اپنی وجہ بھی شیڈولنگ تھی۔ یہ غلطی ڈیڈلائن کے پریشر کی وجہ سے پکڑی نہیں گئی تھی کیونکہ اس کو پکڑنا خود کم ترجیح والا کام تھا۔ ٹیم کی شیڈولنگ کے مسئلے کی وجہ سے اس مریخ گاڑی کی شیڈولنگ کا مسئلہ پیدا ہو گیا تھا۔

۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔۔

پراجیکٹ ٹیم کے لیڈر گلین ریوز اس سے کیا نتیجہ نکالتے ہیں؟
شیڈول بنانے میں خرابی سے بچنے کا سب سے اہم اصول یہ نہیں کہ سب کچھ ختم کرنے پر توجہ مرکوز رکھی جائے۔ یہ اصول بھی نہیں کہ سب سے اہم چیزوں کو ختم کرنے پر توجہ مرکوز رکھی جائے۔ بلکہ یہ کہ کبھی کسی اہم چیز کو غیراہم چیز کے رحم و کرم پر نہ چھوڑا جائے۔ (شیڈولنگ تھیوری میں اس کو منحصر ہونے کی قید کہا جاتا ہے)۔

گلین ریوز کہتے ہیں کہ یہ زندگی بسر کرنے میں بھی اچھا راہنما اصول ہو سکتا ہے۔



کوئی تبصرے نہیں:

ایک تبصرہ شائع کریں

تقویت یافتہ بذریعہ Blogger.

رابطہ فارم

نام

ای میل *

پیغام *

Post Top Ad

Your Ad Spot

میرے بارے میں