บทนำ
ยินดีต้อนรับเข้าสู่บทเรียนที่นำไปประยุกต์ใช้ได้จริงที่สุดบทหนึ่งในหลักสูตร CS1! ที่ผ่านมาคุณอาจจะเคยศึกษาตัวแปรสุ่มในลักษณะที่เป็น "ภาพนิ่ง" (static snapshots) แต่ในบทนี้ เราจะเปลี่ยนเกียร์เพื่อมาดูว่าเหตุการณ์ต่างๆ เกิดขึ้นอย่างไรตามลำดับเวลา โดยใช้ กระบวนการปัวซง (Poisson process) นอกจากนี้ เรายังจะได้เรียนรู้ "เคล็ดลับวิชา" ทางสถิติ นั่นคือ การจำลองด้วยวิธีการแปลงผกผัน (Simulation by Inverse Transform) เทคนิคนี้ช่วยให้เราสามารถนำตัวเลขสุ่มง่ายๆ ระหว่าง 0 ถึง 1 มาแปลงเป็นค่าจากการแจกแจงเกือบทุกรูปแบบที่เราต้องการ ไม่ว่าคุณจะเป็นเซียนคณิตศาสตร์หรือรู้สึกว่าสูตรต่างๆ ดูน่ากลัว โน้ตสรุปชุดนี้จะช่วยให้คุณเชี่ยวชาญหลักการพื้นฐานเหล่านี้ได้อย่างแน่นอน
1. กระบวนการปัวซง (The Poisson Process)
ลองจินตนาการว่าคุณกำลังนั่งอยู่ในร้านกาแฟและนับจำนวนลูกค้าที่เดินเข้าร้าน หากลูกค้ามาถึงด้วยอัตราเฉลี่ยที่คงที่ และการมาถึงของคนหนึ่งไม่ได้ส่งผลต่อการมาของอีกคน แสดงว่าคุณกำลังสังเกต กระบวนการปัวซง อยู่ครับ
นิยามของกระบวนการปัวซงคืออะไร?
กระบวนการปัวซงที่มี อัตรา (rate) \(\lambda\) (โดยที่ \(\lambda > 0\)) คือโมเดลสำหรับจำนวนเหตุการณ์ที่เกิดขึ้นในช่วงเวลาที่กำหนด สิ่งสำคัญที่คุณต้องรู้สำหรับหลักสูตร CS1 คือความสัมพันธ์ระหว่างกระบวนการนี้กับ การแจกแจงปัวซง (Poisson distribution)
หากเรากำหนดให้ \(N(t)\) คือจำนวนเหตุการณ์ที่เกิดขึ้นจนถึงเวลา \(t\) จะได้ว่า:
\(N(t) \sim \text{Poisson}(\lambda t)\)
ความน่าจะเป็นที่จะสังเกตพบเหตุการณ์จำนวน \(k\) ครั้งพอดีในช่วงเวลา \(t\) คำนวณได้จากสูตร:
\(P(N(t) = k) = \frac{e^{-\lambda t} (\lambda t)^k}{k!}\) สำหรับ \(k = 0, 1, 2, ...\)
คุณลักษณะสำคัญ
- ความเป็นอิสระต่อกัน (Independence): จำนวนเหตุการณ์ในช่วงเวลาหนึ่ง จะไม่ส่งผลต่อจำนวนเหตุการณ์ในอีกช่วงเวลาหนึ่งที่ไม่มีส่วนซ้อนทับกัน
- อัตราคงที่ (Constant Rate): จำนวนเหตุการณ์เฉลี่ยต่อหน่วยเวลา หรือ \(\lambda\) จะคงที่ตลอดทั้งกระบวนการ
- ความเป็นสัดส่วน (Proportionality): จำนวนเหตุการณ์ที่คาดหวังในช่วงเวลาที่มีความยาว \(t\) คือ \(E[N(t)] = \lambda t\)
เคล็ดลับสั้นๆ: ตรวจสอบหน่วยของคุณเสมอ! หาก \(\lambda\) คือ "การมาถึง 3 ครั้งต่อชั่วโมง" แต่โจทย์ถามหาความน่าจะเป็นในช่วงเวลา 20 นาที อย่าลืมว่า \(t\) ควรอยู่ในรูปของชั่วโมง (\(t = 1/3\)) หรือต้องแปลง \(\lambda\) ให้เป็น "การมาถึง 1 ครั้งต่อ 20 นาที" แทน
ตารางสรุป: กระบวนการ vs การแจกแจง
กระบวนการปัวซง (Poisson Process): คือ "เรื่องราว" ที่ดำเนินไปต่อเนื่องของเหตุการณ์ที่เกิดขึ้นตามเวลา
การแจกแจงปัวซง (Poisson Distribution): คือ "การนับ" จำนวนเหตุการณ์ที่เกิดขึ้นจริงในกรอบเวลาที่ระบุ
2. การจำลอง: วิธีการแปลงผกผัน (Simulation: The Inverse Transform Method)
คอมพิวเตอร์ "สร้าง" ตัวเลขสุ่มสำหรับการแจกแจงอย่าง Normal หรือ Exponential ได้อย่างไร? โดยปกติแล้วเครื่องจะเริ่มจากตัวแปรสุ่ม แบบสม่ำเสมอมาตรฐาน (Standard Uniform) นั่นคือ \(U \sim \text{Uniform}(0, 1)\) แล้วจึงนำมาแปลงค่า วิธีพื้นฐานที่สุดในการทำเช่นนี้คือ วิธีการแปลงผกผัน (Inverse Transform Method)
แนวคิดหลัก
ทุกการแจกแจงความน่าจะเป็นจะมี ฟังก์ชันการแจกแจงสะสม (Cumulative Distribution Function - CDF) ซึ่งแทนด้วย \(F(x)\) โดยค่าของ \(F(x)\) จะอยู่ระหว่าง 0 ถึง 1 เสมอ วิธีการแปลงผกผันทำงานโดยการ "ย้อนกลับ" กระบวนการนี้ คือเราสุ่มตัวเลข \(u\) ระหว่าง 0 ถึง 1 ขึ้นมา แล้วหาค่า \(x\) ที่ทำให้ \(F(x) = u\)
ขั้นตอนการทำ: สำหรับการแจกแจงแบบต่อเนื่อง
ไม่ต้องกังวลถ้าฟังดูยากในช่วงแรก ให้ลองทำตามสามขั้นตอนนี้นะครับ:
- หา CDF: ระบุสมการสำหรับ \(F(x) = P(X \le x)\)
- จับเท่ากับ \(u\): เขียนสมการ \(F(x) = u\)
- แก้สมการหา \(x\): จัดรูปสมการให้ \(x\) อยู่ฝั่งเดียว ซึ่งจะได้ "สูตรสร้างตัวเลขสุ่ม" คือ \(x = F^{-1}(u)\)
ตัวอย่าง: การสร้างตัวแปรสุ่ม Exponential(\(\lambda\))
1. CDF คือ \(F(x) = 1 - e^{-\lambda x}\)
2. ตั้งสมการ \(u = 1 - e^{-\lambda x}\)
3. แก้หา \(x\):
\(1 - u = e^{-\lambda x}\)
\(\ln(1 - u) = -\lambda x\)
\(x = -\frac{1}{\lambda} \ln(1 - u)\)
เนื่องจาก \(u\) เป็น Uniform(0,1) ดังนั้น \(1-u\) ก็มีคุณสมบัติเป็น Uniform(0,1) เช่นกัน เราจึงมักเขียนให้ง่ายขึ้นเป็น: \(x = -\frac{1}{\lambda} \ln(u)\)
ขั้นตอนการทำ: สำหรับการแจกแจงแบบไม่ต่อเนื่อง (Discrete)
สำหรับการแจกแจงแบบไม่ต่อเนื่อง (เช่น Binomial หรือ Poisson) เราไม่สามารถ "แก้สมการ" ได้เสมอไปเพราะ CDF มีลักษณะเป็นขั้นบันได เราจึงใช้วิธี การเปิดตารางเปรียบเทียบ (lookup approach) แทน
หากเรามีตัวเลขสุ่ม \(u\):
- ถ้า \(0 < u \le P(X = x_0)\) แล้วจะได้ \(X = x_0\)
- ถ้า \(P(X = x_0) < u \le P(X = x_0) + P(X = x_1)\) แล้วจะได้ \(X = x_1\)
- โดยทั่วไป เราจะเลือกค่า \(x_i\) ที่ทำให้ \(F(x_{i-1}) < u \le F(x_i)\)
การเปรียบเทียบ: ลองนึกภาพไม้บรรทัดยาว 1 เมตรที่แบ่งเป็นส่วนๆ ถ้าความน่าจะเป็นของ "0" คือ 0.3 และความน่าจะเป็นของ "1" คือ 0.7 คุณก็ขีดเครื่องหมายที่ 30 ซม. จากนั้นลองปาลูกดอกลงบนไม้บรรทัด ถ้าลูกดอกตกก่อนถึง 30 ซม. แสดงว่าคุณสุ่มได้ "0" แต่ถ้าตกหลังจากนั้น แสดงว่าคุณสุ่มได้ "1"
ประเด็นสำคัญ:
วิธีการแปลงผกผัน มีประสิทธิภาพมากเพราะใช้ตัวเลขสุ่มแบบสม่ำเสมอเพียงตัวเดียว ก็สามารถสร้างตัวอย่างหนึ่งค่าจากการแจกแจงที่คุณต้องการได้ทันที ถือเป็น "มาตรฐานทองคำ" สำหรับการจำลองพื้นฐานในวิชา CS1
3. ข้อผิดพลาดที่ควรระวัง
1. สับสนระหว่าง \(f(x)\) และ \(F(x)\): ต้องใช้ฟังก์ชันการแจกแจง สะสม (\(F(x)\)) เสมอ ไม่ใช่ฟังก์ชันความหนาแน่นความน่าจะเป็น (\(f(x)\)) เมื่อจะทำการแปลงผกผัน
2. แก้สมการพีชคณิตผิด: เมื่อจัดรูป \(u = F(x)\) ต้องระมัดระวังเรื่องลอการิทึมธรรมชาติ (\(\ln\)) และเครื่องหมายต่างๆ ให้ดี ข้อผิดพลาดที่พบบ่อยคือการทำเครื่องหมายลบหายไปเมื่อจัดการกับการแจกแจงแบบ Exponential
3. ตีความอัตราปัวซงผิด: ในกระบวนการปัวซง อัตรา \(\lambda\) คือ "ต่อหน่วยเวลา" หากข้อสอบถามถึงช่วงเวลา 5 นาที แต่อัตรา \(\lambda\) ให้มาเป็นต่อนาที พารามิเตอร์สำหรับการแจกแจงปัวซงของคุณจะต้องเป็น \(5\lambda\)
4. สรุปสาระสำคัญ
- กระบวนการปัวซง: เหตุการณ์เกิดขึ้นด้วยอัตรา \(\lambda\); จำนวนเหตุการณ์คือ \(N(t) \sim \text{Poisson}(\lambda t)\)
- การแปลงผกผัน (แบบต่อเนื่อง): แก้สมการหา \(x = F^{-1}(u)\)
- การแปลงผกผัน (แบบไม่ต่อเนื่อง): หาช่วงในความน่าจะเป็นสะสมที่ค่า \(u\) ตกลงไป
- แบบสม่ำเสมอมาตรฐาน: จุดเริ่มต้นของการจำลองทั้งหมด (\(U \sim \text{Uniform}(0, 1)\))
รู้หรือไม่? นักคณิตศาสตร์ประกันภัยมักใช้กระบวนการปัวซงในการจำลองการเกิดการเคลมประกัน แม้ว่าในโลกแห่งความเป็นจริงการเคลมจะมีความซับซ้อนกว่านี้ แต่กระบวนการปัวซงก็เป็นรากฐานสำคัญในการทำความเข้าใจความเสี่ยงที่เกิดขึ้นตามกาลเวลา!
ขั้นตอนต่อไป: ในข้อสอบ Paper B คุณน่าจะได้ใช้โปรแกรม R ในการจำลองเหล่านี้ สำหรับ Paper A ขอให้ฝึกฝนการแก้สมการพีชคณิตเพื่อให้สามารถหาค่าผกผันของ CDF สำหรับการแจกแจงแบบ Exponential, Pareto หรือ Weibull ได้อย่างรวดเร็วครับ