การสร้างแบบจำลอง Monte Carlo โดยใช้ Excel
NS การจำลองมอนติคาร์โล สามารถพัฒนาโดยใช้ Microsoft Excel และเกมลูกเต๋า การจำลอง Monte Carlo เป็นวิธีการทางคณิตศาสตร์ที่ใช้การสุ่มจับเพื่อคำนวณและแก้ปัญหาที่ซับซ้อน ปัจจุบันมีการใช้กันอย่างแพร่หลายและมีบทบาทสำคัญในด้านต่างๆ เช่น การเงิน ฟิสิกส์ เคมี และ เศรษฐศาสตร์.
ประเด็นที่สำคัญ
- วิธีมอนติคาร์โลพยายามแก้ปัญหาที่ซับซ้อนโดยใช้วิธีการสุ่มและความน่าจะเป็น
- การจำลอง Monte Carlo สามารถพัฒนาได้โดยใช้ Microsoft Excel และเกมลูกเต๋า
- สามารถใช้ตารางข้อมูลเพื่อสร้างผลลัพธ์—ต้องใช้ผลลัพธ์ทั้งหมด 5,000 รายการเพื่อเตรียมการจำลอง Monte Carlo
การจำลองมอนติคาร์โล
วิธีมอนติคาร์โลถูกคิดค้นโดย John von Neumann และ Stanislaw Ulam ในปี 1940 และพยายามแก้ปัญหาที่ซับซ้อนโดยใช้วิธีการสุ่มและความน่าจะเป็น คำว่ามอนติคาร์โลหมายถึงเขตการปกครองของโมนาโกซึ่งเป็นที่รู้จักอย่างแพร่หลายว่าเป็นสถานที่ที่ชนชั้นสูงชาวยุโรปเล่นการพนัน
วิธีการจำลองมอนติคาร์โลคำนวณความน่าจะเป็นของปริพันธ์และแก้สมการเชิงอนุพันธ์ย่อย ดังนั้นจึงแนะนำวิธีการทางสถิติเพื่อความเสี่ยงในการตัดสินใจเชิงความน่าจะเป็น แม้ว่าจะมีเครื่องมือทางสถิติขั้นสูงมากมายเพื่อสร้างแบบจำลองมอนติคาร์โล แต่ก็ง่ายกว่าที่จะ จำลองกฎปกติและกฎเครื่องแบบโดยใช้ Microsoft Excel และเลี่ยงผ่านคณิตศาสตร์ การสนับสนุน
เมื่อใดควรใช้การจำลองมอนติคาร์โล
เราใช้วิธีมอนติคาร์โลเมื่อปัญหาซับซ้อนเกินไปและยากต่อการคำนวณโดยตรง การใช้การจำลองสามารถช่วยแก้ปัญหาในสถานการณ์ที่ไม่แน่นอนได้ การวนซ้ำจำนวนมากทำให้สามารถจำลอง การกระจายแบบปกติ. นอกจากนี้ยังสามารถใช้เพื่อทำความเข้าใจว่าความเสี่ยงทำงานอย่างไร และเพื่อทำความเข้าใจความไม่แน่นอนในแบบจำลองการคาดการณ์
ดังที่กล่าวไว้ข้างต้น การจำลองนี้มักใช้ในสาขาวิชาต่างๆ เช่น การเงิน วิทยาศาสตร์ วิศวกรรมศาสตร์ และ การจัดการห่วงโซ่อุปทาน—โดยเฉพาะอย่างยิ่งในกรณีที่มีตัวแปรสุ่มมากเกินไปในการเล่น ตัวอย่างเช่น นักวิเคราะห์อาจใช้การจำลองแบบมอนติคาร์โลเพื่อประเมินอนุพันธ์รวมถึงตัวเลือกหรือเพื่อกำหนด ความเสี่ยง รวมถึงโอกาสที่บริษัทอาจผิดนัดชำระหนี้
เกมลูกเต๋า
สำหรับการจำลองมอนติคาร์โล เราแยกตัวแปรสำคัญจำนวนหนึ่งที่ควบคุมและอธิบายผลลัพธ์ของการทดลอง จากนั้นกำหนด การกระจายความน่าจะเป็น หลังจากสุ่มตัวอย่างจำนวนมาก เพื่อแสดงให้เห็น ให้เล่นเกมลูกเต๋าเป็นแบบจำลอง นี่คือวิธีที่เกมลูกเต๋าหมุน:
• ผู้เล่นโยนลูกเต๋าสามลูกที่มีหกด้านสามครั้ง
• หากผลรวมของการโยนสามครั้งเป็นเจ็ดหรือ 11 ผู้เล่นจะเป็นผู้ชนะ
• ถ้าผลรวมของการโยนสามครั้งคือ: สาม, สี่, ห้า, 16, 17 หรือ 18 ผู้เล่นแพ้
• หากผลรวมเป็นอย่างอื่น ผู้เล่นเล่นอีกครั้งและทอยลูกเต๋าใหม่
• เมื่อผู้เล่นโยนลูกเต๋าอีกครั้ง เกมจะดำเนินต่อไปในลักษณะเดียวกัน ยกเว้นว่าผู้เล่นชนะเมื่อผลรวมเท่ากับผลรวมที่กำหนดไว้ในรอบแรก
ขอแนะนำให้ใช้ตารางข้อมูลเพื่อสร้างผลลัพธ์ นอกจากนี้ จำเป็นต้องมีผลลัพธ์ 5,000 รายการเพื่อเตรียมการจำลองมอนติคาร์โล
ในการเตรียมการจำลอง Monte Carlo คุณต้องมีผลลัพธ์ 5,000 รายการ
ขั้นตอนที่ 1: กิจกรรมทอยลูกเต๋า
อันดับแรก เราพัฒนาช่วงของข้อมูลด้วยผลลัพธ์ของลูกเต๋าสามลูกแต่ละลูก 50 ทอย ในการดำเนินการนี้ ขอเสนอให้ใช้ฟังก์ชัน "RANDBETWEEN(1,6)" ดังนั้น ทุกครั้งที่เราคลิก F9 เราจะสร้างผลลัพธ์การหมุนชุดใหม่ เซลล์ "ผลลัพธ์" คือผลรวมของผลลัพธ์จากทั้งสามม้วน
ขั้นตอนที่ 2: ช่วงของผลลัพธ์
จากนั้น เราจำเป็นต้องพัฒนาช่วงของข้อมูลเพื่อระบุผลลัพธ์ที่เป็นไปได้สำหรับรอบแรกและรอบต่อไป มีช่วงข้อมูลสามคอลัมน์ ในคอลัมน์แรก เรามีตัวเลขตั้งแต่ 1 ถึง 18 ตัวเลขเหล่านี้แสดงถึงผลลัพธ์ที่เป็นไปได้หลังจากการทอยลูกเต๋าสามครั้ง: สูงสุดคือ 3 x 6 = 18 คุณจะสังเกตได้ว่าสำหรับช่องที่หนึ่งและสอง สิ่งที่ค้นพบนั้นไม่มี เนื่องจากเป็นไปไม่ได้ที่จะได้หนึ่งหรือสองโดยใช้ลูกเต๋าสามลูก ขั้นต่ำคือสาม
ในคอลัมน์ที่สอง ข้อสรุปที่เป็นไปได้หลังจากรอบแรกรวมอยู่ด้วย ตามที่ระบุไว้ในข้อความเริ่มต้น ผู้เล่นจะชนะ (ชนะ) หรือแพ้ (แพ้) หรือเล่นซ้ำ (Re-roll) ทั้งนี้ขึ้นอยู่กับผลลัพธ์ (ผลรวมของการทอยลูกเต๋าสามลูก)
ในคอลัมน์ที่สาม ข้อสรุปที่เป็นไปได้สำหรับรอบต่อไปจะถูกลงทะเบียน เราสามารถบรรลุผลลัพธ์เหล่านี้ได้โดยใช้ฟังก์ชัน "IF" เพื่อให้แน่ใจว่าหากผลลัพธ์ที่ได้นั้นเทียบเท่ากับผลลัพธ์ที่ได้รับในรอบแรก เรา ชนะ มิฉะนั้นเราจะปฏิบัติตามกฎเริ่มต้นของการเล่นดั้งเดิมเพื่อพิจารณาว่าเราหมุนซ้ำ ลูกเต๋า.
ขั้นตอนที่ 3: บทสรุป
ในขั้นตอนนี้ เราระบุผลลัพธ์ของการทอยลูกเต๋า 50 ครั้ง ข้อสรุปแรกสามารถรับได้ด้วยฟังก์ชันดัชนี ฟังก์ชันนี้จะค้นหาผลลัพธ์ที่เป็นไปได้ของรอบแรก ข้อสรุปที่สอดคล้องกับผลลัพธ์ที่ได้รับ ตัวอย่างเช่น เมื่อเราทอยหก เราเล่นอีกครั้ง
สามารถรับผลการทอยลูกเต๋าอื่นๆ โดยใช้ฟังก์ชัน "OR" และฟังก์ชันดัชนีที่ซ้อนอยู่ในฟังก์ชัน "IF" ฟังก์ชันนี้บอก Excel ว่า "ถ้าผลลัพธ์ก่อนหน้าคือ ชนะหรือแพ้" ให้หยุดทอยลูกเต๋าเพราะเมื่อเราชนะหรือแพ้แล้ว เราทำเสร็จแล้ว มิฉะนั้น เราจะไปที่คอลัมน์ของข้อสรุปที่เป็นไปได้ต่อไปนี้ และระบุข้อสรุปของผลลัพธ์
ขั้นตอนที่ 4: จำนวนลูกเต๋าม้วน
ตอนนี้ เรากำหนดจำนวนการทอยลูกเต๋าที่จำเป็นก่อนที่จะแพ้หรือชนะ ในการดำเนินการนี้ เราสามารถใช้ฟังก์ชัน "COUNTIF" ซึ่งต้องการ Excel เพื่อนับผลลัพธ์ของการ "ม้วนซ้ำ" และเพิ่มจำนวนหนึ่งเข้าไป เพิ่มหนึ่งรอบเพราะเรามีรอบพิเศษหนึ่งรอบ และเราได้ผลลัพธ์สุดท้าย (ชนะหรือแพ้)
ขั้นตอนที่ 5: การจำลอง
เราพัฒนาช่วงเพื่อติดตามผลของการจำลองแบบต่างๆ ในการทำเช่นนี้ เราจะสร้างสามคอลัมน์ ในคอลัมน์แรก หนึ่งในตัวเลขที่รวมคือ 5,000 ในคอลัมน์ที่สอง เราจะค้นหาผลลัพธ์หลังจากทอยลูกเต๋า 50 ลูก ในคอลัมน์ที่สาม ชื่อของคอลัมน์ เราจะมองหาจำนวนการทอยลูกเต๋าก่อนที่จะได้รับสถานะสุดท้าย (ชนะหรือแพ้)
จากนั้นเราจะสร้าง การวิเคราะห์ความไว ตารางโดยใช้ข้อมูลคุณลักษณะหรือตารางข้อมูลตาราง (ความไวนี้จะถูกแทรกในตารางที่สองและคอลัมน์ที่สาม) ในการวิเคราะห์ความอ่อนไหวนี้ ต้องแทรกจำนวนเหตุการณ์ตั้งแต่หนึ่งถึง 5,000 ลงในเซลล์ A1 ของไฟล์ อันที่จริง เราสามารถเลือกเซลล์ว่างใดๆ ก็ได้ แนวคิดนี้เป็นเพียงการบังคับการคำนวณใหม่ในแต่ละครั้ง และรับการทอยลูกเต๋าใหม่ (ผลลัพธ์ของการจำลองใหม่) โดยไม่ทำลายสูตรในสถานที่
ขั้นตอนที่ 6: ความน่าจะเป็น
ในที่สุด เราก็สามารถคำนวณความน่าจะเป็นของการชนะและแพ้ เราทำสิ่งนี้โดยใช้ฟังก์ชัน "COUNTIF" สูตรจะนับจำนวน "ชนะ" และ "แพ้" จากนั้นหารด้วยจำนวนรวมของเหตุการณ์ 5,000 เพื่อให้ได้สัดส่วนตามลำดับของเหตุการณ์หนึ่งและอีกเหตุการณ์หนึ่ง ในที่สุดเราก็เห็นว่าความน่าจะเป็นที่จะได้ผลลัพธ์ที่ชนะคือ 73.2% และการได้รับผลแพ้คือ 26.8%