شبیهسازی کامپیوتری چیست؟ (تعریف 2 اصطلاح)
پیشگفتار:
این اولین نوشته در این بخش (شبیهسازی) از سایت تفرق میباشد. قاعدتا با توجه به حوزههای مورد توجه در این سایت که پیشتر ذکر شد به مباحث مرتبط با گرایشهای الکترونیک و مخابرات میدان از مهندسی برق میپردازد، در این بخش انتظار مطالبی در ارتباط با “شبیهسازی کامپیوتری” مسائلی که در الکترونیک و الکترومغناطیس با آنها مواجه میشویم و نرمافزارهایی چون: PSpice ،NI Multisim ،Cadence ،NI AWR ،ADS ،HFSS ،CST و … را خواهید داشت.
بنابراین به نظر میرسد پیش از اینکه به سراغ موارد مربوطه برویم، منطقی است که تعریفی از خود “شبیهسازی کامپیوتری” ارائه دهیم. اما ترجیح دادم پیش از آن اول تعریفی از “شبیهسازی” را نیز با هم مرور کنیم، سپس ببینیم که شبیهسازی کامپیوتری چیست و با برخی از مثالها مواجه شویم. در انتها نیز تفاوت میان شبیهسازی و مدلسازی مورد بررسی قرار گرفته است.
نکات پیش از مطالعه
- در تهیه این نوشتار از 2 مطلب از سایت ویکیپدیا استفاده شده است. مطلب اول ترجمه تا حد امکان دقیق بخش اول نوشتهای با عنوان “شبیهسازی” و مطلب دوم نیز برگرفته از نوشتهای با عنوان “شبیهسازی کامپیوتری”، هر 2 در صفحه ویکیپدیای انگلیسی است (که لینک آنها در انتهای این نوشته در بخش منبع آمده است) که صفحه مشابه فارسی آنها، ترجمه کاملی نداشت. موارد بخش “کاربردهای شبیهسازی کامپیوتری” نیز برگرفته از سایت TWI است.
- کلمات هایلایت شده کلماتی هستند که خود نیاز به تعریف دارند، با کلیک بر روی آنها به صفحه انگلیسی متناظر با هر کلمه در ویکیپدیا راهنمایی خواهید شد.
شبیهسازی چیست؟
یک شبیهسازی تقلیدی است از کارکرد یک سیستم یا فرآیند جهان واقعی در طول زمان. شبیهسازیها نیاز به استفاده از مدلها دارند؛ مدل رفتارها یا خصوصیات کلیدی سیستم یا فرآیند مورد نظر را مینمایاند، در حالی که شبیهسازی سیر تکاملی مدل در طول زمان را مینمایاند. معمولا کامپیوترها برای اجرای شبیهسازی استفاده میشوند.
شبیهسازی در زمینههای زیادی استفاده میشود، مانند شبیهسازی در زمینه تکنولوژی برای تنظیم عملکرد یا بهینهسازی، مهندسی ایمنی، تستکردن، تمرین، آموزش و بازیهای ویدئویی. همچنین شبیهسازی در مدلسازی علمی سیستمهای طبیعی یا سیستمهای انسانی جهت کسب بینش از نحوه کارکرد آنها استفاده میشود که نمونهای از این موضوع در علم اقتصاد میباشد.
انجام برخی تمرینات روی صندلیهای مایکروگرویتی که برای شبیهسازی فعالیتهای فضانوردی مورد استفاده قرار میگیرد در Kennedy Space Center Visitor Complex
شبیهسازی میتواند برای نشان دادن آثار واقعی نهاییِ تغییر در شرایط و ترتیب رویدادها مورد استفاده قرار گیرد. همچنین شبیهسازی زمانی که سیستم واقعی نمیتواند به کار گرفته شود استفاده میشود، زیرا ممکن است سیستم واقعی در دسترس نباشد، یا به کار گرفتن آن ممکن است خطرناک یا غیر قابل قبول باشد، یا اینکه طراحی شده است اما هنوز ساخته نشده است، یا ممکن است وجود خارجی نداشته باشد.
مسائل کلیدی در شبیهسازی و مدلسازی شامل: فراهم ساختن منابع معتبر اطلاعات برای انتخاب مناسب خصوصیات و رفتارهای کلیدیای که برای ساخت مدل استفاده میشوند، استفاده از فرضیات و تخمینهای سادهکننده در مدل، و دقت و اعتبار خروجیهای شبیهسازی، میباشند. رویهها و پروتکلها برای صحتسنجی و اعتبارسنجی مدل، یک حوزه در حال پیشرفت از مطالعات آکادمیک، اصلاح، تحقیق و توسعه در تکنولوژی شبیهسازی، به طور خاص در کار شبیهسازی کامپیوتری، میباشند.
شبیهسازی کامپیوتری چیست؟
شبیهسازی کامپیوتری روند مدلسازی ریاضی است (روی کامپیوتر انجام میگیرد) که طراحی میشود تا رفتار، یا خروجی یک سیستم دنیای واقعی را پیشبینی نماید. قابلیت اطمینان برخی از مدلهای ریاضی را میتوان از طریق مقایسه نتایج آنها با خروجیهای دنیای واقعی که آنها (مدلهای ریاضی) قصد دارند پیشبینی کنند، تعیین نمود. شبیهسازیهای کامپیوتری تبدیل به ابزاری مفید برای مدلسازی ریاضی تعداد زیادی از سیستمهای طبیعی در فیزیک (فیزیک محاسباتی)، اخترفیزیک، اقلیمشناسی، شیمی، زیستشناسی و ساخت، همچنین سیستمهای انسانی در اقتصاد، روانشناسی، علوم اجتماعی، مراقبت سلامت و مهندسی، شدهاند.
شبیهسازی یک سیستم، در شکل اجرای مدل آن سیستم نمایانده میشود. از آن (شبیهسازی کامپیوتری) میتوان در جهت کاوشکردن و بدستآوردن بینشهای جدید در حوزه تکنولوژیهای تازه و جهت تخمین عملکرد سیستمهایی که بیش از حد پیچیده هستند تا بخواهیم برای آنها جوابهای تحلیلی بیابیم، استفاده نمود.
شبیهسازیهای کامپیوتری از طریق اجرای برنامههای کامپیوتری محقق میشوند، که این برنامههای کامپیوتری میتوانند کوچک باشند ، تقریبا فوری روی وسایل کوچک اجرا شوند، یا برنامههایی در مقیاس بزرگ که برای ساعتها یا روزها روی گروههایی (مبتنی بر شبکه) از کامپیوترها اجرا میشوند. اندازه رویدادهایی که بهوسیله شبیهسازیهای کامپیوتری، شبیهسازی شدهاند بسیار فراتر رفتهاند از هرآنچه که با استفاده از روش سنتی کاغذ و قلم برای مدلسازی ریاضی ممکن است (یا شاید حتی تصور میشد).
در سال 1997، شبیهسازی نبردی از حمله یکی از طرفین به دیگری در صحرا، شامل مدلسازی 66239 تانک، کامیون و سایر وسایل نقلیه در نواحی شبیهسازی شده اطراف کویت گردید، که برای آن چندین ابرکامپیوتر در “برنامه نوسازی کامپیوترهایی با کارایی بالا” وزارت دفاع ایالات متحده آمریکا (DoD) مورد استفاده قرار گرفت.
سایر مثالها عبارتند از: یک مدل 1 میلیارد اتمی از تغییر شکل مواد، یک مدل 2.64 میلیون اتمی از اندامک پیچیده تولید کننده پروتئین در همه موجودات زنده، ریبوزوم در سال 2005، شبیهسازی کامل از چرخه زندگی مایکوپلاسما ژنیتالیوم در سال 2012، و پروژه Blue brain در EPFL (سوئیس) که در می 2005 آغاز شد تا اولین شبیهسازی کامپیوتری از کل مغز انسان، تا سطح مولکولی، را خلق نماید.
شبیهسازی در مقابل مدلسازی
یک مدل کامپیوتری عبارت است از الگوریتمها و معادلاتی که برای درک رفتار سیستمی که قرار است مدل شود، استفاده میشوند. در مقابل، شبیهسازی کامپیوتری عبارت است از اجرای واقعی برنامهای که شامل این معادلات یا الگوریتمها میباشد. بنابراین، شبیهسازی روند به اجرا درآوردن یک مدل میباشد. لذا نمیتوان “یک شبیهسازی ساخت”، در عوض میتوان “یک مدل (یا یک شبیهساز) ساخت”، و سپس میتوان “آن مدل را اجرا کرد” یا به عبارتی معادل میتوان “یک شبیهسازی را اجرا کرد”.
برخی کاربردهای شبیهسازی کامپیوتری
برنامهریزی شهری
شبیهسازی میتواند برای طراحی شهرها و محیطهای شهری جدید، همچنین تست اینکه چگونه نواحی شهری کنونی میتوانند (مبتنی بر خطیمشیهای موجود) تکامل یابند، استفاده شود. این مساله شامل زیرساختهای شهر و جریان ترافیک و سایر موارد میشود (مثال در بالا، تصویر شماره 1).
شبیهسازی پرواز
شبیهسازهای پرواز برای سالها جهت آموزش خلبانان جدید در محیطی امن استفاده شدهاند. این نهتنها اجازه میدهد که خلبانان را در شرایط امن مورد ارزیابی قرار داد، بلکه بدون هیچگونه ریسکی برای خلبان، مدرس یا هواپیما میتوان خرابی تجهیزات و سایر مشکلات را نیز تست نمود. همچنین سناریوهای مشابهی را میتوان به آسانی تکرار نمود چون: نزدیک شدن به یک باند جهت فرود، تحت شرایط متفاوت. نیازی به ذکر نیست که در این شیوه چه میزانی نسبت به پرواز واقعی در سوخت و سایر هزینهها صرفهجویی میگردد (مثال در بالا، تصویر شماره 2).
آب و هوا
پیشبینی آب و هوا از شبیهسازیهایی مبتنی بر دیتاهای گذشته استفاده میکند تا شرایط جوی نامساعد چون طوفانها را پیشبینی کند (مثال در بالا، تصویر شماره 3).
رباتیک
شبیهسازیهای رباتیک برای تقلید وضعیتهایی که امکان خلق و تست آنها در واقعیت، ممکن است به دلایلی چون زمان، هزینه و سایر فاکتورها امکانپذیر نباشد، مورد استفاده قرار میگیرند. نتایج این تستها سپس مورد ارزیابی قرار گرفته و تبدیل به رباتهای واقعی میشوند (مثال در بالا، تصویر شماره 4).
جمعبندی
در این نوشته با موارد زیر روبرو شدیم:
- با تعریف شبیهسازی آشنا شدیم
- از تعریف شبیهسازی کامپیوتری آگاه شدیم.
- تفاوت میان مدلسازی و شبیهسازی مورد بررسی قرار گرفت.
- با برخی مثالها از کاربردهای شبیهسازی کامپیوتری در حوزههای مختلف روبرو شدیم.
پسگفتار
همانطور که در پیشگفتار بیان شد، در این نوشتار تلاش بر این بود که با تعریف 2 اصطلاح ذکر شده آشنا شویم، انشاءالله در نوشتههای بعدی به مواردی که در ادامه میآیند خواهیم پرداخت: بررسی کاربرد شبیهسازی کامپیوتری در حل مسائل الکترونیک و الکترومغناطیس، روشهای مدلسازیای که مورد استفاده قرار میگیرند، معرفی برخی از نرمافزارهای کاربردی در این 2 حوزه و در نهایت نکاتی پیرامون هر کدام از آن نرمافزارها به تفکیک.