มีภาพรวมระดับสูงของ HLA เทียบกับ DIS กรอบงานการจำลองหรือไม่ คนหนึ่งสามารถโฮสต์อีกคนหนึ่งและในทางกลับกันได้ไหม?
สถาปัตยกรรมระดับสูง (HLA) เทียบกับการจำลองเชิงโต้ตอบแบบกระจาย (DIS)
คำตอบ (5)
ขณะนี้ฉัน (แม้ว่าจะอีกประมาณหนึ่งสัปดาห์เท่านั้น) ทำงานในอุตสาหกรรมการจำลอง - ฉันขออภัยล่วงหน้าสำหรับข้อผิดพลาดใด ๆ ฉันจะแก้ไขให้ถูกต้องหากฉันจำข้อมูลที่ไม่ถูกต้อง
DIS
มาตรฐานระบุโครงร่างของข้อมูลบนสาย เช่น แพ็กเก็ต/ข้อมูล PDU ของคุณจะถูกจัดวางทุกประการตามที่กำหนดไว้ในข้อกำหนดของ DIS
อาศัยเครือข่ายที่มีความพยายามสูงสุด (เช่น โปรโตคอล UDP การออกอากาศ)
เอนทิตีต้องเต้นหัวใจในช่วงเวลาหนึ่ง (ค่าเริ่มต้น: 5 วินาที) เพื่อแจ้งให้คนอื่นๆ ทราบว่ายังคงเป็นส่วนหนึ่งของการฝึกหัด
ไม่มีเซิร์ฟเวอร์กลางที่จัดการแอปพลิเคชันต่างๆ ที่เข้าร่วมในการฝึกหัด
แอปพลิเคชันการจำลองสามารถเข้าร่วมการจำลองได้ตลอดเวลา ออกได้ตลอดเวลา
เอชแอลเอ
ใช้ผู้จัดการส่วนกลางที่เรียกว่า RTI (Run Time Infrastructure) ซึ่งรับข้อมูลจากแอปพลิเคชันต่างๆ และส่งไปยังแอปพลิเคชันอื่นๆ ในการจำลอง (ในบริบทของ HLA สิ่งเหล่านี้เรียกว่า Federates และชุดของ Federates คือ Federation)
สหพันธ์ทั้งหมดจะต้องเข้าร่วมและออกจากการจำลองโดยผ่าน RTI
ต่างจาก DIS ตรงที่ข้อกำหนด HLA ไม่ได้ระบุโครงร่างของแพ็กเก็ตข้อมูล แต่กำหนดชุดฟังก์ชัน API ที่แอปพลิเคชันใช้แทน RTI คือสิ่งที่นำ API ไปใช้
HLA รวมศูนย์เผยแพร่ข้อมูลตาม FOM (Federation Object Model) ซึ่งกำหนดว่าข้อมูลในการจำลองแสดงถึงอะไร ซึ่งช่วยให้ผู้คนสามารถสร้าง FOM ใหม่ที่กำหนดออบเจ็กต์และประเภทการโต้ตอบใหม่ได้ ไม่เหมือนใน DIS ที่การเพิ่ม PDU ข้อมูลประเภทใหม่จะต้องผ่านคณะกรรมการ (SISO) ตัวอย่างเช่น การจำลองส่วนใหญ่ที่ทำงานภายใต้ HLA ใช้ RPR FOM ซึ่งค่อนข้างจะสะท้อนเอนทิตีและการโต้ตอบมาตรฐาน DIS
HLA เพิ่มคุณสมบัติเพิ่มเติมที่ DIS ไม่รองรับ เช่น Data Distribution Management (DDM) โดยที่สหพันธ์จะแจ้ง RTI ว่าพวกเขาสนใจเฉพาะข้อมูลบางประเภทเท่านั้น
รองรับบริการสมัครสมาชิก โดยสหพันธ์จะแจ้ง RTI ว่าพวกเขาสนใจที่จะรับข้อมูลวัตถุหรือปฏิสัมพันธ์บางอย่างเท่านั้น (เช่น แอปพลิเคชันต้องการเฉพาะข้อมูลเกี่ยวกับเรือ)
รองรับคุณสมบัติการโอนความเป็นเจ้าของ โดยที่ออบเจ็กต์ภายใต้การควบคุมของสหพันธ์หนึ่งจะมอบให้กับสหพันธ์อื่นเพื่อจัดการ
DIS สามารถโฮสต์ HLA และในทางกลับกันได้หรือไม่
เนื่องจากความแตกต่างพื้นฐานเหล่านี้ จึงควรชัดเจนว่า DIS และ HLA ไม่สามารถโฮสต์ซึ่งกันและกันได้
อย่างไรก็ตาม ความหมายที่แท้จริงก็คือ สำหรับการจำลองใน DIS ที่จะโต้ตอบกับการจำลองใน HLA ก็คือ คุณต้องมีนายหน้าเครือข่ายบางประเภทที่ทำหน้าที่เป็นอะแดปเตอร์ระหว่างโปรโตคอลทั้งสอง ตัวอย่างของโบรกเกอร์ดังกล่าว ได้แก่ MAK VR-Exchange หรือ เกตเวย์ GMU
หากต้องการอ่านเพิ่มเติม:
- http://www.mak.com/products/standards.php
- http://www.siaa.asn.au/get/2395379411.pdf
- http://dss.ll.mit.edu/dss.web/96.14.103.RTI.Introduction.html
นี่คือประวัติบางส่วนที่ผู้ให้เช่ารู้จักเกี่ยวกับ HLA
การออกแบบ HLA นั้นมีพื้นฐานมาจากสิ่งที่เรียกว่า Aggregate Level Simulation Protocol (ALSP) ซึ่งเป็นผู้นำในช่วงต้นทศวรรษที่ 90 โดยกลุ่ม Mitre กลุ่มเดียวกับที่พัฒนา HLA ALSP ได้รับการออกแบบมาเพื่อเชื่อมโยงการจำลองเชิงสร้างสรรค์ขนาดใหญ่ที่ใช้สำหรับการฝึกอบรมหลังการฝึกกองพล/กองบัญชาการ ข้อกำหนดสำหรับการทำงานร่วมกันของ ALSP เกี่ยวข้องกับออบเจ็กต์จำนวนมาก การจับเวลาแบบอนุรักษ์นิยม และการแลกเปลี่ยนเหตุการณ์การจำลอง เราไม่สามารถเผยแพร่การอัปเดตเอนทิตีเป็นระยะๆ ได้ เนื่องจากอาจทำให้เกิดปัญหาด้านความสามารถในการขยายขนาดได้
ในช่วงปีต่อๆ มาของฉัน เราเข้าถึงวัตถุในสนามรบได้มากถึง 1 ล้านชิ้นต่อการฝึก Ulchi Focus Lens ครั้งหนึ่ง ความแตกต่างพื้นฐานระหว่าง HLA และ DIS ก็คือ HLA ได้รับการออกแบบมาเพื่อจัดการกับการจำลองที่มีการจัดการเวลาแบบอนุรักษ์นิยมขนาดใหญ่ ความเที่ยงตรงของตัวแปร ในขณะที่ DIS เกิดจากสภาพแวดล้อมของตัวจำลองแบบเครือข่าย และมุ่งเน้นไปที่ตัวจำลองระดับแพลตฟอร์มที่เกือบจะเรียลไทม์
HLA สามารถช่วยทำให้การจำลองทั้งสองคลาสนี้ทำงานร่วมกันได้ในระดับหนึ่ง แต่มักจะถูกจำกัดด้วยความแตกต่างโดยธรรมชาติในประเภทของการจำลองที่เชื่อมโยงกัน
ตัวอย่างเช่น หากสหพันธ์การจำลองที่จัดการเวลาแบบอนุรักษ์นิยมประสบปัญหากับการคำนวณ การจัดการเวลาของ HLA จะทำให้สหพันธ์หยุดการเลื่อนเวลาไปข้างหน้าจนกว่าการจำลองที่ช้าที่สุดจะเคลื่อนไปข้างหน้า DIS ไม่รองรับสิ่งนี้ สำหรับแพลตฟอร์มที่ขับเคลื่อนด้วย DIS เอนทิตีที่จัดการเวลาทั้งหมดดูเหมือนจะเคลื่อนที่แบบสโลว์โมชันหรือหยุดไปเลย และดูเหมือนจะเคลื่อนที่เร็วกว่าเรียลไทม์เป็นระยะๆ เนื่องจากสหพันธ์พยายามตามทันเรียลไทม์
ไม่มีสิ่งใดในข้อกำหนด HLA ที่ระบุว่า RTI จะต้องรวมศูนย์ แม้ว่า RTI เกือบทั้งหมดจะเป็นเช่นนั้นก็ตาม
มาตรฐาน HLA 1516 กำหนด API ระหว่างเครื่องจำลองและ RTI เท่านั้น ไม่ใช่ระหว่าง RTI โปรโตคอลที่ใช้ในการแลกเปลี่ยนข้อมูลระหว่าง RTI เป็นกรรมสิทธิ์ ดังนั้นเฉพาะ RTI จากผู้ขายรายเดียวกันหรือหน่วยงานภาครัฐเท่านั้นที่สามารถทำงานร่วมกันได้ ข้อบกพร่องที่สำคัญ หากคุณใช้ RTI อื่น คุณจะต้องมี "บริดจ์" เพื่อแปลระหว่างโปรโตคอลที่เป็นกรรมสิทธิ์ อาจมีราคาแพง
สิ่งหนึ่งที่ควรจำไว้หากคุณวางแผนที่จะเชื่อมโยง DIS และ HLA ก็คือคุณอาจสูญเสียความเที่ยงตรงของการจำลองทั้งสองด้าน ขึ้นอยู่กับวิธีจัดระเบียบ FOM ของคุณ DIS ถึง RPR FOM นั้นตรงไปตรงมา แต่มี FOM อื่นๆ ที่อาจแมปกับ DIS ได้ไม่ดีนัก ในบางสถานการณ์ คุณอาจไม่สามารถแปลฟิลด์ PDU เป็นแอตทริบิวต์ออบเจ็กต์ HLA หรือพารามิเตอร์การโต้ตอบได้ (หรือในทางกลับกัน) คุณจะต้องใช้วิจารณญาณที่ดีที่สุดของคุณเกี่ยวกับค่าเริ่มต้นที่จะใช้ในสถานการณ์เหล่านี้ ในบางครั้ง ลำดับชั้นของออบเจ็กต์ HLA FOM อาจมีโครงสร้างแตกต่างจาก DIS อย่างมาก ในกรณีนี้ การแปลอาจจำเป็นต้องรวมข้อมูลจาก DIS PDU หลายตัวเพื่อสร้างข้อความ HLA เดียว ซึ่งหมายความว่าคุณจะต้องเขียนโค้ดในบริดจ์เพื่อรักษาสถานะข้อความบางรูปแบบ
นอกจากนี้ ขณะรันไทม์ คุณจะได้รับแอตทริบิวต์ HLA ของคุณทีละน้อย หลังจากการค้นพบวัตถุ คุณจะต้องรอเพื่อแปลอินสแตนซ์วัตถุจนกว่าคุณจะได้รับแอตทริบิวต์เพียงพอที่จะเติม DIS PDU อย่างถูกต้อง
อีกประเด็นหนึ่งคือ HLA สามารถให้บริการบริหารจัดการเวลาได้ คุณจะมีปัญหาในการซิงโครไนซ์มากมายหากคุณพยายามรวมแอปพลิเคชัน DIS เข้ากับสหพันธรัฐ HLA โดยใช้การจัดการเวลา
หากคุณมีงบประมาณในการซื้อ คำแนะนำของฉันคือเลือกใช้ MAK VR-Exchange