Verification and validation of computer simulation models
کمپیوٹر تخروپن ماڈلز کی تصدیق اور توثیق ایک تخروپن ماڈل کی ترقی کے دوران کی جاتی ہے جس کا حتمی مقصد ایک درست اور قابل اعتماد ماڈل تیار کرنا ہوتا ہے۔ "مسائل کو حل کرنے اور فیصلہ سازی میں مدد کے لیے سیمولیشن ماڈل تیزی سے استعمال کیے جا رہے ہیں۔ ان ماڈلز کے ڈویلپرز اور صارفین، ان ماڈلز کے نتائج سے حاصل کردہ معلومات کا استعمال کرتے ہوئے فیصلہ ساز، اور اس طرح کے ماڈلز پر مبنی فیصلوں سے متاثر ہونے والے افراد سب کو صحیح طور پر اس بات کی فکر ہے کہ آیا کوئی ماڈل اور اس کے نتائج "درست" ہیں۔ اس تشویش کو تخروپن ماڈل کی تصدیق اور توثیق کے ذریعے حل کیا جاتا ہے۔ سیمولیشن ماڈل حقیقی دنیا کے نظاموں کی تقریبا نقل ہیں اور وہ کبھی بھی حقیقی دنیا کے نظام کی بالکل نقل نہیں کرتے ہیں۔ اس کی وجہ سے، ماڈل کی تصدیق کی جانی چاہیے اور ماڈل کے مطلوبہ مقصد یا اطلاق کے لیے درکار حد تک توثیق کی جانی چاہیے۔ تخروپن ماڈل کی تصدیق اور توثیق فنکشنل وضاحتیں دستاویزی ہونے اور ابتدائی ماڈل کی ترقی مکمل ہونے کے بعد شروع ہوتی ہے۔ تصدیق اور توثیق ایک تکراری عمل ہے جو کسی ماڈل کی ترقی کے دوران ہوتا ہے۔ تصدیق کمپیوٹر تخروپن کے تناظر میں، کسی ماڈل کی تصدیق اس بات کی تصدیق کرنے کا عمل ہے کہ اسے تصوراتی ماڈل کے حوالے سے صحیح طریقے سے نافذ کیا گیا ہے (یہ درخواست کے دیئے گئے مقصد کے لیے قابل قبول سمجھی جانے والی وضاحتیں اور مفروضوں سے میل کھاتا ہے)۔ تصدیق کے دوران ماڈل کے نفاذ میں غلطیوں کو تلاش کرنے اور ٹھیک کرنے کے لیے ماڈل کی جانچ کی جاتی ہے۔ ماڈل کے تصور کے حوالے سے ماڈل کے نردجیکرن اور مفروضوں سے مماثلت کو یقینی بنانے کے لیے مختلف عمل اور تکنیکیں استعمال کی جاتی ہیں۔ ماڈل کی تصدیق کا مقصد اس بات کو یقینی بنانا ہے کہ ماڈل کا نفاذ درست ہے۔ ایسی بہت سی تکنیکیں ہیں جو کسی ماڈل کی تصدیق کے لیے استعمال کی جا سکتی ہیں۔ ان میں شامل ہیں، لیکن ان تک محدود نہیں ہیں، کسی ماہر کے ذریعہ ماڈل کی جانچ کرنا، منطق کے بہاؤ کے خاکے بنانا جس میں ہر منطقی طور پر ممکنہ عمل شامل ہو، ان پٹ پیرامیٹرز کی مختلف ترتیبات کے تحت ماڈل آؤٹ پٹ کی معقولیت کی جانچ کرنا، اور ایک انٹرایکٹو ڈیبگر کا استعمال کرنا۔ سافٹ ویئر کی تصدیق کے لیے استعمال ہونے والی بہت سی سافٹ ویئر انجینئرنگ تکنیک تخروپن ماڈل کی تصدیق پر لاگو ہوتی ہیں۔ توثیق ماڈل کی حقیقی نظام کی نمائندگی کی درستگی کی جانچ کرتی ہے۔ ماڈل کی توثیق کا مطلب یہ ہے کہ "اس بات کی تصدیق کہ اس کے اطلاق کے دائرہ کار میں کمپیوٹرائزڈ ماڈل ماڈل کے مطلوبہ اطلاق کے مطابق درستگی کی تسلی بخش حد رکھتا ہے"۔ ایک ماڈل کسی مخصوص مقصد یا مقاصد کے سیٹ کے لیے بنایا جانا چاہیے اور اس مقصد کے لیے اس کی صداقت کا تعین کیا جانا چاہیے۔ بہت سے طریقے ہیں جو کمپیوٹر ماڈل کی توثیق کے لیے استعمال کیے جا سکتے ہیں۔ نقطہ نظر ساپیکش جائزوں سے لے کر معروضی شماریاتی ٹیسٹ تک ہوتے ہیں۔ ایک نقطہ نظر جو عام طور پر استعمال ہوتا ہے وہ یہ ہے کہ ماڈل بنانے والے ٹیسٹوں کی ایک سیریز کے ذریعے ماڈل کی صداقت کا تعین کریں۔ نائلر اور فنگر [1967] نے ماڈل کی توثیق کے لیے تین مراحل کا نقطہ نظر وضع کیا جس کی وسیع پیمانے پر پیروی کی گئی ہے: مرحلہ 1۔ ایک ایسا ماڈل بنائیں جس کے چہرے کی توثیق زیادہ ہو۔ مرحلہ 2۔ ماڈل کے مفروضوں کی توثیق کریں۔ مرحلہ 3. ماڈل ان پٹ-آؤٹ پٹ تبدیلیوں کا موازنہ حقیقی نظام کے لیے متعلقہ ان پٹ-آؤٹ پٹ تبدیلیوں سے کریں۔ چہرے کی توثیق ایک ایسا ماڈل جس کے چہرے کی توثیق ہوتی ہے وہ ان لوگوں کے لیے حقیقی دنیا کے نظام کی معقول نقل معلوم ہوتی ہے جو حقیقی دنیا کے نظام سے واقف ہیں۔ چہرے کی صداقت کی جانچ صارفین اور سسٹم سے واقف لوگوں کو ماڈل آؤٹ پٹ کی معقولیت کے لیے جانچ کر کے اور اس عمل میں خامیوں کی نشاندہی کر کے کی جاتی ہے۔ تصدیق میں صارفین کو شامل کرنے کا ایک اضافی فائدہ یہ ہے کہ صارفین کے لیے ماڈل کی ساکھ اور ماڈل پر صارف کا اعتماد بڑھتا ہے۔ ماڈل ان پٹ کے تئیں حساسیت کو چہرے کی صداقت کا اندازہ لگانے کے لیے بھی استعمال کیا جا سکتا ہے۔ مثال کے طور پر، اگر فاسٹ فوڈ ریستوراں ڈرائیو کا تخروپن گاہکوں کی آمد کی شرح 20 فی گھنٹہ اور 40 فی گھنٹہ کے ساتھ دو بار چلایا گیا تو ماڈل آؤٹ پٹ جیسے کہ اوسط انتظار کا وقت یا انتظار کرنے والے گاہکوں کی زیادہ سے زیادہ تعداد آمد کی شرح کے ساتھ بڑھنے کی توقع کی جائے گی۔ ماڈل کے مفروضوں کی توثیق کسی ماڈل کے بارے میں کیے گئے مفروضے عام طور پر دو زمروں میں آتے ہیں: اس بارے میں ساختی مفروضے کہ نظام کیسے کام کرتا ہے اور ڈیٹا کے مفروضے۔ اس کے علاوہ ہم سادگی کے مفروضوں پر بھی غور کر سکتے ہیں جو وہ ہیں جو ہم حقیقت کو آسان بنانے کے لیے استعمال کرتے ہیں۔ ساختی مفروضے نظام کس طرح کام کرتا ہے اور اسے جسمانی طور پر کس طرح ترتیب دیا جاتا ہے اس کے بارے میں کیے گئے مفروضے ساختی مفروضے ہیں۔ مثال کے طور پر، فاسٹ فوڈ ڈرائیو میں سرورز کی تعداد اور اگر ایک سے زیادہ ہیں تو ان کا استعمال کیسے کیا جاتا ہے؟ کیا سرور متوازی طور پر کام کرتے ہیں جہاں گاہک ایک سرور پر جا کر لین دین مکمل کرتا ہے یا کیا ایک سرور آرڈر لیتا ہے اور ادائیگی سنبھالتا ہے جبکہ دوسرا آرڈر تیار کرتا ہے اور خدمت کرتا ہے۔ ماڈل میں بہت سے ساختی مسائل ناقص یا غلط مفروضوں سے آتے ہیں۔ اگر ممکن ہو تو اصل نظام کے کام کاج کو قریب سے دیکھا جانا چاہیے تاکہ یہ سمجھا جا سکے کہ یہ کیسے کام کرتا ہے۔ نظام کے ڈھانچے اور عمل کی اصل نظام کے صارفین کے ساتھ بھی تصدیق کی جانی چاہیے۔ ڈیٹا کے مفروضے ایک تصوراتی ماڈل بنانے اور ماڈل کی توثیق کرنے کے لیے مناسب ڈیٹا کی کافی مقدار دستیاب ہونی چاہیے۔ مناسب ڈیٹا کی کمی اکثر ماڈل کی توثیق کرنے کی کوششوں کے ناکام ہونے کی وجہ ہوتی ہے۔ اعداد و شمار کی تصدیق قابل اعتماد ذرائع سے کی جانی چاہیے۔ اعداد و شمار کے لیے نامناسب شماریاتی تقسیم کو فرض کرنا ایک عام غلطی ہے۔ فرض شدہ شماریاتی ماڈل کی جانچ فٹ ٹیسٹ اور دیگر تکنیکوں کی اچھائی کا استعمال کرتے ہوئے کی جانی چاہیے۔ فٹ ٹیسٹ کی اچھائی کی مثالیں کولموگوروف-سمرنوف ٹیسٹ اور چی مربع ٹیسٹ ہیں۔ ڈیٹا میں موجود کسی بھی آؤٹ لیئر کی جانچ پڑتال کی جانی چاہیے۔ آسان بنانے کے مفروضے وہ مفروضے ہیں جو ہم جانتے ہیں کہ سچ نہیں ہیں، لیکن اس مسئلے کو آسان بنانے کے لیے درکار ہیں جسے ہم حل کرنا چاہتے ہیں۔ ان مفروضوں کا استعمال اس بات کو یقینی بنانے کے لیے محدود ہونا چاہیے کہ ماڈل اتنا درست ہے کہ اس مسئلے کے جواب کے طور پر کام کرے جسے ہم حل کرنا چاہتے ہیں۔ ان پٹ-آؤٹ پٹ تبدیلیوں کی توثیق ماڈل کو ان ٹیسٹوں کے لیے ان پٹ-آؤٹ پٹ تبدیلی کے طور پر دیکھا جاتا ہے۔ توثیق ٹیسٹ میں زیر غور سسٹم سے آؤٹ پٹ کا موازنہ ان پٹ حالات کے اسی سیٹ کے ماڈل آؤٹ پٹ سے کیا جاتا ہے۔ اس ٹیسٹ کو انجام دینے کے لیے نظام کا مشاہدہ کرتے ہوئے ریکارڈ کردہ ڈیٹا دستیاب ہونا ضروری ہے۔ ماڈل آؤٹ پٹ جو بنیادی دلچسپی کا حامل ہے اسے کارکردگی کی پیمائش کے طور پر استعمال کیا جانا چاہیے۔ مثال کے طور پر، اگر زیر غور نظام ایک فاسٹ فوڈ ڈرائیو ہے جس کے ذریعے ماڈل کے لیے ان پٹ گاہک کی آمد کا وقت ہے اور کارکردگی کی آؤٹ پٹ پیمائش گاہک کا اوسط وقت لائن میں ہے، تو ڈرائیو تھرو پر گاہکوں کے لیے لائن میں گزارے گئے اصل آمد کا وقت اور وقت ریکارڈ کیا جائے گا۔ ماڈل کو آمد کے اصل اوقات کے ساتھ چلایا جائے گا اور لائن میں ماڈل کے اوسط وقت کا موازنہ ایک یا زیادہ ٹیسٹوں کا استعمال کرتے ہوئے لائن میں گزارے گئے اصل اوسط وقت سے کیا جائے گا۔ قیاس آرائی کی جانچ ٹی ٹیسٹ کا استعمال کرتے ہوئے شماریاتی مفروضے کی جانچ کو ماڈل کو درست کے طور پر قبول کرنے یا اسے غلط کے طور پر مسترد کرنے کی بنیاد کے طور پر استعمال کیا جا سکتا ہے۔ جس مفروضے کی جانچ کی جانی ہے وہ ہے H0 کارکردگی کی ماڈل پیمائش = کارکردگی کی نظام پیمائش بمقابلہ H1 کارکردگی کی ماڈل پیمائش  ऒत्त کارکردگی کی نظام پیمائش۔ ٹیسٹ کسی دیئے گئے نمونے کے سائز اور اہمیت کی سطح یا α کے لیے کیا جاتا ہے۔ ٹیسٹ انجام دینے کے لیے ماڈل کا ایک نمبر n شماریاتی طور پر آزاد رن کیا جاتا ہے اور سود کے متغیر کے لیے ایک اوسط یا متوقع قیمت، E (Y) تیار کی جاتی ہے۔ پھر ٹیسٹ کے اعدادوشمار، t0 کا حساب دیئے گئے α، n، E (Y) کے لیے کیا جاتا ہے اور نظام کے لیے مشاہدہ شدہ قدر μ0 اور α اور n-1 کے لیے اہم قدر آزادی کی ڈگریوں کا حساب لگایا جاتا ہے۔ اگر H0 کو مسترد کر دیا جائے تو ماڈل کو ایڈجسٹمنٹ کی ضرورت ہے۔ مفروضے کی جانچ کا استعمال کرتے ہوئے دو قسم کی غلطیاں ہو سکتی ہیں، ٹائپ I ایرر یا "ماڈل بلڈرز رسک" نامی ایک درست ماڈل کو مسترد کرنا اور ٹائپ II ایرر، β، یا "ماڈل یوزر رسک" نامی ایک غلط ماڈل کو قبول کرنا۔ اہمیت کی سطح یا α ٹائپ I غلطی کے امکان کے برابر ہے۔ اگر α چھوٹا ہے تو کالعدم مفروضے کو مسترد کرنا ایک مضبوط نتیجہ ہے۔ مثال کے طور پر، اگر α = 0.05 اور کالعدم مفروضے کو مسترد کر دیا جائے تو درست ماڈل کو مسترد کرنے کا صرف 0.05 امکان ہے۔ ٹائپ II کی غلطی کے امکان کو کم کرنا بہت ضروری ہے۔ غلط ماڈل کا صحیح طریقے سے پتہ لگانے کا امکان 1-β ہے۔ ٹائپ II کی غلطی کا امکان نمونے کے سائز اور نمونے کی قیمت اور مشاہدہ شدہ قیمت کے درمیان اصل فرق پر منحصر ہے۔ نمونے کا سائز بڑھانے سے ٹائپ II کی غلطی کا خطرہ کم ہو جاتا ہے۔ رینج کے طور پر ماڈل کی درستگی ایک شماریاتی تکنیک جہاں ماڈل کی درستگی کی مقدار کو رینج کے طور پر متعین کیا جاتا ہے حال ہی میں تیار کیا گیا ہے۔ یہ تکنیک کسی ماڈل کو قبول کرنے کے لیے مفروضے کی جانچ کا استعمال کرتی ہے اگر کسی ماڈل کے متغیر دلچسپی اور نظام کے متغیر دلچسپی کے درمیان فرق درستگی کی ایک مخصوص حد کے اندر ہو۔ ایک ضرورت یہ ہے کہ سسٹم ڈیٹا اور ماڈل ڈیٹا دونوں تقریبا نارمل طور پر آزاد اور یکساں طور پر تقسیم شدہ (این آئی آئی ڈی) ہوں۔ اس تکنیک میں ٹی ٹیسٹ کے اعداد و شمار کا استعمال کیا جاتا ہے۔ اگر ماڈل کا اوسط m اور نظام کا اوسط m ہے تو ماڈل اور نظام کے درمیان فرق D = m-m ہے۔ جانچنے کے لیے مفروضہ یہ ہے کہ اگر D درستگی کی قابل قبول حد کے اندر ہے۔ فرض کریں کہ L = درستگی کے لیے نچلی حد اور U = درستگی کے لیے اوپری حد۔ پھر H0 L ≤ D ≤ U بمقابلہ H1 D <L یا D> U کی جانچ کی جانی ہے۔ آپریٹنگ خصوصیت (او سی) وکر اس بات کا امکان ہے کہ جب صفر مفروضہ درست ہو تو اسے قبول کر لیا جائے۔ او سی وکر ٹائپ I اور II دونوں غلطیوں کے امکانات کو نمایاں کرتا ہے۔ ماڈل بنانے والے کے خطرے اور ماڈل استعمال کرنے والے کے خطرے کے منحنی خطوط کو او سی منحنی خطوط سے تیار کیا جا سکتا ہے۔ ماڈل بنانے والے کے خطرے اور ماڈل استعمال کرنے والے کے خطرے کے درمیان مقررہ نمونے کے سائز کے تبادلے کے ساتھ منحنی خطوط کا موازنہ خطرے کے منحنی خطوط میں آسانی سے دیکھا جا سکتا ہے۔ اگر ماڈل بنانے والے کا خطرہ، ماڈل صارف کا خطرہ، اور درستگی کی حد کے لیے اوپری اور نچلی حدود سبھی متعین ہیں تو مطلوبہ نمونے کے سائز کا حساب لگایا جا سکتا ہے۔ اعتماد کے وقفے اعتماد کے وقفے کا استعمال اس بات کا اندازہ کرنے کے لیے کیا جا سکتا ہے کہ آیا کوئی ماڈل دلچسپی کے کچھ متغیر کے لیے کسی نظام کے "کافی قریب" ہے۔ معلوم ماڈل ویلیو، μ0، اور سسٹم ویلیو، μ کے درمیان فرق کو یہ دیکھنے کے لیے چیک کیا جاتا ہے کہ آیا یہ اتنی چھوٹی قیمت سے کم ہے کہ ماڈل دلچسپی کے اس متغیر کے حوالے سے درست ہے۔ قدر کو علامت ε سے ظاہر کیا جاتا ہے۔ ٹیسٹ انجام دینے کے لیے ماڈل کا ایک نمبر، n، شماریاتی طور پر آزاد رن کیا جاتا ہے اور ایک معیاری انحراف S کے ساتھ، سود Y کے تخروپن آؤٹ پٹ متغیر کے لیے ایک اوسط یا متوقع قیمت، E (Y) یا μ تیار کی جاتی ہے۔ اعتماد کی سطح کا انتخاب کیا جاتا ہے، 100 (1-α)۔ ایک وقفہ، [a، b]، کی تعمیر کی جاتی ہے، جہاں اہمیت کی دی گئی سطح اور n-1 ڈگری آف فریڈم کے لیے t-تقسیم سے اہم قدر ہے۔ اگر |a-μ0 |> ε اور |b-μ0 |> ε تو ماڈل کو انشانکن کرنے کی ضرورت ہے کیونکہ دونوں صورتوں میں فرق قابل قبول سے بڑا ہے۔ اگر |a-μ0 | <ε اور |b-μ0 | <ε تو ماڈل قابل قبول ہے کیونکہ دونوں صورتوں میں غلطی کافی قریب ہے۔ اگر |a-μ0 | <ε اور |b-μ0 |> ε یا اس کے برعکس تو وقفہ کو سکڑنے کے لیے ماڈل کے اضافی رن کی ضرورت ہوتی ہے۔ گرافیکل موازنہ اگر شماریاتی مفروضوں کو مطمئن نہیں کیا جا سکتا ہے یا نظام کے لیے ناکافی ڈیٹا موجود ہے تو ماڈل آؤٹ پٹ کا گرافیکل موازنہ نظام کے آؤٹ پٹ سے ساپیکش فیصلے کرنے کے لیے استعمال کیا جا سکتا ہے، تاہم دیگر معروضی ٹیسٹ بہتر ہیں۔ اے ایس ایم ای معیارات کے دستاویزات اور معیارات جن میں تصدیق اور کمپیوٹیشنل ماڈلنگ اور تخروپن کی توثیق شامل ہے، امریکن سوسائٹی آف مکینیکل انجینئرز (اے ایس ایم ای) تصدیق اور توثیق (وی اینڈ وی) کمیٹی کے ذریعہ تیار کیے گئے ہیں۔ اے ایس ایم ای وی اینڈ وی 10 تصدیق، توثیق، اور غیر یقینی مقدار کے عمل کے ذریعے کمپیوٹیشنل ٹھوس میکینکس ماڈلز کی ساکھ کا اندازہ لگانے اور بڑھانے میں رہنمائی فراہم کرتا ہے۔ ASME V & V 10.1 ASME V & V 10 میں بیان کردہ تصورات کی وضاحت کے لیے ایک تفصیلی مثال فراہم کرتا ہے۔ اے ایس ایم ای وی اینڈ وی 20 کمپیوٹیشنل تخروپن کی توثیق کے لیے ایک تفصیلی طریقہ کار فراہم کرتا ہے جیسا کہ سیال حرکیات اور حرارت کی منتقلی پر لاگو ہوتا ہے۔ اے ایس ایم ای وی اینڈ وی 40 کمپیوٹیشنل ماڈلنگ کے لیے ماڈل کی ساکھ کی ضروریات کو قائم کرنے کے لیے ایک فریم ورک فراہم کرتا ہے، اور طبی آلات کی صنعت میں مخصوص مثالیں پیش کرتا ہے۔ تصدیق اور توثیق سافٹ ویئر کی تصدیق اور توثیق حوالہ جات رسمی طریقے بھی دیکھیں۔