งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

1 บทที่ 5 ภาษาที่ใช้ในการจำลองแบบปัญหา การจำลองแบบปัญหาด้วยคอมพิวเตอร์ ต้องเข้าใจเกี่ยวกับ ประเภทของคอมพิวเตอร์ และภาษาที่เหมาะสมที่ใช้สำหรับนำมาเขียน.

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "1 บทที่ 5 ภาษาที่ใช้ในการจำลองแบบปัญหา การจำลองแบบปัญหาด้วยคอมพิวเตอร์ ต้องเข้าใจเกี่ยวกับ ประเภทของคอมพิวเตอร์ และภาษาที่เหมาะสมที่ใช้สำหรับนำมาเขียน."— ใบสำเนางานนำเสนอ:

1 1 บทที่ 5 ภาษาที่ใช้ในการจำลองแบบปัญหา การจำลองแบบปัญหาด้วยคอมพิวเตอร์ ต้องเข้าใจเกี่ยวกับ ประเภทของคอมพิวเตอร์ และภาษาที่เหมาะสมที่ใช้สำหรับนำมาเขียน โปรแกรมคอมพิวเตอร์จำลองแบบปัญหา เพื่อให้แบบจำลองที่สร้างขึ้นสามารถใช้งานได้ และวัดประสิทธิภาพตามความต้องการของการ ใช้งานได้อย่างถูกต้อง

2 Modelling Approach Event Scheduling –System modelled via characteristic events –Events have subroutines which update state variables. Process Orientation –Time oriented sequence of inter-related events that describes the experience of an entity as it flows through a system. –Overlay to an event scheduling system. –Approach adopted in most current software.

3 Common Features 1.Generating random numbers (i.e. ~U(0,1)) 2.Generating random variates from a specified probability distribution. 3.Advancing the simulation clock. 4.Determining the next event on the list event and passing control of to the appropriate piece of code. 5.Adding and deleting records from a list. 6.Collecting output statistics and reporting the results of the simulation run. 7.Trapping error conditions.

4 4 5.1 ประเภทของคอมพิวเตอร์ แบ่งได้เป็น 3 ประเภทคือ - ดิจิตอลคอมพิวเตอร์ (Digital computer) - อนาล็อกคอมพิวเตอร์ (Analog computer) - ไฮบริดคอมพิวเตอร์ (Hybrid computer)

5 5 ลักษณะเฉพาะของดิจิตอลคอมพิวเตอร์ - ข้อมูลภายในเครื่องจะทำงานในลักษณะแบบ ตัวแปรไม่ต่อเนื่องโดยทำงานเป็นช่วง - การดำเนินงานจะทำตามคำสั่งทีละคำสั่ง - ความแม่นยำของการประมวลผลนั้นไม่ขึ้นอยู่กับ คุณภาพของส่วนประกอบของเครื่อง - ระยะเวลาที่ใช้ในการปฏิบัติการขึ้นอยู่กับความ ซับซ้อนของปัญหา

6 6 ลักษณะเฉพาะของดิจิตอลคอมพิวเตอร์ (ต่อ) - สามารถปรับเปลี่ยนระยะเวลาที่ใช้ในการ ดำเนินงานได้และมีความแม่นยำ - มีความสามารถในการคำนวณพื้นฐานเช่น บวก ลบ คูณ หาร แต่การคำนวณที่ซับซ้อนเช่น การหา อนุพันธ์และอินทิเกรชันจะได้เพียงค่าประมาณ - สามารถเก็บและใช้ข้อมูลทั้งแบบตัวเลขและไม่ใช่ ตัวเลขได้ - การดำเนินงานที่เกี่ยวกับการตัดสินใจและการ เลือก สามารถกระทำได้ทั้งกับการใช้ตัวเลขและ ไม่ใช้ตัวเลข

7 7 ลักษณะเฉพาะของอนาล็อกคอมพิวเตอร์ - ตัวแปรตามภายในเครื่องจะได้มีลักษณะเป็น แบบตัวแปรต่อเนื่อง - ความแม่นยำถูกจำกัดด้วยคุณภาพของ ส่วนประกอบของเครื่องคอมพิวเตอร์ - การปฏิบัติการหลาย ๆ อย่างสามารถดำเนินงาน ไปพร้อม ๆ กันได้ - ระยะเวลาที่ใช้ในการดำเนินงานขึ้นอยู่กับ ลักษณะคุณสมบัติของส่วนประกอบของเครื่อง

8 8 ลักษณะเฉพาะของอนาล็อกคอมพิวเตอร์ (ต่อ) - มีความสามารถสูงในการคำนวณทาง คณิตศาสตร์ เช่น บวก ลบ คูณ หาร การหา อนุพันธ์ การหาอินทิเกรชัน และการคำนวณ ฟังก์ชันนอนลิเนียร์ แต่มีความสามารถจำกัดใน การตัดสินใจ การเก็บข้อมูล และการใช้งาน ข้อมูลที่ไม่ใช่ตัวเลข - เทคนิคการสร้างโปรแกรมประกอบด้วยการ ประกอบส่วนประกอบทางอิเล็กทรอนิกส์ต่าง ๆ

9 9 ลักษณะเฉพาะของอนาล็อกคอมพิวเตอร์ (ต่อ) - การศึกษาการทำงานของชิ้นส่วนจริงจาก ระบบ สามารถทำได้โดยการประกอบชิ้นส่วน ที่ต้องการทดสอบเข้าไปในแบบจำลองของ ระบบ - ผู้ใช้สามารถทำการทดลองปรับแต่งค่าต่าง ๆ ให้กับคอมพิวเตอร์ได้ ทำให้เกิดความเข้าใจ ในการปฏิบัติงานของระบบงานจริงได้ชัดเจน ยิ่งขึ้น

10 10 ลักษณะเฉพาะของไฮบริดคอมพิวเตอร์ - มีความผสมผสานกันระหว่างความแม่นยำของ ดิจิตอลคอมพิวเตอร์และความเร็วของอนาล็อก คอมพิวเตอร์ - สามารถศึกษาองค์ประกอบจริงบางส่วนที่ใช้กับ ระบบงานจริงร่วมกับโปรแกรมดิจิตอล -สามารถเพิ่มความคล่องตัวในการจำลองแบบ ปัญหาด้วยอนาล็อกเพราะสามารถใช้ หน่วยความจำและวิธีการตัดสินใจเชิงตรรกะจาก ดิจิตอลคอมพิวเตอร์

11 11 ลักษณะเฉพาะของไฮบริดคอมพิวเตอร์(ต่อ) - สามารถเพิ่มความเร็วในการคำนวณของดิจิตอล โดยอาศัยโปรแกรมย่อยจากอนาล็อก คอมพิวเตอร์ - สามารถใช้ได้กับข้อมูลทั้งที่แบบเป็นช่วงและ แบบต่อเนื่อง

12 ภาษาเฉพาะการจำลองแบบปัญหา แบ่งได้เป็น 2 ประเภทหลัก ๆ คือ - ภาษาสำหรับใช้งานทั่ว ๆ ไป (General Purpose Languages) เช่น BASIC, C, PL/1, ALGO - ภาษาเฉพาะการจำลองแบบปัญหา (Simulation Languages) เช่น SIMAN, GPSS, SIMSCRIPT, SLAM, CSMP, GASP

13 13 ข้อดีสำหรับการใช้ภาษาเฉพาะ - ช่วยลดเวลาในการเขียนโปรแกรม - สามารถช่วยแนะแนวทางการสร้างโปรแกรม สำหรับการจำลองแบบปัญหา - ช่วยในการจัดประเภทขององค์ประกอบของระบบ - ช่วยให้การปรับเปลี่ยนคำสั่งหรือเปลี่ยนแปลง โปรแกรมทำได้สะดวกและรวดเร็วขึ้น - มีวิธีการช่วยจำแนกประเภทขององค์ประกอบ ตามลักษณะ

14 14 ข้อดีสำหรับการใช้ภาษาเฉพาะ (ต่อ) - สามารถเปลี่ยนแปลงเงื่อนไขการใช้งานได้ง่าย และสะดวก - มีวิธีการตรวจสอบและแสดงข้อผิดพลาด ของโปรแกรมได้ดีกว่าภาษาใช้งานทั่ว ๆ ไป - มีแบบฟอร์มที่ช่วยในการแสดงผลตาม ความต้องการของผู้ใช้ เช่น การแสดงผลของ การทำงานของคำสั่ง กราฟแสดงผลของ ตัวแปรต่าง ๆ เป็นต้น

15 15 ข้อเสียสำหรับการใช้ภาษาเฉพาะ - ต้องทำการเรียนรู้วิธีการใช้ภาษาเฉพาะนั้น ๆ - ความคล่องตัวในการสร้างโปรแกรมน้อยกว่า ภาษาใช้งานทั่ว ๆ ไป และใช้เวลาในการ ประมวลผลของคอมพิวเตอร์มากกว่า - บางครั้งการใช้งานภาษาเฉพาะจะต้องมี อุปกรณ์ที่ใช้เพิ่มเติมซึ่งอาจส่งผลให้มีค่า ใช้จ่ายที่เพิ่มขึ้น

16 16 ภาษาเฉพาะของระบบงานแบบต่อเนื่อง ภาษาเฉพาะที่ใช้กับระบบงานแบบต่อเนื่องแบ่ง ออกเป็น 2 กลุ่มคือ - ภาษาเฉพาะการจำลองที่ใช้โครงสร้าง แบบบล็อก ( Block-structured simulation languages) - ภาษาเฉพาะการจำลองที่ใช้พื้นฐานของ การแสดงความหมาย (Expression-based languages)

17 17 ภาษาเฉพาะของระบบงานแบบไม่ต่อเนื่อง จะเน้นไปที่ลักษณะของปัญหาหรือเป็นการ พิจารณาเชิงปัญหา (Problem-oriented) เป็นหลัก ภาษาเฉพาะแต่ละภาษาสำหรับ ระบบงานแบบไม่ต่อเนื่องจะมีคำสั่งที่สามารถ ทำหน้าที่ต่าง ๆ เหล่านี้ คือ - คำสั่งที่ใช้สำหรับแทนสถานะของระบบใน ช่วงเวลาใดเวลาหนึ่งได้ - คำสั่งที่ใช้สำหรับเปลี่ยนสถานะของระบบจาก สถานะหนึ่งไปยังสถานะหนึ่งได้ - คำสั่งที่ใช้สร้างข้อมูลสำหรับระบบ เช่น คำสั่งที่ ใช้สร้างตัวเลขสุ่ม คำสั่งสำหรับวิเคราะห์ข้อมูล และคำสั่งสำหรับการออกรายงาน

18 18 ภาษาเฉพาะที่ใช้กับระบบงานแบบไม่ต่อเนื่อง แบ่งออกเป็น 3 กลุ่มคือ - ภาษาเชิงเหตุการณ์ (Event-oriented languages) เป็นภาษาที่ใช้กับงานที่ขึ้นอยู่กับเหตุการณ์ โดย แต่ละเหตุการณ์เมื่อเกิดขึ้นจะพิจารณาที่เวลาของ การเกิดเหตุการณ์และมีการดำเนินงานของระบบ ตามเวลาที่เกิดเหตุการณ์ใหม่ภายใต้สภาวะหรือ เงื่อนไขที่กำหนดไว้ ดังนั้นสถานะของระบบจึงเป็น การเปลี่ยนแปลงตามเหตุการณ์ ภาษาที่จัดอยู่ใน กลุ่มนี้ได้แก่ SIMSCRIPT และ GASP

19 19 - ภาษาเชิงกิจกรรม (Activity-oriented languages) เป็นภาษาที่ใช้กับระบบที่พิจารณารายละเอียดของ เงื่อนไขภายใต้กิจกรรมต่าง ๆ ซึ่งรายละเอียดของ เงื่อนไขเหล่านี้จะไม่มีตารางเวลากำหนดที่แน่นอน หรือไม่มีเวลาของแบบจำลองที่กำหนดไว้ เงื่อนไข จะเป็นเงื่อนไขที่ส่งผลให้กิจกรรมเกิดขึ้น

20 20 ภาษาเชิงกิจกรรมควรจะมีคุณสมบัติดังนี้ แบบจำลองใช้เหตุการณ์ถัดไปหรือตัวแปร ของเวลาเป็นการเพิ่มค่ารูปแบบของเวลา กระบวนการจำลองเป็นกระบวนการที่ต้องการติดต่อ และโต้ตอบ (Interactive) ที่ค่อนข้างสูงแต่ไม่มี การกำหนดจำนวนของคุณลักษณะที่คงที่การเกิด เหตุการณ์ถูกควบคุมโดยโปรแกรมการตรวจสอบ รอบของกิจกรรม (Cyclic scanning activity programs) ภาษาที่จัดอยู่ในกลุ่มนี้ได้แก่ CSL

21 21 - ภาษาเชิงกระบวนการ (Process-oriented languages) ลักษณะหลักของภาษาที่เน้นกระบวนการนั้น จะ กระทำกับระบบที่มีกระบวนการทำงานรวมเพียง กระบวนการเดียวซึ่งประกอบด้วยจำนวนของ ส่วนย่อยต่าง ๆ หรือเซกเมนต์ที่อธิบายได้ด้วย ลำดับของกิจกรรม แต่ละเซกเมนต์มี พฤติกรรมที่เขียนเป็นโปรแกรมควบคุมที่เป็น อิสระจากกัน สำหรับการควบคุมการรับข้อมูล จะมีคำสั่งที่ประกอบเซกเมนต์ให้ทำงานแล้ว ส่งผลควบคุมนั้นกลับมา ดังนั้นแบบจำลองจะ ถูกกำหนดเป็นความต่อเนื่องของการเกิด กระบวนการ ภาษาที่จัดอยู่ในกลุ่มนี้ได้แก่ SIMULA

22 22 ภาษาที่อยู่ภายใต้ทิศทางของการทำงาน (Transaction-flow oriented language) จัดเป็นกลุ่มย่อยของภาษาเชิงกระบวนการที่จะ แทนเส้นทางการวิ่งของกิจกรรมด้วยบล็อก แบบจำลองของระบบถูกแทนด้วยผังการ ทำงานที่ประกอบด้วยบล็อกของภาษา โปรแกรมจะสร้างการทำงาน (Transaction) แล้วปฏิบัติการทำงานนั้นในบล็อกและส่งการ ทำงานเหล่านั้นไปตามผังการทำงาน การเขียน โปรแกรมด้วยภาษานี้จะลดความยุ่งยากด้วย การกำหนดการแทนผังการทำงาน ภาษาที่อยู่ในกลุ่มนี้ที่เป็นที่รู้จักกันทั่วไปคือ GPSS

23 23 ตัวอย่างของภาษาเฉพาะที่นิยมใช้โดยทั่วไป GASPเป็นภาษาเฉพาะที่เป็นกลุ่มของ โปรแกรมย่อยที่เขียนด้วยภาษา FORTRAN แต่ละโปรแกรมย่อยจะทำหน้าที่บางอย่างที่ มักจะใช้การจำลองแบบปัญหา ผู้เขียน โปรแกรมจะเพียงแต่สร้างโปรแกรมหลักแล้ว เรียกใช้โปรแกรมย่อยเหล่านั้นมาต่อกันเป็น โปรแกรม GPSSเป็นภาษาเฉพาะที่พัฒนาโดยไอบีเอ็ม และมีรูปแบบคำสั่งในการเขียนเฉพาะทาง โดย ปัญหาที่เหมาะสมกับการใช้ภาษานี้ควรเป็น ปัญหาที่มีองค์ประกอบชั่วคราวที่ใช้ในระบบ เช่น วัตถุดิบ ลูกค้าที่เข้ารับบริการ เป็นต้น

24 24 ตัวอย่างของภาษาเฉพาะที่นิยมใช้โดยทั่วไป (ต่อ) SIMSCRIPTเป็นภาษาที่พัฒนาโดยบริษัท แรนด์ คอร์ปอเรชัน (RAND Corporation) ซึ่ง แนวทางในการสร้างโปรแกรมจะเป็นการ จัดเรียงของความต่อเนื่องของเหตุการณ์ที่จะ เกิดขึ้นในระบบ CSMP เป็นภาษาที่พัฒนาโดยไอบีเอ็ม และใช้ กับแบบจำลองอนาล็อกที่อาศัยดิจิตอล คอมพิวเตอร์ในการปฏิบัติการ มักใช้กับปัญหา ที่อยู่ในรูปของสมการนอนลิเนียร์ สมการ อนุพันธ์ สมการอินทิเกรชัน

25 25

26 A Brief History of Simulation Simulation has been around for some time. Early simulations were event-driven (see Simscript  MODSIM) and frequently military applications. In the 1960’s Geoffrey Gordon developed the transaction (process) based orientation that we are now familiar with. Gordon’s software was called General Purpose Simulation System (GPSS). GPSS was originally intended for analyzing time sharing options on mainframe computers. The software was included as a standard library on IBM 360s and its use was quite widespread.

27 SIMSCRIPT พัฒนาขึ้นโดยบริษัทแรนด์ คอร์ปอเรชัน ในปี ช่วงต้นปีค.ศ และเปิดตัวครั้งแรกในปี 1962 และจากนั้นก็ได้ถูกพัฒนาประสิทธิภาพ ซึ่งมีการเผยแพร่ออกมาเป็นเวอร์ชันต่าง ๆ ซึ่ง ได้แก่ SIMSCRIT I.5 เป็นต้น ในปี 1968 บริษัทได้ผลิตเวอร์ชันที่สมบูรณ์คือ SIMSCRIPT II ซึ่งเป็นที่แพร่หลายและรู้จัก กันในวงการซอฟต์แวร์ของการจำลองแบบ ปัญหา และเวอร์ชันล่าสุดคือ SIMSCRIPT II.5 ถูกนำเผยแพร่ในปี 1972

28 28 เนื่องจากภาษานี้ได้ถูกพัฒนาด้วยภาษา FORTRAN จึงมีลักษณะคล้ายคลึงกับภาษา FORTRAN และสามารถนำไปใช้เป็นภาษา สำหรับการจำลองปัญหาแบบไม่ต่อเนื่อง โดย สามารถใช้กับเครื่อง IBM 7090, 7094, 360 และ 370 series

29 GPSS GPSS ย่อมาจาก General Purpose Simulation System เป็นภาษาสำหรับการจำลอง ปัญหาแบบไม่ต่อเนื่อง ที่ได้รับการพัฒนามาตั้งแต่ การเริ่มต้นการจำลองแบบปัญหา ผู้พัฒนาคือ Geoffrey Gordon ในปี 1961 โดยครั้งแรก พัฒนาขึ้นเพื่อใช้กับเครื่อง IBM 704, 709 และ 7090 GPSS เป็นภาษาที่เหมาะกับการสร้าง แบบจำลองปัญหาด้านการจราจรและปัญหาระบบ แถวคอย โดยการเขียน GPSS นั้นจะแตกต่างจาก SIMSCRIPT โดยเริ่มจากการสร้างแผนภาพบล็อก (Block diagrams) เพื่อแสดงการเครือข่ายของ การเชื่อมโยง

30 30 บล็อกของงานต่าง ๆ และการเขียนโปรแกรมจะใช้ ฟังก์ชันสำหรับการทำงานของบล็อกที่กำหนดขึ้น งานที่เกิดขึ้นระหว่างบล็อกจะเรียกว่า transactions ตัวอย่างของการทำงานหรือ transactions ได้แก่ ลูกค้า ข่าวสาร ส่วนประกอบ ของเครื่อง เครื่องยนต์ เป็นต้น

31 31 ตัวอย่างของบล็อกที่ใช้กันทั่วไป GENERATE เป็นฟังก์ชันในการสร้างการทำงานหรือ transactions QUEUE เป็นฟังก์ชันในการสร้างแถวคอยของการ ทำงาน และจัดการข้อมูลทางด้านสถิติของ แถวคอย TABULATEเป็นฟังก์ชันในการจัดระเบียบของเวลาใน การมาถึงของการทำงานในระบบการ จำลองปัญหา TERMINATE เป็นฟังก์ชันในการล้างการทำงาน ที่เสร็จเรียบร้อยหรือตามที่ระบุให้ออกจากระบบ ADVANCEเป็นฟังก์ชันในการนำเข้าการทำงานแล้ว ติดตามจนกระทั่งการทำงานเสร็จสมบูรณ์ด้านการ คำนวณทางคณิตศาสตร์พื้นฐานทั่วไป

32 32 GPSS จะมีคำสั่งหรือฟังก์ชันในการคำนวณไว้สำหรับ เรียกใช้ได้ทันที นั่นคือมี built in math functions และ built in random variate generators ตัวอย่างแผนภาพบล็อกที่ใช้กับภาษา GPSS สามารถแสดงได้ดังรูป 5.3 และรูปแบบของภาษา ในการเขียนโปรแกรมสามารถแบ่งออกคอลัมน์ต่าง ๆ สำหรับการเขียนคำสั่งเป็น 4 ส่วน คือ ลาเบล (Label) คำสั่งปฏิบัติการ (Operator) ตัว ปฏิบัติการ (Operands) และคอมเมนต์ (Comments) ซึ่งแต่ละส่วนจะมีขอบเขตของ คอลัมน์ดังแสดงในตาราง 5.1

33 33 ตาราง 5.1 แสดงหมายเลขคอลัมน์สำหรับการ เขียนโปรแกรม GPSS LabelOperatorOperandsComments คอลัมน์ 2-6คอลัมน์ 8-18คอลัมน์ที่ 19 ขึ้นไป คอลัมน์ 37 ขึ้นไป และไม่ใช้ คอลัมน์ 72-80

34 34 รูป 5.3 แสดงสัญลักษณ์ของ แผนภาพบล็อก GPSS

35 35

36 GPSS Code Assume an M/M/1system. Interarrival time = 2.0 minutes (exponential) Service time = 1.0 minutes (exponential). Assume an infinite queue. *Simulation of M/M/1 system SIMULATE GENERATE RVEXPO(1, 2.0) QUEUESERVQ SEIZESERVER ADVANCERVEXPO(2, 1.0) RELEASESERVER TERMINATE1 * *CONTROL STATEMENTS * START 1000 END

37 SIMULA SLAM และ SIMAN SIMULA ย่อมาจาก SIMUlation Language พัฒนามาจากภาษาสำหรับการใช้งานทั่วไปคือ ALGOL 60 ภาษานี้ถูกพัฒนาขึ้นโดยมีวัตถุประสงค์คือ ต้องการจะสร้างภาษาเฉพาะการจำลองแบบปัญหาที่มี ความคล่องตัวสามารถปรับเปลี่ยนเงื่อนไขหรือควบคุม การทำงานต่าง ๆ ได้เหมือนกับภาษาใช้งานทั่ว ๆ ไป ขณะที่ GPSS และ SIMSCRIPT เป็นภาษาเฉพาะการ จำลองที่นิยมกันในสหรัฐอเมริกา SIMULA กลับได้รับ ความนิยมในแถบยุโรป เนื่องจากภาษานี้มีพื้นฐานมา จากคำสั่งภาษา ALGOL ผู้ใช้จึงควรมีความรู้พื้นฐาน เกี่ยวกับภาษา ALGOL

38 38 แนวความคิดของภาษาจะเป็นการทำงานของโพรเซส ซึ่ง สามารถทำงานในแบบขนาน และกลุ่มของโพรเซสที่ ทำงานร่วมกันจะเรียกว่าเฟสปฏิบัติการ (Active phases) โดยแต่ละโพรเซสจะทำการนำข้อมูลเข้ามาและทำการ ประมวลผลตามกฏหรือเงื่อนไขที่กำหนดไว้ SLAM ย่อมาจาก Simulation Language for Alternative Modeling ได้ถูกพัฒนาขึ้นในปี 1972 โดย อลัน พริทส์เกอร์และเดวิส เพกเดน (Alan Pritsker and David Pegden) เพื่อใช้กับเครื่อง VAX และ UNIX ซึ่ง เป็นเครื่องกลุ่มเวิร์กสเตชัน (workstations) โดยภาษานี้ ถูกพัฒนามาจากภาษา FORTRAN แต่เนื่องจาก SLAM นั้นใช้เวลาในการคอมไพล์นาน จึงได้มีการพัฒนาให้มีการ คอมไพล์ให้เร็วขึ้นด้วยการแยกส่วนของโปรแกรมออกเป็น โปรแกรมย่อย ๆ โดยภาษาที่ได้รับการพัฒนานี้ถูกเรียกว่า SLAM II

39 39 1 RESOURCE,,SERVER,1,{1}; 2 CREATE,EXPON(2,1),0.0,,INF,1; 3 ACTIVITY; 4 AWAIT,1,{{SERVER,1}},ALL,,NONE,1; 5 ACTIVITY,1,EXPON(1,1); 6 FREE,{{SERVER,1}},1; 7 ACTIVITY; 8 TERMINATE,INF; 1 GEN; 2 LIMITS; 3 INITIALIZE,0.0,1000,YES,,NO; 4 NET; 5 FIN; แสดงตัวอย่างการเขียนโปรแกรม SLAM II

40 40 สำหรับ SIMAN ย่อมาจาก SIMulation Analysis ซึ่งเดนนิส เพกเดน (Dennis Pegden) ได้ทำการ พัฒนาขึ้นในปี 1983 โดยมีเป้าหมายให้ใช้กับงาน กับเครื่องคอมพิวเตอร์ส่วนบุคคล และมีรูปแบบการ เขียนที่แน่นอนและชัดเจน จากนั้นได้ถูกพัฒนา ต่อให้มีความสามารถในการทำรูปภาพจำลองได้ และเสนอออกมาในปี 1985

41 41 BEGIN; CREATE,,EX(2,1); QUEUE, 1; SEIZE: SERVER; DELAY: EX(1,1); RELEASE:SERVER:DISPOSE; END; BEGIN; DISCRETE, 1000, 1, 1; RESOURCES: 1, SERVER; REPLICATE,1; END; แสดงตัวอย่างการเขียนภาษา SIMAN

42 SIMAN AND SLAM SIMAN is tailored for the PC market. SLAM remains focused on workstations. SIMAN introduces an animation package (CINEMA) about 1985 or so. The animation is an add on unit for the model. Originally it required specialized (& expensive) hardware. SLAM responds with a PC version of SLAM in the late 1980s (which also has animation). Both firms develop software to integrate factory scheduling into simulation runs.

43 การเลือกใช้ภาษา - การใช้งานได้ทั่วไปและการเขียนโปรแกรม ภาษาที่ใช้ควรมีฟังก์ชันในการเขียนและสามารถ ในควบคุมการทำงานที่ครอบคลุมแอพพลิเคชัน ที่มีรูปแบบหลากหลายได้ รวมทั้งนำเสนอขั้นตอน วิธีที่ดี มีความถูกต้องและมีประสิทธิภาพ เช่น ภาษาที่เลือกใช้ควรมีความสอดคล้องและ เหมาะสมกับลักษณะเฉพาะของปัญหาที่ต้องการ สร้างแบบจำลอง

44 44 - ความสะดวกในการใช้งาน หมายถึงภาษาสามารถใช้งานได้ง่ายมีความเป็น ธรรมชาติที่สอดคล้องกับระบบของแบบจำลอง ซึ่งอยู่ภายใต้เงื่อนไขของโปรแกรม คอมพิวเตอร์ ผู้ใช้สามารถแก้ไขโปรแกรมได้ ง่าย มีความสะดวกในการสร้างเอกสารและ ปรับเปลี่ยนการออกแบบการทดลองได้ง่าย

45 45 - ประสิทธิภาพของเครื่อง ภาษาที่ใช้จะต้องมีความเหมาะสมกับเครื่อง คอมพิวเตอร์ที่ใช้ในการสร้างแบบจำลอง มี ความรวดเร็วในการคอมไพล์และได้โปรแกรม ที่มีคุณภาพ ซึ่งจะขึ้นอยู่กับโครงสร้างของ ภาษาที่ใช้ ประสิทธิภาพของเครื่องนั้นสามารถ วัดได้จาก ความเร็วในการประมวลผลและ ขนาดของหน่วยความจำที่ต้องการใช้ในการ ดำเนินงาน

46 46 - ความคุ้มค่าในการลงทุน ข้อจำกัดสำหรับการพิจารณาเลือกใช้ภาษาที่ สำคัญอย่างหนึ่งคือค่าใช้จ่ายต่าง ๆ ที่จะ เกิดขึ้นจากการสร้างแบบจำลอง ไม่ว่าจะเป็น การลงทุนทางด้านซอฟต์แวร์หรือฮาร์ดแวร์ ซึ่ง จะต้องให้ผลที่คุ้มค่าต่อการสร้างตัว แบบจำลอง

47 Early PC Versions By the mid-80s the PC market is dominant. Mainframes are expensive. Cycles are expensive. Central IS groups are expensive. Engineers become computer experts. A lot of IE’s end up writing simulations. There are a number of issues: User development cycles are very long. Total memory (model, entities, etc) limited to about 32k by FORTRAN/C and early versions of DOS. Simulation language development tends to lag OS development.

48 SIMULATORS Advent of Windows 3.0/3.1. Mass penetration of PCs. Powerful hardware and software (especially OOC) becomes available. We start to see the creation of a variety of simulators. The simulators are usually graphically oriented (drag & drop model development),have integrated animation, and low purchase cost. Huge number of simulators come onto the market. These often lack statistical rigour.

49 Today’s Market There has been something of a rationalization in terms of the number of simulation languages/simulators available. See the May 1999 edition of IIE Solutions. The large simulation companies have all been bought or sold at least a couple of times in the past two – three years. SLAM  Frontstep Systems (a logistics software supplier). Not in active development (last release ’99). SIMAN  Rockwell Software (logistics & controls).

50 Trends Virtual reality animations. Advanced statistical functions Curve fitting for input data. Automatic detection of warm up Output analysis modules (including replication). Bolt on “Optimizers” – Tools to search for optimal settings of parameters.

51 Witness (Lanner Inc) Simple building block design Interactive Full range of logic and control options Elements for discrete manufacture, process industries, BPR, e-commerce, call centers, health, finance and government Statistical input and reports Link system to other software easily (CAD/Excel) Optional 3D/VR views Model Optimisation $13,000-$17,000 ($US)

52 ARENA Process hierarchy. Integrates with Microsoft desktop tools Spreadsheet interface Crystal reports Free runtime software. Fully graphical environment. No programming required. VBA embedded. Optimization with OptQuest for Arena. Builds reusable modules. $1,000 - $17,000 ($US). Various add-in modules available.

53 GPSS/H Successor to the “orginal” simulation language (GPSS). –Was freeware on IBM 360’s Makes use of common program blocks. Proven, reliable software. Extremely flexible. Extensive error checking routines. Post-process animations (Proof) can be built. ~$5,000 ($US)

54 Automod Combines Virtual Reality (VR) graphics with a discrete and continuous simulation environment. –Manufacturing operations –Material handling systems –Tanks and pipe networks –IC Manufacturing –Transportation and logistics systems $15,000 - $100,000 ($US)

55 Promodel State-of-the-art simulation engine Graphical user interface Distribution-fitting. Output analysis module Optional optimizer. Modules designed for: –Manufacturing –Healthcare –Services $17,000 ($US)


ดาวน์โหลด ppt 1 บทที่ 5 ภาษาที่ใช้ในการจำลองแบบปัญหา การจำลองแบบปัญหาด้วยคอมพิวเตอร์ ต้องเข้าใจเกี่ยวกับ ประเภทของคอมพิวเตอร์ และภาษาที่เหมาะสมที่ใช้สำหรับนำมาเขียน.

งานนำเสนอที่คล้ายกัน


Ads by Google