EP.1 แนวคิดเชิงคำนวณ

วิทยาการคำนวณ ม.4

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

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

1. Decomposition (การย่อยปัญหา) หมายถึงการย่อยปัญหาหรือระบบที่ซับซ้อนออกเป็นส่วนเล็กๆ เพื่อให้ง่ายต่อการจัดการและแก้ปัญหา เช่น หากต้องการเข้าใจว่าระบบของจักรยานทำงานยังไง ทำได้โดยการแยกจักรยานออกเป็นส่วนๆ แล้วสังเกตและทดสอบการทำงานของแต่ละองค์ประกอบ จะเข้าใจได้ง่ายกว่าวิเคราะห์จากระบบใหญ่ที่ซับซ้อน

2. Pattern Recognition (การจดจำรูปแบบ) เมื่อเราย่อยปัญหาออกเป็นส่วนเล็กๆ ขั้นตอนต่อไปคือการหารูปแบบหรือลักษณะที่เหมือนกันของปัญหาเล็กๆ ที่ถูกย่อยออกมา 

3. Abstraction (ความคิดด้านนามธรรม) คือการมุ่งความคิดไปที่ข้อมูลสำคัญ และคัดกรองส่วนที่ไม่เกี่ยวข้องออกไป เพื่อให้จดจ่อเฉพาะสิ่งที่เราต้องการจะทำ เช่น แม้ว่าแมวแต่ละตัวจะมีลักษณะเหมือนกัน แต่มันก็มีลักษณะเฉพาะตัวที่ต่างกัน เช่น มีตาสีเขียว ขนสีดำ ชอบกินปลาทู  ความคิดด้านนามธรรมจะคัดกรองลักษณะที่ไม่ได้ร่วมกันกับแมวตัวอื่นๆ เหล่านี้ ออกไป เพราะรายละเอียดที่ไม่เกี่ยวข้องเหล่านี้ ไม่ได้ช่วยให้เราอธิบายลักษณะพื้นฐานของแมวในการวาดภาพมันออกมาได้ กระบวนการคัดกรองสิ่งที่ไม่เกี่ยวข้องออกไป และมุ่งที่รูปแบบซึ่งช่วยให้เราแก้ปัญหาได้เรียกว่าแบบจำลอง(model) เมื่อเรามีความคิดด้านนามธรรม มันจะช่วยให้เรารู้ว่าไม่จำเป็นที่แมวทุกตัวต้องหางยาวและมีขนสั้น หรือทำให้เรามีโมเดลความคิดที่ชัดเจนขึ้นนั่นเอง

4. Algorithm Design (การออกแบบอัลกอริทึ่ม) คือการพัฒนาแนวทางแก้ปัญหาอย่างเป็นขั้นเป็นตอน หรือสร้างหลักเกณฑ์ขึ้นมาเพื่อดำเนินตามทีละขั้นตอนในการแก้ไขปัญหา เช่น เมื่อเราต้องการสั่งคอมพิวเตอร์ให้ทำงานบางอย่าง เราต้องเขียนโปรแกรมคำสั่งเพื่อให้มันทำงานไปตามขั้นตอน การวางแผนเพื่อให้คอมพิวเตอร์ทำงานตอบสนองความต้องการของเรานี้เอง ที่เรียกว่าวิธีคิดแบบอัลกอริทึ่ม คอมพิวเตอร์จะทำงานได้ดีเพียงใด ขึ้นอยู่กับชุดคำสั่งอัลกอริทึ่มที่เราสั่งให้มันทำงานนั่นเอง การออกแบบอัลกอริทึ่มยังเป็นประโยชน์ต่อการคำนวณ การประมวลผลข้อมูลและการวางระบบอัตโนมัติต่างๆ

ขั้นตอนวิธี (algorithm)

ขั้นตอนวิธี คือ ลำดับขั้นตอนในการแก้ปัญหาหรือการทำงานที่ชัดเจน การคิดค้น  การอธิบายขั้นตอนวิธีต่าง ๆ มีมาตั้งแต่สมัยโบราณ เช่น ขั้นตอนการบวก ลบ คูณ และหาร ที่พัฒนาโดยนักคณิตศาสตร์ชาวเปอร์เซีย

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

นักคณิตศาสตร์ชาวเปอร์เซียที่พัฒนาการบวก ลบ คูณ และหาร ชื่อว่า อัลควาริชมี (al-Khwarizmi) ชื่อนี้เป็นที่มาของ พีชคณิต (algebra) และ อัลกอริทึม (algorithm

การแยกส่วนประกอบและการย่อยปัญหา (Decomposition)

การแยกส่วนประกอบและการย่อยปัญหา (decomposition) คือ การแยกส่วนประกอบเป็นวิธีคิดรูปแบบหนึ่งของแนวคิดเชิงคำนวณ เป็นการพิจารณาเพื่อแบ่งปัญหาหรืองานออกเป็นส่วนย่อย ทำให้สามารถจัดการกับปัญหาหรืองานได้ง่ายขึ้น เพื่ออธิบายแนวคิดนี้ให้นักเรียนพิจารณารูปจักรยานดังรูป

จักรยานประกอบด้วย ล้อ แฮนด์ โครงจักรยาน ระบบขับเคลื่อน หรืออื่นๆ ถ้ามองในรายละเอียดของล้อจักรยานจะเห็นว่าประกอบด้วย ยางล้อ วงล้อ และซี่ลวด หรือถ้าพิจารณาชุดขับเคลื่อนก็จะพบว่าประกอบด้วยเฟื่อง โซ่ และบันใด เมื่อนำข้อมูลดังกล่าวมาเขียนเป็นแผนภาพจะได้ดังรูป 

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

การหารูปแบบ (pattern recognition)

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

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

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

ในการหารูปแบบนั้น บางครั้งจะพบว่าสิ่งของที่เราสนใจมีรูปแบบบางอย่างปรากฏขึ้นซ้อนกันในตัวเอง ตัวอย่างเช่น ใบเฟิร์นในรูป พบว่ากิ่งย่อยมีรูปแบบไม่แตกต่างจากใบเฟิร์นใบมากนัก ลักษณะการเกิดขึ้นของรูปแบบที่ซ้อนกันเช่นนี้ พบได้ในธรรมชาติทั่วไป

นอกจากการหารูปแบบของสิ่งของแล้ว นักเรียนยังสามารถหารูปแบบที่เหมือนกันของปัญหาได้ด้วยลองพิจารณาการค้นหาข้อมูลภายใต้สถานการณ์ต่อไปนี้ โรงเรียนแห่งหนึ่งมีนักเรียนชั้น ม.4 จำนวน 200 คน ครูได้นำสมุดการบ้านวิชาคณิตศาสตร์มาคืน นักเรียนต้องการค้นหาสมุดของตนเองจากกองสมุดนั้น ในการค้นหา อาจเริ่มจากการพิจารณาสมุดเล่มที่อยู่บนสุด ถ้าพบว่าเป็นสมุดของตนเอง นักเรียนก็สามารถหยิบสมุดเล่มนั้นแล้วจบกระบวนการค้นหา ถ้าไม่ใช่ ก็ต้องค้นหาในกองสมุดที่เหลือต่อไปอีก 199 เล่ม

สังเกตว่าหลังจากพิจารณาสมุดหนึ่งเล่มแล้ว ปัญหาที่เหลืออยู่ก็คงเป็นปัญหาการค้นหาสมุดจากกองสมุดการบ้านเช่นเดิม แต่มีจำนวนสมุดในกองที่ต้องค้นหาน้อยลง นอกจากนี้ เมื่อนักเรียนพิจารณาสมุดเล่มต่อไปและพบว่าไม่ใช้เล่มที่ต้องการอีก แม้ว่าจำนวนสมุดในกองที่ต้องค้นหาจะลดลง แต่ปัญหาที่เหลืออยู่ก็ยังคงเป็นปัญหาที่มีรูปแบบไม่แตกต่างจากปัญหาเดิมเท่าใดนัก

ถ้าใช้แนวคิดแบบแยกองค์ประกอบ นักเรียนจะพบปัญหาการค้นหาสมุดจากกองสมุด 200 เล่มนั้นประกอบด้วยปัญหาย่อยๆ อีกหลายปัญหา คือ ปัญหาการหาสมุดจากกองสมุด 199 เล่ม ปัญหาการหาสมุดจากกองสมุด 198 เล่ม ไปเรื่อยๆ เป็นต้น และปัญหาย่อยเหล่านี้รูปแบบที่เหมือนกัน โดยมีความแตกต่างกันที่จำนวนสมุดเท่านั้น
เมื่อพบว่าปัญหามีรูปที่เหมือนกัน นักเรียนจะสามารถใช้วิธีการแบบเดียวกันในการแก้ปัญหาทั้งหมดได้

ใส่ความเห็น