Chapter 01 Problem-Solving Concept แนวคิดการแก้ปัญหา

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
เรื่อง การแก้ไขปัญหาด้วยกระบวนการเทคโนโลยีสารสนเทศ
Advertisements

โดย พัชรี ยันตรีสิงห์ ศึกษานิเทศก์เชี่ยวชาญ สพป.นครปฐม เขต 2
ความสำคัญของงานวิจัย เสนอ รศ.ดร.เผชิญ กิจระการ
การจำลองความคิด รายวิชา ง40102 หลักการแก้ปัญหาและการโปรแกรม
บทที่ ๖ หลักการแก้ปัญหาด้วยคอมพิวเตอร์
ขั้นตอนในการทำวิจัย.
การออกแบบการวิจัยการเขียนเค้าโครงการวิจัย
Research Problem ปัญหาการวิจัย
การเขียนผังงาน.
Teaching procedural skill
ขั้นตอนการพัฒนาโปรแกรม
ภาพรวมของแนวคิดโครงงาน
การแก้ปัญหาด้วยคอมพิวเตอร์
การเรียนรู้โดยใช้ปัญหาเป็นพื้นฐาน
บทที่ 2 หลักการแก้ปัญหา
การพัฒนาการปิด การเจรจาต่อรอง
การพัฒนากิจกรรม การเรียนรู้ โดยโครงงาน
การเขียนรายงานการทดลอง
การเตรียมเอกสาร สอบหัวข้อโครงงาน
การวางแผนและการดำเนินงาน
การจำลองความคิด
แนวคิดเกี่ยวกับการวิเคราะห์เชิงปริมาณ
Surachai Wachirahatthapong
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
ระเบียบวิธีวิจัยพื้นฐานทาง การตลาด
การสร้างแบบทดสอบวัดผลสัมฤทธิ์
ให้ประหยัดการใช้หน่วยความจำ (space) ด้วยความรวดเร็ว (time)
ความหมาย ปัญญาประดิษฐ์
การวัดและประเมินผลตามสภาพจริง
ผังงาน (Flowchart) มหาวิทยาลัยเนชั่น หลักการภาษาชุดคำสั่ง
วิธีการทางคอมพิวเตอร์
คณิตศาสตร์คอมพิวเตอร์
การแก้ปัญหาทางเทคโนโลยีสารสนเทศ
การเขียนผังงาน (Flowchart)
ที่ใช้ใน Object-Oriented Design
บทที่ 2 หลักการแก้ปัญหา
การออกแบบโปรแกรม ขั้นตอนการแก้ปัญหา การนิยามปัญหา (Problem definition)
การแก้ปัญหาด้วยคอมพิวเตอร์
เรื่องหลักการแก้ปัญหา
2.1 วิธีแก้ปัญหาด้วยคอมพิวเตอร์ (Computer problem solving methods)
Lecture 2 แก้ไขปัญหาด้วย OOP (Solving problems using OOP in Java)
Introduction : Principle of Programming
การเขียนเกณฑ์การประเมิน (Rubric)
A Comparison on Quick and Bubble sort on large scale data
การประเมินค่างาน ดร. สุจิตรา ธนานันท์.
การเขียนผังงาน (Flowchart)
Chapter 6 Repetition Structure[1] ผู้สอน อ. ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยี คอมพิวเตอร์เคลื่อนที่ ng.
ปัญหาคืออะไร. การวิเคราะห์ขั้นตอนวิธีการแก้ไขปัญหา รายวิชา การโปรแกรมและการประยุกต์ (ง30222)
งานเทคโนโลยีสารสนเทศ โรงเรียนพนมเบญจา
หลักการแก้ปัญหา
หลักการแก้ปัญหา.
Chapter 6 Repetition Structure[2] ผู้สอน อ. ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยี คอมพิวเตอร์เคลื่อนที่ ng.
Chapter 04 Flowchart ผู้สอน อ.ยืนยง กันทะเนตร
การเขียนซูโดโค้ด และการเขียนโฟลชาร์ต
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
โครงสร้างข้อมูลและขั้นตอนวิธี (Data Structures and Algorithms)
stack #2 ผู้สอน อาจารย์ ยืนยง กันทะเนตร
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
Software ซอฟต์แวร์.
เรื่อง การฟัง ดู คิดและพูด ครูณรงค์ฤทธิ์ ศักดารณรงค์
Chapter 7 Mix problem ผู้สอน อ. ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยี คอมพิวเตอร์เคลื่อนที่ ng.
การจัดเรียงข้อมูล (sorting)
การเขียนผังงาน ผังงาน (Flowchart)
ความรู้เบื้องต้นเกี่ยวกับคอมพิวเตอร์และเทคโนโลยีสารสนเทศ
การออกแบบสื่อเพื่อการศึกษา ADDIE Model
ตรรกะพื้นฐานและการแก้ปัญหา Basic logic and Problem Solving 3(2-2-5)
Chapter 05 Selection structure ผู้สอน อ. ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยี คอมพิวเตอร์เคลื่อนที่ ng.
Computer Program คือ ขั้นตอนการทำงาน ของคอมพิวเตอร์
E-Pedagogy Case-based Learning ดร.ปราวีณยา สุวรรณณัฐโชติ
วิธีการสอนโดยใช้เกม (Game)
ใบสำเนางานนำเสนอ:

Chapter 01 Problem-Solving Concept แนวคิดการแก้ปัญหา ผู้สอน อ.ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยีคอมพิวเตอร์เคลื่อนที่ www.ict.up.ac.th/yeunyong

Overview What is a Problem Problem Solving in Everyday Life Types of Problems Problem Solving with Computer Difficulties with Problem Solving

Objective สามารถอธิบายความแตกต่างปัญหาและวิธีการระหว่างแบบ heuristic และ algorithmic ได้ รู้ขั้นตอนและอธิบายการวิธีการแก้ปัญหาแบบ algorithm ได้ (มี 6 ขั้นตอน) สามารถนำวิธีการแก้ปัญหาทั้ง 6 ขั้นตอนมาประยุกต์ใช้ในการแก้ปัญหาต่างๆ ได้

What is a Problem ในชีวิตประจำวัน เราเจอปัญหาและแก้ปัญหาเป็นประจำ บางปัญหาเป็นปัญหาง่ายๆ เย็นนี้จะทานอะไร ? จะไปออกกำลังกายหรือดูทีวีดี ? บางปัญหาเป็นปัญหายาก จบออกไปแล้วจะทำงานอะไร ? จะเลือกเรียนต่อหรือย้ายสาขาดี ?

ทุกปัญหาต้องมี การตัดสินใจ/หนทางในการหาคำตอบ (make decisions) ถ้าเลือกทางแก้ปัญหาผิด เสียเวลา , เสียทรัพยากร (กำลังใจ,เงิน, ฯลฯ) ดังนั้นในการแก้ปัญหา(ที่ยาก) ควรมีการคิดอย่างเป็นระบบ แบ่งเป็น 6 ขั้นตอน

Problem Solving in Everyday Life Identify the problem (ระบุปัญหาที่เกิดขึ้น) Understand the problem (ทำความเข้าใจกับปัญหาที่เกิดขึ้น) Identify alternative ways to solve the problem (ระบุทางเลือกในการแก้ปัญหา)

Problem Solving in Everyday Life Select the best way to solve the problem from the list of alternative solutions (เลือกวิธีที่ดีที่สุดในการแก้ปัญหาจากทางเลือกต่างๆ) List instructions that enable you to solve the problem using the selected solution (ลำดับขั้นตอนในการแก้ปัญหาจากวิธีที่เลือกไว้) Evaluate the solution (ประเมินวิธีการแก้ปัญหา)

Identify (the problem) สำหรับในชั้นเรียน ปัญหาส่วนใหญ่จะถูกระบุอย่างชัดเจน เช่น การบ้าน, assignment, รายงาน ฯลฯ ในชีวิตประจำวัน ขึ้นอยู่กับหลายปัจจัย สถานการณ์ ตัวบุคคล ฯลฯ

Understand (the problem) เข้าใจปัญหา , ส่วนประกอบต่างๆ ของปัญหา เช่น เราไม่สามารถหาทางเล่นหมากรุกชนะได้ ถ้าเราไม่รู้ว่าหมากรุกเล่นอย่างไร

Identify alternative ways (to solve the problem) ระบุทางเลือกทุกทางที่เป็นไปได้ในการแก้ปัญหานั้น เช่น เย็นนี้จะทำอะไรดี เล่นเกม เล่นกีฬา ดูหนัง ซื้อของ ฯลฯ

Select the best way (to solve the problem) ตัดตัวเลือกที่ไม่สามารถรับได้ออก ใช้เงินเยอะ, ใช้เวลานาน, ฯลฯ วิเคราะห์ข้อดี-ข้อเสียของแต่ละทางเลือก เปรียบเทียบข้อดี-ข้อเสียเพื่อตัดสินใจเลือกทางเลือกที่เหมาะสมที่สุด

List instructions (that enable you to solve the problem) ลำดับขั้นตอนต่างๆ ในการแก้ปัญหา ตามทางเลือกที่เราได้เลือกไว้ เช่น เลือกว่าเย็นนี้จะไปดูหนัง อาบน้ำ กินข้าว ไปดูหนัง ฯลฯ

Evaluate (the solution) ประเมินวิธีการแก้ปัญหา ถ้าไม่ดี อาจต้องมีการปรับเปลี่ยนขั้นตอน หรือเลือกวิธีการแก้ปัญหาวิธีอื่น

Types of Problems ชนิดของปัญหาในโลกแห่งความเป็นจริงนั้นมีหลายรูปแบบมากจนไม่สามารถระบุชนิดได้ จึงทำให้ไม่มีวิธีการแก้ปัญหาที่แน่นอนเสมอไป แต่เราสามารถสรุปวิธีการแก้ปัญหาในชีวิตประจำวันทั้ง 6 ขั้นตอนที่ได้กล่าวมาแล้วนั้น ได้เป็น 2 แบบด้วยกันคือ algorithmic solutions heuristic solutions

algorithmic solutions วิธีการที่มีการปฏิบัติอย่างเป็นลำดับขั้นตอนชัดเจน มีจุดเริ่มต้นตั้งแต่ขั้นตอนแรกไปจนถึงขั้นตอนสุดท้าย เรียกลำดับขั้นตอนในการแก้ปัญหาว่า algorithm มักใช้วิธีนี้ในการแก้ปัญหาที่ไม่ยากมากนัก ส่วนใหญ่มักจะได้ผลลัพธ์ที่ถูกต้อง มีข้อผิดพลาดน้อย ในการแก้ปัญหาทางคอมพิวเตอร์ส่วนใหญ่ใช้วิธีนี้ เช่น ขั้นตอนในการทำแกงฮังเล, ขั้นตอนในการแก้โจทย์ฟิสิกส์

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

Problem Solving with Computer มารู้จักความหมายต่างๆ ของคำศัพท์เหล่านี้ : Solution เป็นชุดรายการคำสั่งหรือวิธีในการแก้ปัญหาที่ให้ผลลัพธ์ที่ดีที่สุด Results คือผลลัพธ์หรือคำตอบที่ได้จากคอมพิวเตอร์ Program คือกลุ่มของคำสั่งที่สร้างขึ้นในรูปแบบโค๊ดหรือภาษาคอมพิวเตอร์เฉพาะต่างๆ

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

Identify and Understand the problem. Identify alternative ways and Select the best Solutions to solve it. List instructions คิด algorithm เขียน flowchart ของ algorithm นั้น เขียน program Evaluate ตรวจสอบ program (debugging) ตรวจสอบ result

Difficulties with Problem Solving คอมพิวเตอร์มีข้อจำกัดในการทำงานมากมาย การเก็บข้อมูล, การใช้งานข้อมูลจำกัด ทำงานได้จำกัด, ทำได้เฉพาะฟังก์ชันพื้นฐาน ทำงานเมื่อสั่ง แยก “ความคิด” ออกจาก “ความจำ” ความคิด -> CPU , ความจำ “Memory” จึงเป็นการยากสำหรับคนที่จะคิดแบบคอมพิวเตอร์

การบ้าน Problem solving มีกี่ขั้นตอน อะไรบ้าง จงอธิบาย Algorithmic solution กับ Heuristic solution คืออะไร มีความแตกต่างกันอย่างไร ให้เลือกปัญหาในชีวิตประจำวันมา 3 อย่าง แล้วเขียน algorithm ในการแก้ปัญหานั้น เช่น การทำแกงส้ม, การซักผ้า, การต้มมาม่า ฯลฯ

Reference Maureen Sprankle, Jim Hubbard. Problem Solving and Programming Concepts, 9/E. Prentice Hall, 2011 ดร. สุชาตรี ประสมสุข. เอกสารประกอบการสอน http://www.ict.up.ac.th/skchatri/ อ.สุวิชยะ รัตตะรมย์. เอกสารประกอบการสอน http://www.ict.up.ac.th/skchatri/suwitchayar