Category Archives: มัธยม

วิทย์ม.ต้น: หัดใช้การสุ่มใน Python (สับไพ่, ประมาณค่าพาย, โยนหัวก้อย)

วันศุกร์ที่ผ่านมาเด็กๆได้เรียนรู้เกี่ยวกับการสุ่มใน Python ครับ รู้จักใช้ random.shuffle( ) เพื่อสลับสิ่งของ, random.choice( ) และ random.sample( ) เพื่อสุ่มเลือกของ, random.random( ) เพื่อสร้างตัวเลขสุ่ม

เราลองใช้ random.shuffle สลับสำรับไพ่แล้วแจกไพ่ด้วย pop( ) หรือจะใช้ random.sample( ) แล้วตามด้วย remove( ) ก็ได้ครับ

เราลองประมาณค่า π ด้วยการสุ่มด้วย random.random( )


และใช้ random.choice( ) โยนหัวก้อยให้เราครับ สามารถแก้ปัญหาเช่นอยากรู้ว่าถ้าโยนเหรียญห้าเหรียญพร้อมๆกันสักกี่ครั้งถึงจะออกหัวหมด

สามารถดาวน์โหลด Jupyter Notebook ที่มีตัวอย่างโค้ดได้ที่นี่ครับ

วิทย์ม.ต้น: วัดอัตราลมผ่านไส้กรอง HEPA แบบดูดและเป่า, Cognitive Biases สามอย่าง

วันนี้เราก็คุยกันเรื่อง cognitive biases สามอย่างที่เด็กๆไปอ่านในหนังสือ The Art of Thinking Clearly ในสัปดาห์ที่ผ่านมาครับ คราวนี้เรื่อง (Problem of) Induction, Loss Aversion, และ Social Loafing ครับ

(Problem of) induction คือการที่เราสังเกตอะไรที่เกิดมาในอดีตแล้วคาดการณ์ว่าในอนาคตจะเป็นอย่างนั้นอีกซ้ำๆโดยไม่เข้าใจสาเหตุลึกซึ้งว่ามันควรจะเกิดอย่างนั้นไหม เช่นเราอาจจะเห็นแต่หงส์สีขาวจึงสรุปว่าหงส์มีแต่สีขาว (แต่จริงๆมีหงส์สีดำด้วย) หรือดูกราฟความสุขของไก่งวงที่คนป้อนอาหารเป็นเวลานานจนถึงเทศกาล Thanksgiving ไก่งวงมีความสุขทุกวันเพราะคิดว่าคนชอบเอาอาหารมาให้ จึงคาดว่าวันพรุ่งนี้ก็คงมีอาหารจากคนอีก ความคิดนี้ถูกต้องจนกระทั่งวันสุดท้ายที่โดนเชือดเป็นอาหาร:

Loss aversion คือการที่คนกลัวที่จะเสียของที่มีอยู่แล้วมากกว่าความอยากได้ของมาเพิ่ม เช่นคนส่วนใหญ่กลัวเสียเงิน x บาท มากกว่าอยากได้เงิน x บาท หรือคนซื้อหุ้นติดดอยแล้วไม่ค่อยอยากขาย

Social loafing คือคนเรามักจะทำงานไม่เต็มที่ถ้าทำงานเป็นกลุ่ม กลุ่มยิ่งใหญ่ผลงานของสมาชิกแต่ละคนยิ่งไม่เด่นชัดและสมาชิกมักจะไม่ทำงานเต็มความสามารถ ทางแก้คือควรแบ่งงานต่างๆให้ชัดเจนว่างานนี้ใครเป็นคนรับผิดชอบ

เด็กๆทำการทดลองวัดอัตราที่ลมไหลผ่านไส้กรอง HEPA ของเครื่องฟอกอากาศทำเองกันต่อจากคราวที่แล้วครับ โดยคราวนี้เรามีอุปกรณ์ที่ดีขึ้น ทำกรอบพลาสติกที่มีขนาดพอดีกับขนาดไส้กรอง เพื่อว่าจะได้เอาถุงพลาสติกไปติดกับกรอบแล้วเอาไปครอบไส้กรองได้อย่างรวดเร็วและลมไม่รั่วครับ

คราวนี้เราวัดอัตราลมสองแบบ แบบแรกคือแบบที่เอาใส้กรองติดไว้ด้านหน้าของพัดลม ให้พัดลมเป่าลมผ่านไส้กรอง (เราเรียกแบบนี้ว่า “แบบเป่า”) แบบที่สองคือเอาพัดลมใส่กล่องแล้วเจาะด้านหลังของกล่อง เอาไส้กรองไปติดข้างหลัง เมื่อเปิดพัดลม ลมจะถูกดูดผ่านไส้กรอง (เราเรียกวแบบนี้ว่า “แบบดูด”) วิธีแบบดูดนี้คือวิธีตามลิงก์นี้ครับ การทดลองหน้าตาแบบนี้ครับ:

ผลการทดลองเป็นแบบนี้ครับ:

พบว่าแบบดูดจะได้ลมผ่านไส้กรองมากกว่าแบบเป่าประมาณ 1.5 เท่า (ประมาณ 7 ลิตรต่อวินาที vs. 4.5 ลิตรต่อวินาที) ครับ

วิทย์ม.ต้น: หัดต่อภาพทำ Collage ด้วย Pillow กัน

วันศุกร์ที่ผ่านมาเด็กๆหัดใช้ Pillow ต่ออีกครับ ครั้งที่แล้วต่อภาพสองภาพในแนวตั้งและแนวนอนได้แล้ว คราวนี้ลองต่อหลายๆภาพเข้าด้วยกันเป็น Collage เล่นดู การบ้านเด็กๆคือให้ไปพยายามรวมภาพเข้าด้วยกันให้ดูดีๆ หรือไม่ก็สร้างออกมาทีละหลายๆภาพแล้วเลือกเอาครับ

ตัวอย่างการใช้ Pillow ให้เด็กศึกษาเพิ่มเติมมีเช่นที่ https://automatetheboringstuff.com/chapter17/ และ https://pillow.readthedocs.io/en/stable/handbook/tutorial.html

ข้อมูลอ้างอิงเกี่ยวกับ Pillow ไว้ทำความเข้าใจให้ลึกขึ้น: https://pillow.readthedocs.io/en/stable/handbook/concepts.html

วิธีสลับของหรือเลือกของแบบสุ่มดูได้จากลิงก์เหล่านี้ครับ: https://pynative.com/python-random-shuffle/ และ https://pynative.com/python-random-choice/ และดูลิงก์ https://docs.python.org/3/library/random.html สำหรับฟังก์ชั่นเกี่ยวกับการสุ่มต่างๆใน Python

สามารถดาวน์โหลด Jupyter Notebook ที่มีตัวอย่างโค้ดได้ที่นี่ครับ