แนวคิดเชิงคำนวณ
แนวคิดเชิงคำนวณ
แนวคิดเชิงคำนวณ (Computational Thinking)
แนวคิดเชิงคำนวณ เป็นกระบวนการวิเคราะห์ปัญหา เพื่อให้ได้แนวทางการหาคำตอบอย่างเป็นขั้นตอนที่สามารถนำไปปฏิบัติได้โดยบุคคลหรือคอมพิวเตอร์อย่างถูกต้องและแม่นยำ ซึ่งเรียกว่า อัลกอริทึม ทักษะการใช้แนวคิดเชิงคำนวณจึงสำคัญต่อการแก้ปัญหา ช่วยให้สามารถสื่อสารแนวคิดกับผู้อื่นได้อย่างมีประสิทธิภาพ รวมถึงช่วยพัฒนาพื้นฐานในการเขียนโปรแกรมคอมพิวเตอร์ด้วย
แนวคิดเชิงคำนวณมีองค์ประกอบที่สำคัญ 4 ส่วน ได้แก่
1. การคิดแบบแยกส่วนประกอบและการย่อยปัญหา (decomposition)
2. การหารูปแบบของปัญหา (pattern recognition)
3. การคิดเชิงนามธรรม (abstraction)
4. การออกแบบขั้นตอนวิธีในการแก้ไขปัญหา (algorithm)
ขั้นตอนวิธี (Algorithm)
ขั้นตอนวิธี คือ ลำดับขั้นตอนในการแก้ปัญหา หรือการทำงานที่ชัดเจน การคิดค้นขั้นตอนวิธีมีมาตั้งแต่สมัยโบราณ เช่น ขั้นตอนวิธีการบวก ลบ คูณ และหารโดยนักคณิตศาสตร์ชาวเปอร์เซีย ชื่อว่า อัลควาริซมี (al-Khwarizmi) เป็นที่มาของ พีชคณิต (algebra) และ อัลกอริทึม (algorithm)
ตัวอย่างที่ 1.1 วิธีแนะนำหนังสือ
สมมติว่าร้านหนังสือแห่งหนึ่ง มีหนังสือใหม่ 3 เล่ม คือ เวทมนตร์พ่อมดวัยรุ่น การปลูกมะม่วงและกลอนภาษาไทย นอกจากนี้ยังมีหนังสืออื่น ๆ อีกแต่จะพิจารณาเพียง 6 เล่ม คือ หนังสือ A B C D E และ F ร้านหนังสือมีข้อมูลการซื้อหนังสือของลูกค้าจำนวน 5 คน พร้อมด้วยข้อมูลการซื้อหนังสือของนักเรียนชื่อสมพล แสดงดังตารางที่ 1.1
** หมายเหตุ 0 แทน ไม่ซื้อ , 1 แทน ซื้อ
จากข้อมูลดังกล่าว ร้านหนังสือใช้ขั้นตอนวิธีต่อไปนี้เพื่อเลือกหนังสือที่จะแนะนำให้กับสมพล
1. พิจารณาข้อมูลการซื้อหนังสือลูกค้าแต่ละคน
2. เลือกลูกค้าที่มีพฤติกรรมการซื้อหนังสือใกล้เคียงกับสมพลมากที่สุด
3. แนะนำหนังสือใหม่ที่สมพลเลือกซื้อ
การเลือกว่าลูกค้าคนใดมีพฤติกรรมการซื้อใกล้เคียงกับสมพล สามารถพิจารณาได้หลายแบบวิธีหนึ่งที่ง่ายก็คือการพิจารณาความแตกต่างของสถิติการซื้อหนังสือทั้งหมด และนับจำนวนเล่มหนังสือที่ซื้อแตกต่างกัน เช่น ถ้าพิจารณาความแตกต่างระหว่างการซื้อหนังสือของสมพลกับลูกค้าที่ชื่อสมชายจะพบว่า มีหนังสือสองเล่มคือ D และ F ที่สมพลและสมชายซื้อแตกต่างกัน ลูกค้าที่มีพฤติกรรมใกล้เคียงที่สุดคือลูกค้าที่มีความแตกต่างน้อยที่สุด จากข้อมูลข้างต้น สามารถคำนวณค่าความแตกต่างได้ดังตารางที่ 1.2
สังเกตว่าพฤติกรรมการซื้อหนังสือของสมพลใกล้เคียงกับสมศักดิ์มากที่สุด และเนื่องจากสมศักดิ์ซื้อหนังสือ “เวทมนต์พ่อมดวัยรุ่น” ดังนั้นและหนังสือจึงแนะนำหนังสือเวทย์มนต์พ่อมดวัยรุ่นให้กับสมพล
ตัวอย่างที่ 1.2 การหาตัวหารร่วมมาก
การหาตัวหารร่วมมาก (ห.ร.ม.) คือ จำนวนเต็มบวกที่มีค่ามากที่สุดหารจำนวนเต็มทั้งสองจำนวนนั้นลงตัว
ถ้าพิจารณาจากนิยามของ ห.ร.ม. จะพบว่า วิธีการหนึ่งที่สามารถใช้ในการหา ห.ร.ม. ได้ คือ การนำจำนวนเต็มบวกมาหารจำนวนเต็มสองจำนวน โดยเริ่มตั้งแต่การนำ 1, 2, 3, ... ไปเรื่อย ๆ มาหาร จนถึงจำนวนที่น้อยกว่าในสองจำนวนที่ต้องการหา ห.ร.ม. นั้น และในระหว่างการคำนวณ จะต้องจดจำค่าที่มากที่สุดที่หารจำนวนทั้งสองลงตัว เมื่อดำเนินการเสร็จแล้ว จำนวนมากที่สุดที่จดจำไว้คือ ห.ร.ม. วิธีการนี้จะใช้งานได้สะดวกเมื่อจำนวนเต็มทั้งสองจำนวนมีค่าน้อย เช่น 21 กับ 14 ถ้าจำนวนเต็มทั้งสองมีค่ามาก เช่น 221 กับ 18 วิธีการข้างต้นจะใช้เวลานาน เพราะต้องทำการคำนวณทั้งหมด 187 ครั้ง นักเรียนจึงจะได้คำตอบว่า ห.ร.ม. คือ 17
ขั้นตอนวิธีของยุคลิด
1. เขียนจำนวนที่ต้องการหา ห.ร.ม. เรียงต่อกัน
2. ถ้าจำนวนที่น้อยกว่ามีค่าเป็นศูนย์ คำตอบคือจำนวนที่มีค่ามากกว่า และจบการทำงาน
3. ในบรรทัดถัดมา
3.1 เขียนเศษที่ได้จากการหารจำนวนที่มากกว่าด้วยจำนวนที่น้อยกว่า
3.2 คัดลอกจำนวนเต็มที่มีค่าน้อยกว่าลงในบรรทัดเดียวกัน
4. กลับไปทำกระบวนการรอบต่อไปในขั้นตอนที่ 2
ตัวอย่างที่ 1.3 การหา ห.ร.ม. ของ 187 และ 221
จากตัวอย่างที่ 1.3 การหา ห.ร.ม. ด้วยวิธีดังกล่าวใช้การหารเพียง 3 ครั้ง ก็สามารถหาคำตอบที่ต้องการได้ เมื่อเทียบกับวิธีแรกที่ดำเนินการตามนิยามจะเห็นว่าวิธีการหา ห.ร.ม. ของยุคลิดนั้นทำให้ได้ผลลัพธ์เร็วกว่ามาก
การแยกส่วนประกอบและการย่อยปัญหา (decomposition)
การแยกส่วนประกอบ เป็นการพิจารณาเพื่อแบ่งปัญหาหรืองานออกเป็นส่วนย่อย ทำให้สามารถจัดการกับปัญหาหรืองานได้ง่ายขึ้น
จักรยานประกอบด้วย ล้อ แฮนด์ โครงจักรยาน ระบบขับเคลื่อน หรืออื่น ๆ ถ้ามองในรายละเอียดของล้อจักรยานจะเห็น ว่าประกอบด้วย ยางล้อ วงล้อ และซี่ลวด หรือถ้าพิจารณาชุดขับเคลื่อนก็จะพบว่าประกอบด้วยเฟือง โซ่ และบันได เมื่อนำข้อมูลดังกล่าวมาเขียนเป็นแผนภาพจะได้ดังรูป
การแบ่งส่วนประกอบของวัตถุนั้น สามารถพิจารณาให้ละเอียดย่อยลงไปได้อีกหลายระดับ แต่ไม่ควรแยกย่อยรายละเอียดให้มากเกินความจำเป็น ทั้งนี้ให้ขึ้นอยู่กับบริบทที่สนใจ
การแยกส่วนประกอบอาจเป็นขั้นตอนแรกของการพัฒนานวัตกรรม เนื่องจากทำให้เห็นหน้าที่การทำงานของแต่ละส่วนประกอบย่อยอย่างชัดเจน เมื่อพิจารณาส่วนประกอบย่อยต่าง ๆ เหล่านั้นอย่างเป็น อิสระต่อกันแล้ว สามารถนำไปประยุกต์ใช้ในบริบทอื่นได้ เช่น จากการแยกส่วนจักรยาน นักเรียนอาจแยกระบบขับเคลื่อนไปใช้ในการปั่นไฟเพื่อผลิตกระแสไฟฟ้าได้
การหารูปแบบ (Pattern Recognition)
การหารูปแบบเป็นทักษะการหาความสัมพันธ์ที่เกี่ยวข้อง และลักษณะทั่วไปของสิ่งต่าง ๆ จากนั้นอาจใช้ทักษะการแยกส่วนประกอบทำให้ได้องค์ประกอบภายในอื่นๆ แล้ว จึงใช้ทักษะการหารูปแบบเพื่อสร้างความเข้าใจระหว่างองค์ประกอบเหล่านั้น
ตัวอย่างที่ 1.4 เกม “การ์ดดอกไม้”
ให้นักเรียนพิจารณารูปว่าพืชดอกในรูปเป็น “พืชใบเลี้ยงเดี่ยว” หรือ “พืชใบเลี้ยงคู่”
การหารูปแบบอีกประเภทหนึ่ง เป็นการหารูปแบบที่เหมือนและแตกต่างกันระหว่างสิ่งของต่าง ๆ ที่สนใจหลายชิ้น การพิจารณารูปแบบนี้จะช่วยระบุองค์ประกอบสำคัญร่วมกันของสิ่งของเหล่านั้นได้ ซึ่งจะเป็นพื้นฐานในการสร้างความเข้าใจเชิงนามธรรมต่อไป
พิจารณารูปเมาส์แบบต่างๆ จะเห็นเมาส์ที่มีรูปลักษณ์ภายนอกที่แตกต่างกัน แต่สังเกตว่ารูปแบบการใช้งานนั้นเหมือนกัน กล่าวคือ เมาส์สามารถบังคับตำแหน่งตัวชี้ได้โดยการขยับเมาส์ และใช้การกดหรือสัมผัสบนปุ่มเมาส์ในการระบุการกระทำ อย่างไรก็ตามเมาส์ในรูปก็ยังมีความแตกต่างกัน เช่น เมาส์บางแบบมีปุ่มมากกว่าแบบอื่น ในขณะที่บางแบบสามารถใช้การสัมผัสในการสั่งงานได้
การคิดเชิงนามธรรม (Abstraction)
การคิดเชิงนามธรรม คือ กระบวนการคัดแยกคุณลักษณะที่สำคัญออกจากรายละเอียดในโจทย์ปัญหาหรืองานที่กำลังพิจารณา เพื่อให้ได้องค์ประกอบที่จำเป็นเพียงพอ และกระชับที่สุดในการพิจารณาภายใต้สถานการณ์ที่สนใจ
การทำความเข้าใจกับกิจกรรมต่าง ๆ จำเป็นต้องจินตนาการแบบจำลองเหล่านี้ไว้ในใจด้วยเช่นกัน ตัวอย่างเช่น ในการเล่นเกม Pacman หรือเกม Angry Bird
ในเกมทั้งสอง ผู้เล่นต้องเข้าใจว่าการเลือกสั่งงานตัวละครใดจะให้ผลลัพธ์แบบใดบ้าง แม้ว่าผู้เล่นจะไม่ได้คาดการณ์ผลลัพธ์ได้ตรงทุกครั้ง ผลลัพธ์จริงที่ได้จากการเล่นเกม มักจะแตกต่างจากที่คาดการณ์ไว้ไม่มาก เนื่องจากแบบจำลองของเหตการณ์ในเกม