Computer Simulation гэж юу вэ?
Ойрын хэдэн жил Machine/Deep Learning (ML/DL) Монголд хүчтэй дэлгэрч, өнөөдөр гэхэд л маш олон монгол компаниуд ML инженерүүдийг хайж байна. Харин computer simulation буюу симуляцийн талаарх ойлголттой хүмүүс Монголд өдрийн од шиг цөөхөн. Би Герман улсад энэ чиглэлээр магистрт сурж байгаа бөгөөд энэхүү салбарыг сонирхож байгаа дүү нартаа, эсвэл зүгээр шинэ зүйлийн талаар уншиж мэдлэгээ тэлмээр байгаа танд зориулав. Энэхүү нийтлэлдээ симуляць нь юу болох, мөн өнөө үед хэрхэн хэрэглэгдэж байгаа эсхүл юунд, ямар салбарт ашиглаж болохыг товчхоноор тайлбарлая.
Компьютер симуляць гэж яг юуг хэлж байгаа вэ?
Математикын тусламжтайгаар шинжлэх ухаан, инженерчлэл, санхүү болон эдийн засаг гэх мэт салбаруудад байгаа нарийн, төвөгтэй асуудлуудыг математик загвараар дүрсэлж болдог. Эдгээр математик загварууд нь ихэвчлэн дифференциал тэгшитгэл байдаг.
Шингэний механикыг дүрсэлсэн математик загвар
Харамсалтай нь математик загварчлалд ашиглагдаж буй диффененциал тэгшитгэлүүд нь ихэнхи тохиолдолд аналитик хариу буюу ‘яг зөв’ хариулт байдаггүй. Иймээс Linear Algebra буюу шугаман алгебраар аналитик хариу руу дөхөлт хийсэн хариу олох зорилготой байдаг.
Шугаман алгебр ашиглан гаргасан “дөхсөн” загвар
Гэхдээ хэдэн арван мянган хувьсагчтай байж болох энэ шугаман тэгшитгэлийг бодоход компьютер ашиглаж бодохоос арга байдаггүй. Иймээс орчин үеийн компьютер симуляцийн судалгаанууд нь математик загварчлалыг сайжруулах эсвэл эдгээр тэгшитгэлүүдийг бодох алгоритмүүдийг сайжруулж, хурдан ажилуулах арга замуудыг судалдаг.
Хэрвээ та математикийг тийм ч сонирходоггүй бол танд жаахан уйтгартай санагдсан байж магад. За тэгвэл одоо илүү сонирхолтой яриа руу орцгооё. XD
Симуляць өнөө үед үйлдвэрлэл, бүтээн байгуултанд яаж ашиглагдаж байгаа вэ?
Аж үйлдвэржил, шинжлэх ухаан эдийн засаг өндөр хөгжсөн АНУ, Герман гэх мэт орнуудад симуляць нь маш чухал үүрэгтэй байдаг. Одоогоор хамгийн их ашиглагдаж буй салбаруудад барилгын салбар, автозам болон машин, нисэх онгоц үйлдвэрлэл, химийн үйлдвэрлэл гэх мэт салбарууд багтана.
Таны мэдэх алдартай машины брендүүд болох Ford, Volkswagen, Mercedes-Benz, Toyota гэх мэт бүхий л автомашины компаниуд нь шинэ авто машинаа олноор үйлдвэрлэж эхлэхээс өмнө чанарын шаардлага, аюулгүй байдлыг хангах үүднээс симуляць хийж урьдчилан хэрхэн эвдрэл үүсч болохыг тооцдог.
Мөн дээрхи зураг дээр харагдаж байгаа шиг машин дотор сууж байгаа зорчигчдод учирч болох гэмтэлийг хүртэл тооцоолох боломжтой.
Монголын нөхцөлд симуляцийн програмыг барилгын салбарт түлхүү ашигладаг. Ингэснээрээ тухайн баригдах гэж байгаа барилга тогтвортой байхад хөрсөндөө хэр гүн суурь суулгаж өгөх хэрэгтэйг тооцоолж болдог.
Симуляць шинжлэх ухааны судалгаанд яаж хэрэглэгдэж байна вэ?
21-ээр зуунаас эхлэн симуляцийн шинжлэх ухаанд эсвэл судалгаанд оруулж буй нөлөө асар их болсон. Биофизик, шингэний механик, молекулын симуляць, электроникс, астрофизик ба квант механик гэх мэт шинжлэх ухааны бараг бүх салбарт хэрэглэгдэж байгаа. Ялангуяа зарим шинжлэх ухааны туршилтууд нь хэтэрхий аюултай эсвэл хэтэрхий үнэтэй байх үе бий. Ийм тохиолдолуудад сайн симуляциар л орлуулахаас өөр аргагүй байдаг.
Жишээ нь: Астрономи эсвэл астрофизикын судалгаанууд бараг байнга симуляциар явагддаг. Дээрхи зураг дээр маш олон тооны гаригуудын массыг харгалзаж үзээд симуляць хэрэглэн хоорондын таталцах хүчийг тооцож болдог. Үүнийг many-body problem гэж нэрлэдэг.
Мэдээж өшөө олон жишээнүүд байгаа бөгөөд товч байх үүднээс ингээд өндөрлөе!
Симуляцаар сурах хүсэлтэй охид залууст өгөх зөвлөгөө
Симуляцийн төрлийн бакалавр болон магистр хөтөлбөрүүд нь 2006 оноос л хойш АНУ, Герман гэх мэт улсуудын их сургуулиудад нээгдэж эхэлсэн. Тиймээс ер нь харьцангуй шинэ салбар гэж ойлгож болно. Их сургуулиудад ихэвчлэн Computational Science, Computational Engineering эсвэл Simulation Sciences гэх нэртэй хөтөлбөрүүд байгаа.
Бакалаврын хөтөлбөрийг сонирхож байгаа залууст: Математик, Физик, Англи хэл маш чухал. Математикаас Calculus I,II, III болон Linear Algebra г сайн судлах хэрэгтэй.
Магистрын хөтөлбөрийг сонирхож байгаа залууст: Таны бакалавр ихэвчлэн заавал математик, шинжлэх ухаан эсвэл инженерчлэлийн аль нэг салбараар сурч төгссөн байх хэрэгтэй. Зарим тохиолдолд эдийн засгаар төгссөн байж болдог (Хэрвээ тооцоллын санхүү гэх мэт чиглэлээр сурах гэж байгаа бол).
Симуляцаар сурахад юу заадаг вэ?
Мэдээж симуляци хиймээр байгаа салбарынхаа зүйлүүдийг сурна. Жишээ нь автомашины симуляци хиймээр байгаа бол механик инженерчлэлийн хичээлүүд авна гэсэн үг.
Үүнээс гадна симуляци хийх олон аргуудыг үздэг. Математик загварчлалаа яаж компьютерын хэлэнд хөрвүүлж шийдэл гаргах талаар үздэг. Энэ нь Computer Science тай давхцаж байгаа нэг хэлбэр мөн. Сайн симуляци явуулахын тулд сайн код бичиж мөн ажилуулж байгаа компьютерынхаа бүтэцийг судалж, процессор (Cache, Registry, CPU optimization) нь яаж ажилладагыг нь ерөнхийд нь мэдэх хэрэгтэй байдаг. Мөн параллел програмчлал буюу олон процессороор нэг програмыг хэрхэн нийлж ажилуулах талаар үздэг.
Зиа ингээд энэ нийтлэлээ ингээд өндөрлөе! Бас хэт нуршаад яахав :D