น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

49
โครงสร้างแผนการจัดการเรียนรูรายชั่วโมง สาระการเรียนรู้พื้นฐาน เทคโนโลยีสารสนเทศ ชั้นมัธยมศึกษาปีท5

Upload: -

Post on 07-Jul-2015

3.370 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

โครงสรางแผนการจดการเรยนรรายชวโมง

สาระการเรยนรพนฐาน เทคโนโลยสารสนเทศ

ชนมธยมศกษาปท 5

Page 2: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

หนวยการเรยนรท 1 เทคโนโลยการสอสารการเรยนรท 1วตถประสงคของการจดการขอมล หนวยขอมลและเขตขอมลคย .การเรยนรท 2 ชนดขอมลและประเภทของแฟมขอมลการเรยนรท 3 ลกษณะการประมวลผลขอมลการเรยนรท 4 แฟมโปรแกรมและแฟมขอมล

หนวยการเรยนรท 2 โครงสรางขอมลการเรยนรท 5 ชนดของโครงสรางขอมลการเรยนรท 6 ลกษณะของขอมลการเรยนรท 7 การเรยงล าดบขอมลการเรยนรท 8 การคนหาขอมล

Page 3: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

หนวยการเรยนรท 1 เทคโนโลยการสอสาร

การเรยนรท 1วตถประสงคของการจดการขอมล หนวยขอมลและเขตขอมลคย .

วตถประสงคในการจดการขอมล1. การเกบขอมล ตองเกบขอมลเพอใหสามารถน ากลบมาใชไดในภายหลง

2. การจดขอมล ตองจดขอมลใหอยในรปแบบทสามารถเรยกใชงานไดอยางมประสทธภาพ

3. การปรบปรงขอมล ตองปรบขอมลใหมความถกตองสมบรณอยเสมอ

4. การปกปองขอมล ตองปกปองขอมลจากการท าลาย ลกลอบใช หรอแกไขโดยมชอบ รวมทงปกปองขอมลจากอบตเหตทอาจเกดจากวนาศภย หรอความบกพรองภายในระบบคอมพวเตอรหนวยขอมล (DATA UNITS)

Page 4: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

หนวยของขอมลคอมพวเตอรสามารถจดเรยงเปนล าดบชนเลกไปขนาดใหญไดดงน

1.บต (bit)เลขฐาน 2 หนงหลกซงมคาเปน 0 หรอ 1

2.ตวอกษร (charecter)กลมของบตสามารถแทนคาตวอกษรได ในชดอกขระ ASCII 1 ไบต (

8 บต) แทนตวอกษรตว 1 ตว เชน 01000001 แทนตวอกษร A ในปจจบนมชดอกขระทใชเลขฐานสอง 16 บต แทนคาตวอกษร คอ รหส Unicode เชน 0000 0000 1110 0110 แทนอกษรตว ?

3.เขตขอมล (Field)ซงประกอบดวยกลมตวอกษรทแทนขอเทจจรง

4.ระเบยน (Record)ระเบยน คอโครงสรางขอมลทแทนตววตถชนหนง เชน ระเบยนขอมล

นกศกษาเลขทะเบยน 431999999

Page 5: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

5.แฟม (file)ตารางทเปนกลมของระเบยนทมโครงสรางเดยวกน เชน ตารางการ

สงซอสนคาของลกคา

6.ฐานขอมล (Database)กลมของตาราง (และความสมพนธ)

การเรยงล าดบชนของหนวยขอมลดงนเขตขอมลคย (Key field) คอเขตขอมลทใชส าหรบระบระเบยนขอมลอยางเฉพาะเจาะจงขอมลทอยในเขตขอมลนจะไมซ ากบระเบยนอน ๆ เชน แฟมขอมลพนกงานอาจใชเลขทพนกงานเปนตวระบระเบยบ

Page 6: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การเรยนรท 2 ชนดขอมลและประเภทของแฟมขอมลชนดของขอมล

ขอมลทตองการจดเกบนนอาจจะมรปแบบไดหลายอยาง รปแบบส าคญ ๆ ไดแก

3.1 ขอมลแบบรปแบบ (formatted data) เปนขอมลทรวมอกขระซงอาจหมายถงตวอกษร ตวเลข ซงเปนรปแบบทแนนอน ในแตละระเบยน ทกระเบยนทอยในแฟมขอมลจะมรปแบบทเหมอนกนหมด ขอมลทเกบนนอาจเกบในรปของรหสโดยเมออานขอมลออกมาอาจจะตองน ารหสนนมาตความหมายอกครง เชน แฟมขอมลประวตนกศกษา

3.2 ขอมลแบบขอความ (text)เปนขอมลทเปนอกขระในแบบขอความ ซงอาจหมายถงตวอกษร ตวเลข สมการฯ แตไมรวมภาพตาง ๆ น ามารวมกนโดยไมมรปแบบทแนนอนในแตละระเบยน เชน ระบบการจดเกบขอความตาง ๆ ลกษณะการจดเกบแบบนจะไมตองน าขอมลทเกบมาตความหมายอก ความหมายจะถกก าหนดแลวในขอความ

3.3 ขอมลแบบภาพลกษณ (images) เปนขอมลทเปนภาพ ซงอาจเปนภาพกราฟทถกสรางขนจากขอมลแบบรปแบบรปภาพ หรอภาพวาด คอมพวเตอรสามารถเกบภาพและจดสงภาพเหลานไปยงคอมพวเตอรอนได เหมอนกบการสงขอความ โดยคอมพวเตอรจะท าการแปลงภาพเหลาน ซงจะท าใหคอมพวเตอรสามารถทจะปรบขยายภาพและเคลอนยายภาพเหลานนไดเหมอนกบขอมลแบบขอความ

Page 7: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

3.4 ขอมลแบบเสยง (audio) เปนขอมลทเปนเสยง ลกษณะของการจดเกบกจะเหมอนกบการจดเกบขอมลแบบภาพ คอ คอมพวเตอรจะท าการแปลงเสยงเหลานใหคอมพวเตอรสามารถน าไปเกบได ตวอยางไดแก การตรวจคลนหวใจ จะเกบเสยงเตนของหวใจ

3.5 ขอมลแบบภาพและเสยง (video) เปนขอมลทเปนเสยงและรปภาพ ทถกจดเกบไวดวยกน เปนการผสมผสานรปภาพและเสยงเขาดวยกน ลกษณะของการจดเกบขอมล คอมพวเตอรจะท าการแปลงเสยงและรปภาพน เชนเดยวกบขอมลแบบเสยงและขอมลแบบภาพลกษณะซงจะน ามารวมเกบไวในแฟมขอมลเดยวกน

Page 8: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

ประเภทของแฟมขอมลประเภทของแฟมขอมลจ าแนกตามลกษณะของการใชงานไดดงน

6.1แฟมขอมลหลก (master file)แฟมขอมลหลกเปนแฟมขอมลทบรรจขอมลพนฐานทจ าเปนส าหรบระบบงาน และเปนขอมลหลกทเกบไวใชประโยชนขอมลเฉพาะเรองไมมรายการเปลยนแปลงในชวงปจจบน มสภาพคอนขางคงทไมเปลยนแปลงหรอเคลอนไหวบอยแตจะถกเปลยนแปลงเมอมการสนสดของขอมล เปนขอมลทส าคญทเกบไวใชประโยชน ตวอยาง เชน แฟมขอมลหลกของนกศกษาจะแสดงรายละเอยดของนกศกษา ซงม ชอนามสกล ทอย ผลการศกษา แฟมขอมลหลกของลกคาในแตละระเบยนของแฟมขอมลนจะแสดงรายละเอยดของลกคา เชน ชอสกล ทอย หรอ ประเภทของลกคา

6.2 แฟมขอมลรายการเปลยนแปลง (transaction file)แฟมขอมลรายการเปลยนแปลงเปนแฟมขอมลทประกอบดวยระเบยนขอมลทมการเคลอนไหว ซงจะถกรวบรวมเปนแฟมขอมลรายการเปลยนแปลงทเกดขนในแตละงวดในสวนทเกยวของกบขอมลนน แฟมขอมลรายการเปลยนแปลงนจะน าไปปรบรายการในแฟมขอมลหลก ใหไดยอดปจจบน ตวอยางเชน แฟมขอมลลงทะเบยนเรยนของนกศกษา

Page 9: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

6.3 แฟมขอมลตาราง (table file)แฟมขอมลตารางเปนแฟมขอมลทมคาคงท ซงประกอบดวยตารางทเปนขอมลหรอชดของขอมลทมความเกยวของกนและถกจดใหอยรวมกนอยางมระเบยบ โดยแฟมขอมลตารางนจะถกใชในการประมวลผลกบแฟมขอมลอนเปนประจ าอยเสมอ เชน ตารางอตราภาษ ตารางราคาสนคาตวอยางเชน ตารางราคาสนคาของบรษทขายอะไหลเครองคอมพวเตอรดงน

รหสสนคา รายชอสนคา ราคา51 จอภาพ 4,50052 แปนพมพ 1,20053 แรม 4 M 4,50054 แรม 8 M 7,00055 กระดาษตอเนอง 50056 แฟมคอมพวเตอร 200

ในแฟมขอมลนจะประกอบดวยระเบยนแฟมขอมลตารางของสนคาทมฟลดตางๆ ไดแก รหสสนคา รายชอ สนคา และราคาสนคาตอหนวย แฟมขอมลตารางรายการสนคา จะใชรวมกบแฟมขอมลหลายแฟมขอมลในระบบสนคา ไดแก แฟมขอมลคลงสนคา (inventory master file) แฟมขอมลใบสงซอของลกคา (customer order master file) และแฟมขอมลรายการสตคาของฝายผลต (production master file) มขอควรสงเกตวาแฟมขอมลตาราง แฟมขอมลรายการเปลยนแปลง และแฟมขอมลหลก ทง 3 แฟม จะมฟลดทเกยวกบตวสนคารวมกน คอ ฟลดรหสสนคา (product code) ฟลดรวมกนนจะเปนตวเชองโยงระหวางแฟมขอมลตารางกบแฟมขอมลอน ๆ ทงหมดทตองการจะใชคาของฟดลรายชอสนคา (product description) และราคาสนคา (product price) จากแฟมขอมลตาราง

Page 10: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การจดแฟมขอมลแบบนจะท าใหประหยดเนอทในอปกรณเกบขอมลของแฟมขอมลหลก กลาวคอในแฟมขอมลหลกไมตองม 2 ฟลด คอ ฟลดรายการสนคาและฟลดราคาสนคา มแตเพยงฟลดรหสสนคากเพยงพอแลว เมอใดทตองการใชฟลดรายการสนคาในการแสดงผลกอานคาออกมาจากแฟมขอมลตารางได นอกจากนนยงเปนการลดความซ าซอนของขอมลและเมอผใชระบบตองการเปลยนแปลงรายการสนคาหรอราคาสนคากจะเปลยนในแฟมขอมลตารางทเดยว โดยไมตองไปเปลยนแปลงในแฟมขอมลอน

6.4 แฟมขอมลเรยงล าดบ (sort file)แฟมขอมลเรยงล าดบเปนการจดเรยงระเบยนทจะบรรจในแฟมขอมลนนใหม โดยเรยงตามล าดบคาของฟลดขอมลหรอคาของขอมลคาใดคาหนงในระเบยนนนกได เชน จดเรยงล าดบตาม วนเดอนป ตามล าดบตวอกขระเรยงล าดบจากมากไปหานอยหรอจากนอยไปหามาก เปนตน

แฟมขอมลรายงาน (report file)เปนแฟมขอมลทถกจดเรยงระเบยบตามรปแบบของรายงานทตองการแลวจดเกบไวในรปของแฟมขอมล ตวอยาง เชน แฟมขอมลรายงานควบคมการปรบเปลยนขอมลทเกดขนในขณะปฏบตงานแตละวน

Page 11: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การเรยนรท 3 ลกษณะการประมวลผลขอมลขอมลและการประมวลผลขอมล

ขอมล คอขอเทจจรงทเราสนใจ สวน สารสนเทศ คอขอมลทผานการประมวลผลดวยวธการทเหมาะสมถกตอง จนไดรปแบบผลลพธ ตรงความตองการของผใชขอมลทจะน ามาประมวลผลใหเปนสารสนเทศ จะตองมคณสมบตพนฐานดงตอไปน ความถกตอง หากมการเกบรวบรวมขอมลและขอมลเหลานนเชอถอไมได จะท าใหเกดผลเสยหายมาก ผใชจะไมกลาอางองหรอน าเอาไปใชประโยชน ซงเปนเหตใหการตดสนใจของผบรหารขาดความแมนย า และมโอกาสผดพลาดได โครงสรางขอมลทออกแบบตองค านงถงกรรมวธการด าเนนงานเพอใหไดความถกตองแมนย ามากทสด โดยปกตความผดพลาดของการประมวลผลสวนใหญ มาจากขอมลทไมมความถกตองซงมสาเหตมาจากคนหรอเครองจกร การออกแบบระบบจงตองค านงถงในเรองน ความรวดเรวและเปนปจจบน การไดมาของขอมลจ าเปนตองใหทนตอความตองการของผใช มการตอบสนองตอผใชไดเรว ตความหมายสารสนเทศไดทนตอเหตการณหรอความตองการ มการออกแบบระบบการเรยกคนและรายงาน ตามความตองการของผใช ความสมบรณ ความสมบรณของสารสนเทศขนกบการรวบรวมและวธการทางปฏบต ในการด าเนนการจดท าสารสนเทศ ตองส ารวจและสอบถามความตองการของผใช เพอใหไดขอมลทมความสมบรณเหมาะสม

Page 12: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

ความชดเจนกะทดรด การจดเกบขอมลตองใชพนทในการจดเกบขอมลมาก จงจ าเปนตองออกแบบโครงสรางขอมลใหกะทดรด สอความหมายได มการใชรหสหรอยอขอมลใหเหมาะสม เพอทจะจดเกบเขาไวในระบบคอมพวเตอร ความสอดคลอง ความตองการเปนเรองส าคญ ดงนนจงตองมการส ารวจเพอหาความตองการของหนวยงานและองคการ ดสภาพการใชขอมล ความลกหรอความกวางของขอบเขตขอมล ทสอดคลองกบความตองการ

ในการน าขอมลไปใชประโยชน หรอการท าขอมลใหเปนสารสนเทศ ทจะน าไปใชประโยชนได จ าเปนตองมการประมวลผลขอมลกอน การประมวลผลขอมล เปนกระบวนการทมกระบวนการยอยหลายอยาง ประกอบกนคอการรวบรวมขอมลการแยกแยะการตรวจสอบความถกตองการค านวณการจดล าดบหรอการเรยงล าดบการรายงานผลการสอสารขอมลหรอการแจกจายขอมลนนการประมวลผลขอมล จงเปนกจกรรมทมความส าคญ เพราะขอมลทมอย รอบๆ ตวเรามเปนจ านวนมากในการใชงานจงตองมการประมวลผล เพอใหเกดประโยชน กจกรรมหลกของการใหไดมาซงสารสนเทศ จงประกอบดวยกจกรรมการ เกบรวบรวมขอมล ซงตองมการตรวจสอบ ความถกตองดวย กจกรรมการประมวลผลซงอาจจะเปนการแบงแยกขอมล การจดเรยงขอมล การค านวณ และกจกรรมการเกบรกษาขอมลซงอาจตอง มการท าส าเนา ท ารายงาน เพอแจกจาย

Page 13: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

วธการประมวลผล ม 2 ลกษณะ คอ

(1) การประมวลผลแบบเชอมตรง (online processing)หมายถง การท างานในขณะทขอมลวงไปบนสายสญญาณเชอมตอจากเครองปลายทาง (terminal) ไปยงฐานขอมลของเครองหลกทใชในการประมวลผลการประมวลผลแบบเชอมตรงจงเปนการประมวลผลโดยทนททนใด เชน การจองตวเครองบน การซอสนคาในหางสรรพสนคา การฝากถอนเงนเอทเอม การประมวลผลแบบเชอมตรงจงเปนวธทใชกนมากวธหนง

(2) การประมวลผลแบบกลม (batch processing)หมายถง การประมวลผลในเรองทสนใจเปนครงๆ เชน เมอตองการทราบขอมลผลส ารวจความนยมของประชาชนตอการเลอกตงสมาชกสภาผแทน หรอทเรยกวา โพล (poll) กมการส ารวจขอมลเพอเกบรวบรวมขอมล เมอเกบรวบรวมขอมลไดแลวกน ามาปอนเขาเครองคอมพวเตอร แลวน าขอมล นนมาประมวลผลตามโปรแกรมทไดก าหนดไว เพอรายงานหรอสรปผลหาค าตอบ กรณการประมวลผลแบบกลมจงกระท าในลกษณะเปนครงๆ เพอใหไดผลลพธโดยจะตองมการรวบรวมขอมลไวกอน

Page 14: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การเรยนรท 4 แฟมโปรแกรมและแฟมขอมล

แฟมโปรแกรมและแฟมขอมลถาจะแบงประเภทของแฟมในคอมพวเตอรอกนยหนง อาจแบงเปนแฟม

โปรแกรม และ แฟมขอมล แฟมโปรแกรมประกอบดวยชดค าสงตางๆ ทท างานอยางใดอยางหนงเชน โปรแกรมประมวลค า (word processor) ใชส าหรบพมพเอกสารและจดรปแบบขอความ และโปรแกรมบบอดขอมล (compression utility) ใชส าหรบบบอดขอมลทมขนาดเลกลง เปนตน

แฟมทจดเกบหรอบนทกโดยโปรแกรมเหลาน จดเปนประเภทแฟมขอมล ซงตามปกตจะมสวนขยาย (file extension) เปนตวบอกประเภทเชน เอกสารทสรางดวยโปรแกรมประมวลค า Microsoft Word จะมสวนขยายหลกเปน .doc สวนแฟมขอมลทสรางดวยโปรแกรมบบอดขอมล Winzip จะมสวนขยายเปน .zip เปนตน ทกลาววาสวนขยายหลกหมายความวา โปรแกรมหนงอาจสรางแฟมขอมลทมสวนขยายไดหลายหยาง ตวอยางโปรแกรมลกษณะนไดแก Microsoft Word2000 ซงสามารถสรางแฟมขอมลทมสวนขยายเปน .doc .htm .html .rtf .txt .mcw และ .wps แต จะเปนสวนขยายหลกเปน .doc

Page 15: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

แฟมขอมลบางประเภทสรางและเปดดวยโปรแกรมใดโปรแกรมหนงโดยเฉพาะ เชนแฟมทสรางดวยโปรแกรมแตงภาพ Adobe Photoshop ซงมสวนขยายเปน .psdในขณะทแฟมขอมลบางประเภทเปนประเภททมรปแบบมาตรฐานทสามารถสรางและเปดไดโดยโปรแกรมตางๆ เชน ประเภทแฟม Bitmap ( BMP) Graphics Interchange Format (GIF) และ Joint Photographic Experts Group (JPEG) สามารถสรางและเปดแกไขไดโดย Windows PaintBrush , Adobe Photoshop หรอ Microsoft Photo Editor กได แฟมทมรปแบบมาตรฐานเหลานมประโยชนมากในการแลกเปลยนขอมลระหวางโปรแกรมตางๆ

แฟมโปรคแกรมทประกอบดวยชดค าสงทท างานได ไดแกประเภท .exe , .com , .bat , .dll

Page 16: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

หนวยการเรยนรท 2 โครงสรางขอมล

การเรยนรท 5 ชนดของโครงสรางขอมล

ประเภทของโครงสรางขอมลแบงออกเปน 2 ประเภท คอ

- โครงสรางขอมลทางกายภาพ (Physical Data Structure)

Page 17: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

เปนโครงสรางขอมลทใชโดยทวไปในภาษาคอมพวเตอร แบงออกเปน 2 ประเภท

1.ขอมลเบองตน (Primitive Data Types)- จ านวนเตม (Integer)- จ านวนทศนยม (Floating point)- ขอมลบลน (Boolean)- จ านวนจรง (Real)- ขอมลอกขระ (Character)

2.ขอมลโครงสราง (Structure Data Types)- แถวล าดบ (Array)- ระเบยนขอมล (Record)- แฟมขอมล (File)

Page 18: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

- โครงสรางขอมลทางตรรกะ (Logical Data Structure)

เปนโครงสรางขอมลทเกดจากการจนตนาการของผใช เพอใชในการแกปญหาในโปรแกรมทสรางขน แบงเปน 2 ประเภท1. โครงสรางขอมลแบบเชงเสน (Linear Data Structure)

ความสมพนธของขอมลจะเรยงตอเนองกน- ลสต (List)- สแตก (Stack)- คว (Queue)- สตรง (String)

2. โครงสรางขอมลแบบไมเชงเสน (Non-Linear Data Structure)ขอมลแตละตวสามารถมความสมพนธกบขอมลอนไดหลายตว

- ทร (Tree)- กราฟ (Graph)

Page 19: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

3. การด าเนนการกบโครงสรางขอมล(Data Structure Operation)วธด าเนนการกบขอมลทนยมใชกนมากม 4 แบบ คอ

1. การเขาถงเรคคอรด (Traversing)2. การคนหา (Searching)3. การเพม (Inserting)4. การลบ (Deleting)ยงมการจดการกบขอมลอก 2 อยาง คอ1. การเรยงขอมล (Sorting)2. การรวมขอมล (Merging)4. การแทนทขอมลในหนวยความจ า

มอย 2 วธ คอการแทนทขอมลแบบสแตตก (Static Memory Representation)

เปน การแทนทขอมลทมการจองเนอทแบบคงทแนนอน ตองมการก าหนดขนาดกอนการใชงาน แตมขอเสย คอ ไมสามารถปรบขนาดใหเพมขนหรอลดลงได โครงสรางขอมลทมการแทนทหนวยความจ าหลกแบบสแตตก คอแถวล าดบ (Array)การแทนทขอมลแบบไดนามก (Dynamic Memory Representation)

เปน การแทนทขอมลทไมตองจองเนอท ขนาดของเนอทยดหยนได ตามความตองการของผใช โครงสรางขอมลทมการแทนทหนวยความจ าหลกแบบไดนามก คอ ตวชหรอพอยเตอร (Pointer)

Page 20: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

5. ลกษณะของโปรแกรมแบบทมโครงสรางทด5.1 โครงสรางโปรแกรมแบบค าสงตามล าดบ

เปน โครงสรางพนฐานทประกอบดวยค าสงทวๆไป เปนโครงสรางทมลกษณะการท างานแบบเรยงล าดบ คอ จะท างานตงแตตนจนจบโดยไมมการขามขนตอนใดๆ5.2 โครงสรางโปรแกรมแบบมการตดสนใจ (Decision)

ม การตรวจสอบเงอนไข เพอตดสนใจวาจะท าการประมวลผลสวนใด โดยผลลพธของเงอนไขจะมคาของความเปนไปไดอย 2 ลกษณะ คอ จรงและเทจ เทานน5.3 โครงสรางโปรแกรมแบบเปนวงจรปด (Loop)

มลกษณะการท างานซ าๆกน อยในสวนใดสวนหนงของโปรแกรม6. อลกอรทม (Algorithm)

อลกอรทม คอ วธการแกปญหาตางๆ อยางมระบบ มล าดบขนตอนตงแตตนจนไดผลลพธ สามารถเขยนไดหลายแบบ การเลอกใชตองเลอกใชขนตอนวธทเหมาะสม กระชบ และรดกมอลกอรทมทนยมใชกนมาก ไดแก1. อลกอรทมแบบแตกยอย (Divide and conquer)2. อลกอรทมแบบเคลอนท (Dynamic Programming)3. อลกอรทมแบบทางเลอก (Greedy Algorithm)

Page 21: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การเขยนผงงาน (Flowchart)Flow Chart เปนการอธบายขนตอนการประมวลผลโดยใชสญลกษณในการ

แสดงความหมาย การใชกรอบรปสญลกษณทสอความหมาย อธบายขนตอนการท างานการเขยนรหสเทยม (Pseudo Code)

Pseudo Code การอธบายขนตอนการประมวลผลโดยใชวลภาษาองกฤษในการแสดงอธบาย ใชค าสนๆ กะทดรด อธบายขนตอนการท างานของโปรแกรม

พฒนาการของภาษาโปรแกรม- ภาษาเครอง (Machine Language)- ภาษาแอสเซมบล (Assembly Language)- ภาษาระดบสง (High Level Language)- ภาษายคท 4 (Fourth Generation Language หรอ 4GL)การบ ารงรกษาโปรแกรม (Program Maintenance)

หมาย ถง การแกไขขอผดพลาดทพบระหวางการทดสอบหรอระหวางการใชงาน ซงอาจเปนการเปลยนขอมลทตองการใชใหมการปรบปรงขอมล ใหทนเหตการณอยเสมอ การปรบเปลยนโครงสรางบนหนาจอ เปนตน

Page 22: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การเรยนรท 6 ลกษณะของขอมล

ลกษณะของขอมลทดขอมลทดควรเปนขอมลทมคณลกษณะดงตอไปน• ขอมลทมความถกตองและเชอถอได (accuracy) ขอมลจะมความถกตองและเชอถไดมากนอยเพยงใดนน ขนกบวธการทใชในการควบคมขอมลน าเขา และการควบคมการประมวลผลการควบคมขอมลน าเขาเปนการกระท าเพอใหเกดความมนใจวาขอมลน าเขามความถกตองเชอถอได เพราะถาขอมลน าเขาไมมความถกตองแลวถงแมจะใชวธการวเคราะหและประมวลผลขอมลทดเพยงใด ผลลพธทไดกจะไมมความถกตอง หรอน าไปใชไมได ขอมลน าเขาจะตองเปนขอมลทผานการตรวจสอบวาถกตองแลว ขอมลบางอยางอาจตองแปลงใหอยในรปแบบทเครองคอมพวเตอรสามารถเขาใจไดอยางถกตอง ซงอาจตองพมพขอมลมาตรวจเชคดวยมอกอน การประมวลผลถงแมวาจะมการตรวจสอบขอมลน าเขาแลวกตาม กอาจท าใหไดขอมลทผดพลาดได เชน เกดจากการเขยนโปรแกรมหรอใชสตรค านวณผดพลาดได ดงนนจงควรก าหนดวธการควบคมการประมวลผลซงไดแก การตรวจเชคยอดรวมทไดจากการประมวลผลแตละครง หรอการตรวจสอบผลลพธทไดจากการประมวลผลดวยเครองคอมพวเตอรกบขอมลสมมตทมการค านวณดวยวามความถกตองตรงกนหรอไม• ขอมลตรงตามความตองการของผใช (relevancy) ไดแก การเกบเฉพาะขอมลทผใชตองการเทานน ไมควร เกบขอมลอน ๆ ทไมจ าเปนหรอไมเกยวของกบการใชงาน เพราะจะท าใหเสยเวลาและเสยเนอทในหนวยเกบขอมล แตทงนขอมลทเกบจะตองมความครบถวนสมบรณดวย• ขอมลมความทนสมย (timeliness) ขอมลทดนนนอกจากจะเปนขอมลทมความถกตองเชอถอไดแลวจะ ตองเปนขอมลททนสมย ทงนเพอใหผใชสามารถน าเอาผลลพธทไดไปใชไดทนเวลา นนคอจะตองเกบขอมลไดรวดเรวเพอทนความตองการของผใช

Page 23: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การเรยนรท 7 การเรยงล าดบขอมลการเรยงล าดบขอมลการเรยงล าดบขอมลเปนเรองส าคญมากเรองหนงเนองจากท าใหผตองการใชขอมลเชน ผบรหาร,ผปฏบตงาน (พนกงาน) สามารถท าความเขาใจกบขอมลหรอท าการคนหาขอมลไดงายและเรวยงขนตามทตองการประเภทของการจดการจดเรยงขอมลในระบบคอมพวเตอร แบงเปน 2 ประเภทคอ

1. Internal Sorting คอ การเรยงล าดบขอมลโดยเกบไวในหนวยความจ าหลก และขอมลของสมาชกจะถกเกบ อยในโครงสรางอะเรย

2. External Sorting คอ การเรยงล าดบขอมลโดยเกบไวในหนวยความจ าส ารอง ขอมลสวนใหญมจ านวนมาก จงไม สามารถเกบไวในหนวยความจ าหลกไดทงหมดในหวขอการเรยงล าดบ นจะอธบายวธการเรยงล าดบขอมลในแตละวธโดยสรปอยางยอ ๆ เพอใชเปนแนวทางในการศกษาใน ระดบชนสงขนไป คงจะไมไดกลาวถงวธการขนตอนในการจดเรยงอยางละเอยดแตจะพยายามชใหเหนถงจดเดนตาง ๆ ของการจด เรยงล าดบในแตละวธวธหรอชนดของการเรยงล าดบ มวธตาง ๆ ทมกจะไดพบโดยทวไปดงน1. SELECTION SORT2. INSERTION SORT / LINEAR INSERTION SORT3. BUBBLE SORT4. SHELL SORT5. BUCKET SORT /RADIX SORT6. QUICK SORT7. HEAP SORT / TREE SORT

Page 24: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

1. การเรยงล าดบแบบเลอก (Selection Sort)เปนวธทงายทสดในการเรยงล าดบขอมล โดยเรมจาก

- หาต าแหนงของขอมลทมคานอยทสดแลวสลบคาของต าแหนงขอมลนนกบคาขอมลในต าแหนง A(1) จะได A(1) มคานอยทสด

- หาต าแหนงของขอมลทมคานอยทสดในกลม A(2), A(3),....,A(n) แลวท ากบสลบคาขอมลในต าแหนง A(2) อยางนเรอยไปจน กระทงไมเกน N-1 รอบ กจะไดขอมลทเรยงล าดบจากนอยไปมาก2. การเรยงล าดบแบบแทรก (Insertion Sort)หลกการ คอ

1. อานขอมลทตองการเรยงล าดบเขามาทละตวโดยเรมจากตวแรกกอน และหาต าแหนงของขอมลทควรจะอย

2. หาทวางส าหรบขอ 1.3. Insert หรอแทรกขอมล ณ ต าแหนงในขอ 2.

3. การเรยงล าดบแบบบบเบล (Bubble Sort)วธการเรยงล าดบแบบบบเบลจะท าการเปรยบเทยบขอมลทอยในต าแหนงทตดกน ถาขอมลไมอยใล าดบทถกตอง กจะท าการสลบต าแหนงของขอมลทเปรยบเทยบโดยทการเปรยบเทยบจะเรมทต าแหนงท 1 กบต าแหนงท 2 กอน ตอไปนเทยบกบ ต าแหนงท 2 และต าแหนงท 3 จนถงต าแหนงทจดเรยงแลว จากนนจะกลบไปเรมตนการเปรยบเทยบอกจนกระทงจดเรยง เรยบรอยหมดทกต าแหนงในวธแบบ Bubble Sort คาในการเปรยบเทยบทนอยทสดหรอมากทสด จะลอยขนขางบน เหมอนกบฟองอากาศ

Page 25: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

4. การรยงล าดบแบบเชลล(shell sort)เปนรปแบบของการ sort ขอมลโดยการน าเอาขอดของการคนหาขอมลแบบ แทรกและแบบเลอกและหลกเลยง การเกดปญหาของทงแบบแทรกและแบบเลอก ซงการเปรยบเทยบขอมลในการเรยงล าดบแบบแทรก โดยการเปรยบเทยบ ขอมลทอยไกลออกไป ซงจะท าใหเราสามารถเรยงดบขอมลในต าแหนงทอยไกลออกไปหลงจากนนกจะเรยงล าดบขอมล ทอยใกลกนเขามา(กวาในครงแรก) และความหางของขอมลทเปรยบเทยบกจะนอยลงจนเหลอ 1วธนคดคนเมอป ค.ศ.1959 โดย ด.แอล.เชลล(D.L.SHELL) เรยกวา การเรยงล าดบแบบเชลล(shell sort)5. การเรยงล าดบโดยการใชฐานเลข(radix sort)การเรยงล าดบแบบนการเรยงล าดบ จะอยบนพนฐานของการแทนต าแหนงของตวเลขทตองการน ามาเรยงล าดบ จะเรมจากตวทมเลขนยส าคญสงทสด ด าเนนจนกระทงถงตวเลขทมเลขนยส าคญต าสด การเรยงล าดบในวธนการเรยงล าดบ จะเรยงจากตวเลขทมนยส าคญนอยทสดกอน เมอตวเลขทงหมดถกน ามาเรยงล าดบตามเลขนยส าคญทสงขน ตวเลขทเหมอนกน ในต าแหนงนน จะตางกนในต าแหนงของเลขนยส าคญทนอยกวา การประมวลผลแบบนจะประมวลผลกบขอมลทงหมดได โดยทไมตองมการแบงขอมลแบบกลมยอย

Page 26: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

6. การเรยงล าดบอยางเรว(quick sort)ถกสรางและตงชอโดย ซ.เอ.อาร.ฮารเวร (C.A.R HOARE) การเรยงล าดบอยางเรว จะแบงขอมลเปนสองกลม โดยใน การจดเรยงจะเลอกขอมลตวใดตวหนงออกมา ซงจะเปนตวทแบงขอมลออกเปนสองกลม โดยกลมแรกจะตองมขอมลนอยกวา ตวแบง และกลมทมขอมลนอยกวาตวแบง และอกกลมจะมขอมลทมากกวาตวแบง ซงเราเรยกตวแบงวา ตวหลก(pivot) ในการเลอกตวหลกจะมอสระในการเลอกขอมลตวใดกไดทเราตองการ การเรยงล าดบแบบเรวเหมาะกบขอมลทมการเรยกซ า

7.การเรยงล าดบฮพ(heapsort)เปนการเรยงล าดบทอยบนพนฐานบนพนฐานของโครงสรางแบบไบนาร จะด าเนนการ 2 ขนตอน คอ1. การจดขอมลในอะเรยใหสอดคลองกบความตองการของฮพ2. การขจดหนอการเคลอนยายขอมลในต าแหนงสงสดหรอต าแหนงยอดของของฮพออกไปและสนบสนนขอมลขอมล ตวอนไปแทนต าแหนงนน

Page 27: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การเรยนรท 8 การคนหาขอมลการคนหาขอมล (searching)

การคนหาค าตอบ หรอการคนหาขอมลในทางคอมพวเตอรมกจะกระท าบนโครงสรางขอมลแบบตนไม และกราฟ ทงนเพราะโครงสรางขอมลในลกษณะนสามารถท าใหการคนหาท าไดสะดวกและสามารถพลกแพลงการคนหาไดงาย ในความเปนจรงแลว การคนหาขอมลบางครงสามารถกระท าบนโครงสรางขอมลชนดอนกไดเชน อาเรย แสตก และคว แตการจดขอมลในโครงสรางเชนน มขอจ ากดในการคนหาขอมลมาก การคนหาท าไดแบบเรยงล าดบ(Sequencial Search) เทานน ซงใชไดกบขอมลทมขนาดเลก ดงนนในการคนหาขอมลทมขนาดใหญ กอนการคนหา หรอระหวางการคนหา ขอมลทจะถกคนจะตองถกจดใหอยในรปแบบของตนไม หรอกราฟเทานน การคนหาขอมลบนโครงสรางตนไมและกราฟสามารถจ าแนกได 2 แบบคอ การคนหาแบบไบลด(Blind Search) และการคนหาแบบฮวรสตก(Heuristic Search)

Page 28: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การคนหาแบบไบลด(Blind Search)การคนหาแบบไบลด(Blind search) เปนการคนหาแบบทเดนทางจากโหนดหนงไปยง

อกโหนดหนง โดยอาศยทศทางเปนตวก าหนดการคนหา ไมตองมขอมลอะไรมาชวยเสรมการตดสนใจวาจะเดนทางตอไปอยางไร หรอกลาวอยางงาย ๆ คอการจะหยบขอมลใดมาชวยในการคนหาตอไป ไมตองอาศยขอมลใด ๆ ทงสน นอกจากทศทางซงเปนรปแบบตายตว การคนหาแบบไบลดสามารถแบงยอยไดดงน คอ การคนหาทหมด และการคนหาบางสวน

- การคนหาทงหมด(exhaustive search) คอ การคนหาทงหมดของปรภมสถานะ- การคนหาบางสวน (partial search) การคนหาเพยงบางสวนของปรภมสถานะ ซงใน

ความเปนจรงการคนหาสวนมากใชการคนหาเฉพาะบางสวนเทานนเนองจากปรภมสถานะมกมขนาดใหญ เทาใหไมสามารถคนหาไดทงหมด ดงนนจงมความเปนไปไดวาค าตอบทไดอาจไมใชค าตอบทดทสด การคนหาแบบนสามารถแบงไดเปน 2 ประเภทคอ การคนหาแบบลกกอน(Depth first search) และการคนหาแบบกวางกอน (Breadth first search)

การคนหาแบบลกกอน(Depth first search)การคนหาแบบลกกอนเปนการคนหาทก าหนดทศทางจากรปของโครงสรางตนไม ท

เรมตนจากโหนดราก(Root node) ทอยบนสด แลวเดนลงมาใหลกทสด เมอถงโหนดลางสด(Terminal node) ใหยอนขนมาทจดสงสดของกงเดยวกนทมกงแยกและยงไมไดเดนผาน แลวเรมเดนลงจนถงโหนดลกสดอก ท าเชนนสลบไปเรอยจนพบโหนดทตองการหาหรอส ารวจครบทกโหนดแลวตามรปท 1 การคนหาแบบลกกอนจะมล าดบการเดนตามโหนดดงตวเลขทก ากบไวในแตละโหนด

Page 29: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

รปท 1 ล าดบการเดนทางบนโหนดของการคนหาแบบลกกอนบนโครงสรางตนไม

ดงทไดกลาวมาแลววา โครงสรางขอมลทใชส าหรบการคนหานสามารถใชกบโครงสรางกราฟไดดวย โดยอาศยหลกการเดยวกน แตส าหรบการเดนทางบนกราฟนนจะไมมโหนดลกสดดงนนการเดนทางบนกราฟจะตองปรบวธการเปนดงน โดยเรมจากโหนดเรมตน จากนนใหน าโหนดทอยตดกบโหนดทก าลงส ารวจอย(ทยงไมไดท าการส ารวจและยงไมไดอยในแสตกมาใสแสตก) มาเกบไวในสแตกเมอส ารวจโหนดนนเสรจ ใหพอพ(pop) ตวบนสดของโหนดออกมาท าการส ารวจ แลวน าโหนดขางเคยงทงหมดทยงไมไดส ารวจมาตอทายแสตก แลวพอพตวบนสดออกมาส ารวจ ท าเชนนเรอย ๆ จนกระทงพบโหนดทตองการ หรอส ารวจครบทดโหนด

Page 30: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

รปท 2 โครงสรางขอมลแบบกราฟ

การส ารวจจะเรมตนท A และน าโหนดขางเคยง B และ C มาเกบไวในแสตก เมอส ารวจ Aเสรจพอพขอมลจากแสตกออกมาได C ท าการส ารวจ C และน าโหนดขางเคยงกบ C ทยงไมไดท าการส ารวจและยงไมไดอยในแสตกมาใสแสตก Dและ Fพช(Push) ใสแสตก ดงนนในแสตกตอนนม B D F อย เมอส ารวจ C เสรจพอพFออกมาท าการส ารวจ แลวน าโหนดขางเคยงทยงไมไดส ารวจและยงไมไดอยในแสตกมาใสแสตก ซงกคอ G ดงนนขอมลในแสตกจะเปน B D G ท าเชนนไปเรอย ๆ จนจบการท างานกจะไดล าดบการส ารวจคอ (A C F G H E D B) ตามตาราง 1 ดงตอไปน

ตารางท 1 ล าดบการคนหาแบบลกกอน

Page 31: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

ในการคนหาขอมลแบบนบนโครงสรางของกราฟ มขอทนาสงเกตคอ โหนดทเรมตนการส ารวจจะตองมการก าหนดมาใหวาโหนดใดเปนโหนดเรมตน และขอสงเกตอกประการหนงคอวธการคนหาแบบลกกอนทใชส าหรบโครงสรางขอมลแบบกราฟ สามารถใชกบโครงสรางขอมลแบบตนไมไดดวย

การคนหาแบบกวางกอน (Breadth first search)การคนหาแบบกวางกอนเปนการก าหนดทศทางการคนหาแบบทละระดบของ

โครงสรางตนไมโดยเรมจากโหนดราก(ระดบท 0) แลวลงมาระดบท 1 จากซายไปขวา เมอเสรจระดบท 1 ไประดบท 2จากซายไปขวาเชนกน ท าเชนนเรอย ๆ จนพบโหนดทตองการตามรปท 3 ล าดบการเดนทางของโหนดเปนไปตามหมายเลขทก ากบไวบนโหนด

รปท 3 ล าดบการคนหาแบบกวางกอนบนโครงสรางตนไม

Page 32: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

ส าหรบการคนหาแบบกวางกอนบนโครงสรางตนไม จะอาศยโครงสรางขอมลแบบคว(Queue)มาชวย และดวยวธการเชนเดยวกบการคนหาแบบลกกอนคอ ใหเรมตนส ารวจทโหนดเรมตน แลวน าโหนดขางเคยงเกบไวในคว เมอส ารวจโหนดเรมตนเสรจ ใหน าขอมลในควออกมาส ารวจ แลวน าโหนดขางเคยงทยงไมไดส ารวจและไมไดอยในควใสควไว ท าเชนนไปเรอย ๆ จนพบโหนดทตองการ หรอเมอส ารวจครบทกโหนด

รปท 4 โครงสรางขอมลแบบกราฟ

Page 33: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การส ารวจเรมตนท A น าโหนดขางเคยง B C ไวในคว เมอส ารวจ A เสรจ น าขอมลในคว คอ Bออกมาส ารวจ แลวน าขอมลขางเคยงคอ D E ใสคว ตอนนควจะม B D E อย แลวน า B ออกมาส ารวจท าเชนนเรอย ๆ จะไดล าดบการส ารวจขอมลคอ (A B C D E F G H) ตามตารางท 2

ตาราง 2 ล าดบการคนหาแบบกวางกอน

เชนเดยวกบการคนหาแบบลกกอน การคนหาแบบกวางกอนโดยใชโครงสรางขอมลควมาชวยตองมการก าหนดโหนดเรมตน และวธการนสามารถใชไดกบขอมลบนโครงสรางแบบตนไมดวย

Page 34: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

ตารางเปรยบเทยบ การคนหาแนวลกกอนและแนวกวางกอน

การคนหาแนวลกกอน การคนหาแนวกวางกอน1.ใชหนวยความจ านอยกวา เพราะวาสถานะในเสนทางคนหาปจจบนเทานนทถกเกบ(ในขณะใดๆ จะเกบเสนทางเดยว พอจะไปเสนทางอนเสนทางทผานมากไมจ าเปนตองเกบ)

1.ใชหนวยความจ ามากเพราะตองเกบสถานะไวทกตวเพอหาเสนทางจากสถานะเรมตนไปหาค าตอบ

2. อาจจะตดเสนทางทลกมากโดยไมพบค าตอบ เชนในกรณทเสนทางนนไมมค าตอบและเปนเสนทางทยาวไมสนสด จะท าไมสามารถไปเสนทางอนได

2. จ าไมตดเสนทางทลกมาก ๆ โดยไมพบค าตอบ

3. ถาค าตอบอยในระดบ n+1สถานะอนทกตวทระดบ 1ถงระดบ n ไมจ าเปนตองถกกระจายจนหมด

3. ถาค าตอบอยในระดบn+1 สถานะทกตวทระดบ 1ถงระดบ n จะตองถกกระจายจนหมด ท าใหมสถานะทไมจ าเปนในเสนทางทจะไปสค าตอบถกกระจายออกดวย

4. เมอพบค าตอบไมสามารถรบประกนไดวาเสนทไดเปนเสนทางทสนทสดหรอไม

4. ถามค าตอบจะรบประกนไดวาจะพบค าตอบแน ๆ และจะไดเสนทางสนทสดดวย

Page 35: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การคนหาแบบฮวรสตก(Heuristic Search)

การคนหาค าตอบอาศยวธการทางฮวรสตก (heuristic search) มความความแตกตางจากการคนหาขอมลแบบธรรมดาและแบบฮวรสตกนนอยทการคนหาขอมลธรรมดา ผทท าการคนขอมลจะตองตรวจสอบขอมลทละตวทกตวจนครบ แตฮวรสตกจะไมลงไปด ขอมลทกตว วธการนจะเลอกไดค าตอบทเหมาะสมใหกบการคนหา ซงมขอดคอ สามารถท าการ คนหาค าตอบจาก ขอมลทมขนาดใหญมาก ๆ ได แตมขอเสยคอค าตอบทไดเปนเพยงค าตอบทด เทานนไมแนวาจะดทสด แตเนองจากวาปญหาในบางลกษณะนนใหญมาก และเปนไปไมไดทจะท า การคนหาดวยวธ ธรรมดากระบวนการของฮวรสตกจงเปนสงทจ าเปนในเรองของฮวรสตกนน นอกจากจะมการคนหาแบบฮวรสตกแลว ยงมอกสงหนงทส าคญคอ ฮวรสตกฟงกชน (heuristic function) ซงหมายถงฟงกชนทท าหนาทในการวดขนาดของความเปน ไปไดในการแกปญหาซงจะแสดงดวยตวเลข วธการดงกลาวจะกระท าไดโดยการพจารณาถงวธการ (aspects) ตาง ๆ ทใชในการแกปญหา ณ สถานะหนงวาจะสามารถแกปญหาไดตามทตองการหรอไม โดยก าหนดเปนน าหนกทใหกบการแกปญหาของแตละวธ น าหนกเหลานจะถกแสดงดวยตวเลขทก ากบไวกบโหนดตาง ๆ ในกระบวนการ คนหา และคาเหลานจะเปนตวทใชในการประมาณความเปนไปไดวาเสนทางทผานโหนดนนจะม ความเปนไปไดในการน าไปสหนทางการแกปญหาไดมากนอยแคไหน

Page 36: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

จดประสงคทแทจรงของฮวรสตก ฟงกชนกคอ การก ากบทศทางของกระบวนการคนหา เพอใหอยในทศทางทไดประโยชนสงสด โดยการบอกวาเราควรเลอกเดนเสนทางไหนกอน ในกรณทมเสน ทางมากกวาหนงเสนทางตองเลอกกระบวนการคนหาแบบฮวรสตก โดยปกตแลวจะตองอาศยฮวรสตกฟงกชน ท าใหการแกปญหาหนง ๆ จะดหรอไม กขนอยกบฮวรสตกฟงกชนดงนนการคนหาแบบนจงไมมอะไรเปนหลกประกนวาจะไดสงทไมดออกมาดวยเหตนเอง เราจงเรยกการ คนหาแบบฮวรสตกนวา Weak Methods หรอจะกลาวอกนยหนงคอ Weak Methodsเปนกระบวนการควบคมโดยทวไป (general-purpose control stategies) ซงการคนหาแบบน สามารถแบงไดเปน

Page 37: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การคนหาแบบปนเขา(Hill climbing)ฟงกชนฮวรสตกสามารถน ามาชวยในกระบวนการคนหาเพอใหไดค าตอบอยางรวดเรว

และมประสทธภาพ วธการทจะน าฟงกชนฮวรสตกมาใชมหลายวธดวยกนขนอยกบวาจะใชในลกษณะใด เชนเลอกสถานะทมคาฮวรสตกดขน แลวเดนไปยงสถานะนนเลยโดยไมตองสนใจสถานะทมคาฮวรสตกแยกวาสถานะปจจบนหรอวาจะเกบสถานะทกตวไวแมวาคาฮวรสตกจะแยลงแลวพจารณาสถานะเหลานทหลง เปนตน ในสวนตอไปนจะกลาวถงอลกอรทมตาง ๆ ทน าฟงกชนฮวรสตกมาชวยในการคนหาค าตอบ โดยเรมจากอลกอรทมปนเขา (Hill climbing algorithm)

รปท 5 แสดงลกษณะการคนหาแบบ Hill climbing

การคนหาแบบฮลไคลบง(Hill climbing) เปนวธการคนหาขอมลทมลกษณะคลายกบการปนภเขา การทนกปนภเขาจะเดนทางไปถงยอดภเขา นกปนเขาจะตองมองกอนวายอดเขาอยทใด แลวนกปนเขาจะตองพยายามไปจดนนใหได ลองนกภาพของการปนภเขาโลนทมองเหนแตยอด และนกปเขาก าลงปนภเขาอยเบองลางทมเสนทางเตมไปหมด เพอทจะเดนทางไปถงยอดภเขาโดยเรวทสด นกปนเขาจะมองไปทยอดเขาแลวสงเกตวาทศทางใดทเมอปนแลวจะยงใกลยอดเขา และหลกเลยงทศทางทเมอไปแลวจะท าใหตวเองหางจากยอดเขา นกปนเขาจะตองท าเชนนไปเรอย ๆ จนกระทงถงยอดเขา

Page 38: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

ตวอยางการใชฟงกชนฮวรสตก โดยอลกอรทมปนเขาอยางงายโดยปญหาโลกของบลอก

รปท 6 การคนหาแบบ Hill climbing

Page 39: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

ตวเลข h(i) ในรปแสดงวา สถานะท i มคาฮวรสตกเทากบ h จากรจะเหนไดวา เรมตนจากสถานะท 1 ทมคาฮวรสตกเทากบ -1 อลกอรทมปนเขาใชตวกระท าการเพอสรางสถานะลกตวแรกของสถานะท 1 แลววดคาฮวรสตกได 0 ซงมคาดขน ถาสงเกตจากรปท จะพบวาสถานะท 1 มสถานะลกทงหมด 3 ตว แตในกรณของอลกอรทมปนเขาน เมอไดสถานะลกตวแรกซงมคาอวรสตกดขน อลกอรทมจะไมสรางสถานะลกทเหลออก 2 ตว และจะไมยอนกลบมาทสถานะลกทง 2 น แมวาหลงจากนอลกอรทมจะคนไมพบค าตอบกลาวคอเปนการตดทางเลอกทง ซงการท าเชนนแมวาจะมโอกาสไมพบค าตอบแตกมขอดทเปนการชวยลดเวลาอยางมาก จากนนอลกอรทมมาสถานะท 2 แลวเรมสรางสถานะลกไดสถานะท 3 ทมคาฮวรสตก -1 ซงแยลงในกรณทแยลงเชนน อลกอรทมจะไมไปยงสถานะลกตวนและสรางสถานะลกตวตอไปโดยใชตวกระท าการทเหลอไดสถานะท 4 มคาฮวรสตกเทากบ -1 ไมดขนเชนกนจงสรางสถานะลกตวถดไป เปนสถานะท5 มคาฮวรสตกเทากบ 1 เปนคาทดขน อลกอรทมจะมายงสถานะนและคนพบค าตอบในทสด

อลกอรทมปนเขานจะมประสทธภาพมากดงเชนแสดงในตวอยางนซงกระจายสถานะทงสนเพยง 6 ตวแลวพบค าตอบ เปรยบเทยบกบอลกอรทมการคนหาแนวกวางกอนซงใชสถานะทงสนถง 11 ตว อยางไรกดอลกอรทมนจะมประสทธภาพมาก ถาใชฟงกชนฮวรสตกทดมาก ๆ ในกรณทฟงกชนฮวรสตกไมดนก อลกอรทมนกอาจหลงเสนทางได และอาจไมพบค าตอบแมวาปรภมทก าลงคนหามค าตอบอยดวยกตาม สาเหตการหลงเสนทางประการหนงมาจากการเลอกสถานะลก ซงอลกอรทมจะไมไดพจารณาสถานะลกทกตวโดยเมอพบสถานะลกตวใดทดขนกจะเลอกทางนน อลกอรทมนสามารถดดแปลงเลกนอยใหพจารณาสถานะลกทกตวใหครบกอน แลวเลอกสถานะลกตวทมคาฮวรสตกสงสด เมอท าเชนนกจะท าใหอลกอรทมไดพจารณาเสนทางทดทสด ณ ขณะหนง ๆ ไดดขนเราเรยกอลกอรทมทดดแปลงนวาอลกอรทมปนเขาชนสด (Steepest ascent hill climbing)

Page 40: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การคนหาดสดกอน(Best-first search)เปนกระบวนการคนหาขอมลทไดน าเอาขอดของทงการคนหาแบบลกกอน(Depth

firstsearch) และการคนหาแบบกวางกอน(Breadth first search) มารวมกนเปนวธการเดยว โดยทแตละขนของการคนหาในโหนดลกนน การคนหาแบบดทดกอนจะเลอกเอา โหนดทดทสด (most promising)และการทจะทราบวาโหนดใดดทสดนสามารถท าไดโดยอาศยฮวรสตกฟงกชน ซงฮวรสตก ฟงกชนนจะท าหนาทเหมอนตววดผล และใหผลของการวดนออกมาเปนคะแนน รปท 2.7 เปนตวอยางของการคนหาแบบดทสดกอน ขนตอนนเรมจากตอน 1 สรางโหนดราก(root node) ในขนตอน 2สรางโหนดลกB และ C แลวตรวจสอบโหนด B และ C ดวยฮวรสตกฟงกชน ไดผลออกมาเปนคะแนนคอ 3 และ 1ตามล าดบ จากนนใหเลอกโหนด C เปนโหนดตอไปทเราสนใจ เพราะมคานอยกวา (หมายเหต ในการเลอกนจะเลอกคามากสด หรอนอยสดกได ขนอยกบลกษณะของปญหา) แลวสรางโหนด ลกใหกบโหนด C ในขนตอน 3 ไดโหนด D และ Eแลวตรวจสอบคะแนนได 4 และ 6 ตามล าดบ จากนนท าการเปรยบเทยบคาของโหนดทายสด หรอเทอรมนอล โหนด(terminal node) ทกโหนด วาโหนด ใดมคาดทสด ในทนจะตองเลอกโหนด B เพราะมคะแนนเพยง 3 (เลอกคะแนนต าสด) แลวสรางโหนด ลกตามขนตอน 4 ได F และ G แลวตรวจ สอบคะแนนได 6 และ 5 คะแนนตามล าดบ ท าเชนนเรอย ๆ จนพบค าตอบหรอจนไมสามารถ สรางโหนดตอไปไดอก

Page 41: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

รปท 7 ขนตอนของการคนหาแบบดทสดกอน

รปท 8 การคนหาแบบดสดกอน

Page 42: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

อลกอรธม: การคนหาแบบดทสดกอน1. เรมดวย OPEN ทมเพยงโหนดเรมตน2. ท าจนกวาจะพบเปาหมาย หรอวาไมมโหนดเหลออยใน OPEN

เลอกโหนดทดทสดใน OPEN สรางโหนดลกใหกบโหนดทดทสดนน ส าหรบโหนดลกแตละตวใหท าดงตอไปน

i) ถาโหนดนนยงไมเคยถกสรางมากอนหนานน ใหตรวจสอบคาของมนโดยใชฮวรสตกฟงชน แลวเพมเขาไปใน OPEN แลวบนทกวาเปนโหนดแม

ii) ถาโหนดนนถกสรางมากอนหนานแลว ใหเปลยนโหนดแมของมน ถาเสนทางใหมทไดดกวาโหนดแมตวเดม ในกรณน ใหปรบเปลยนคาตามเสนทางทอาจจะเกดขน

Page 43: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การคนหาแบบ Greedy (Greedy Algorithm)กรดอลกอรธม เปนการคนหาแบบดทสดกอน(Best first search) ทงายทสด หลกการ

ของการคนหาแบบนคอ การเลอกโหนดทดทสดตลอดเวลาอลกอรธม กรด1. เลอกโหนดเรมตนมาหนงโหนด2. ใหโหนดทเลอกมานเปนสถานะปจจบน3. ใหท าตามขบวนการขางลางนจนกวาจะไมสามารถสรางโหนดลกไดอก

3.1 สรางสถานะใหมทเปนโหนดลกทเปนไปไดทงหมดจากสถานะปจจบน3.2 จากสถานะใหมทสรางขนมาทงหมด ใหเลอกสถานะ หรอ โหนดลก ทดทสด

ออกมาเพยงโหนดเดยว4. กลบไปทขนตอนท 2

ตวอยาง จากเรองการเดนทางของเซลแมนทจะตองเดนทางไปยงเมอง A B C D ซงมระยะทางตามตารางท 3 เราจะแกปญหานดวยวธการของกรดบาง

รปท 9 การแกปญหาการเดนทางของเซลแมนดวยกรดอลกอรธม

Page 44: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

จากรปท 9 การแกปญหาเรมจาก การเลอก A เปนเมองเรมแรก จากนนท าการสรางโหนดลกB C และ D หารระยะทางระหวาง A ถงเมองเหลานได 20 30 และ 50 ตามล าดบ เลอก B เปนเมองทจะเดนทางตอมา จากนนสรางโหนดลกของB ได C และ D และไดระยะทางเทากบ 15 และ 20 ตามล าดบ เลอก C เปนเมองทจะเดนทางตอไป จากนนสรางโหนดลกให C ได D มคาเทากบ 10 เลอกเดนมาท D เปนเมองสดทายกอนกลบไป A รวมระยะทางเทากบ 20 + 15 + 10 + 50 = 95

รปท 10 ขอมลในรปแบบกราฟ

Page 45: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

ตาราง 3 การคนหาแบบกรด

Page 46: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

การคนหาแบบ A*การคนหาแบบ A* เปนอกแบบของการคนหาแบบดทสดกอน วธการเลอกโหนดทจะใช

ในการด าเนนการตอจะพจารณาจากโหนดทดทสด แตในกรณของ A* นจะมลกษณะพเศษกวาคอ ในสวนของฮวรสตกฟงกชน ในกรณของการคนหาแบบดทสดกอนนน คาทไดจากฮวรสตก ฟงกชน จะเปนคาทวดจาก โหนดปจจบน แตในกรณของ A* คาของฮวรสตก ฟงกชน จะวดจากคา 2 คาคอ คาทวดจากโหนดปจจบนไปยงโหนดราก และจากโหนดปจจบนไปยงโหนดเปาหมาย ถาเราใหตวแปร f แทนคาของฮวรสตก ฟงกชน g เปนฟงกชนทใชวดคา cost จากสถานะเรมตนจนถงสถานะปจจบน h' เปนฟงกชนทใชวดคา cost จากสถานะปจจบนถงสถานะเปาหมาย ดงนน

f = g + h’

อลกอรทม A* (A* Search) เปนการขยายอลกอรทมดสดกอนโดยพจารณาเพมเตมถงตนทนจากสถานะเรมตนมายงสถานะปจจบนเพอใชค านวณคาฮวรสตกดวย ในกรณของอลกอรทม A* เราตองการหาคาต าสดของฟงกชน f'ของสถานะ s นยามดงน

f'(s)=g(s)+h'(s)โดยท g คอฟงกชนทค านวณตนทนจากสถานะเรมตนมายงสถานะปจจบน h' คอฟงกชนทประมาณตนทนจากสถานะปจจบนไปยงค าตอบ ดงนน f' จงเปนฟงกชนทประมาณตนทนจากสถานะเรมตนไปยงค าตอบ (ยงนอยยงด) เรามองไดวาฟงกชน h' คอฟงกชนฮวรสตกทเราเคยใชในการคนหาอน ๆ กอนหนานเชนอลกอรทมปนเขา อลกอรทมดสดกอน เปนตน

Page 47: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

ในทนเราใสเครองหมาย ' เพอแสดงวาฟงกชนนเปนฟงกชนประมาณของฟงกชนจรงทไมร (เราท าไดแคประมาณวา h' คอตนทนจากสถานะปจจบนไปยงค าตอบ เราจะรตนทนจรงกตอเมอเราไดท าการคนหาจรงจนไปถงค าตอบแลว) สวน g เปนฟงกชนทค านวณตนทนจรงจากสถานะเรมตนมายงสถานะปจจบน (จงไมไดใสเครองหมาย ' ) เพราะเราสามารถหาตนทนจรงไดเนองจากไดคนหาจากสถานะเรมตนจนมาถงสถานะปจจบนแลว สวน f' กเปนเพยงแคฟงกชนประมาณโดยการรวมตนทนทงสอง คอ h' กบ gอลกอรทม A* จะท าการคนหาโดยวธเดยวกนกบอลกอรทมดสดกอนทกประการ

ยกเวน ฟงกชนฮวรสตกทใชเปลยนมาเปน f' (ตางจากอลกอรทมดสดกอนทใช h') โดยการใช f' อลกอรทม A* จงใหความส าคญกบสถานะหนง ๆ 2 ประการ คอ (1) สถานะทดตองม h' ดคอตนทนเพอจะน าไปสค าตอบหลงจากนตองนอย และ (2) ตนทนทจายไปแลวกวาจะถงสถานะน (g) ตองนอยดวย เราจงไดวา A* จะคนหาเสนทางทใหตนทนโดยรวมนอยทสดตามคา f' ซงตางจากอลกอรทมดสดกอน ทเนนความส าคญของสถานะทตนทนหลงจากนทจะน าไปสค าตอบตองนอย โดยไมสนใจวาตนทนทจายไปแลวกวาจะน ามาถงสถานะนตองเสยไปเทาไหร

Page 48: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

รปท 11 แสดงการคนหาดวยอลกอรทม A* กนสถานะในรปท 8 โดยสมมตใหตนทนหรอระยะหางระหวางสถานะพอแมไปยงสถานะลกเทากบ 1 หนวย เชนตน ทนจรง (g) จาก A ไปยง B,C หรอ D มคาเทากบ 1 หนวยจากรปจะเหนไดวาในขนตอนท 4 สถานะ C จะถกเลอกมากระจายโดยอลกอรทม A* เนองจากมคา f' นอยสดเทากบ 3.5 ซงนอยกวา E ทมคาเทากบ 4 แมวาคา h' ของ E จะนอยกวาซงตางจากการสรางสถานะของอลกอรทมดสดกอน

Page 49: น.ส.ชลธิดา ประยูร ม.5 เลขที่ 14

จดท าโดย

นางสาวชลธดา ประยร

ชน ม.5

เลขท 14