นางสาว หัทยา เชื้อสมเกียรติ ม.5

45
หหหหหหหหหหหหหหหหหหห 1 หหหหหหหหหหหหหหหหหหห หหหหหห (Data) เเเเเเเเเเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเ (data management) เเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเ เเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเ

Upload: hattayagif

Post on 12-Apr-2017

185 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

ขอมล (Data) เปนองคประกอบทสำ�คญของระบบส�รสนเทศ

คอมพวเตอร ก�รจดก�รขอมล (data management) เปนกลยทธทใชในก�รบรห�รองคก�รใหมประสทธภ�พ และตองมก�รตดสนใจทถกตอง รวดเรวและทนตอเหตก�รณในก�รทำ�ธรกจในยคปจจบน

Page 2: นางสาว หัทยา เชื้อสมเกียรติ ม.5

วตถประสงคในการจดการขอมล1.การเกบขอมล ส�ม�รถนำ�กลบม�ใช

ง�นไดอกในภ�ยหลง 2.การจดขอมล ส�ม�รถนำ�กลบม�ใชง�น

ไดอย�งมประสทธภ�พ 3.การปรบปรงขอมล ส�ม�รถปรบปรง

ขอมลใหเปนขอมลปจจบนอยเสมอ 4.การปกปองขอมล ปองกนขอมลใหม

คว�มปลอดภยจ�กก�รลกลอบใชง�น หรอแกไข

Page 3: นางสาว หัทยา เชื้อสมเกียรติ ม.5

หนวยขอมล (Data Unit)หนวยของขอมลคอมพวเตอรส�ม�รถจดเรยงจ�ก

ขน�ดเลกไปขน�ดใหญดงน*บต (bit) เชน 0 หรอ 1 *ตวอกษร (character) ตวอกษร 1 ตว

*ASCII 1 bytes ( 8 bit)*Unicode 2 bytes (16 bit)

*เขตขอมล (field) ขอคว�มใด ๆ ซงประกอบไปดวยกลมตวอกษรทแทนขอเทจจรง

เขตขอมล

ตวอกษร

Page 4: นางสาว หัทยา เชื้อสมเกียรติ ม.5

*ระเบยนขอมล (record) กลมของเขตขอมลต�งๆ *แฟม (file) กลมของระเบยนขอมลทมโครงสร�ง

เดยวกน

ระเบยนขอมล

แฟม ตำาแหนง

แฟม

*ฐานขอมล (database) กลมของแฟมทมคว�มสมพนธกน

ฐานขอมล

อาจารย

วชานกศกษา

Page 5: นางสาว หัทยา เชื้อสมเกียรติ ม.5

เขตขอมลคย (Key Field)*เขตขอมลคย (key field)ใชสำ�หรบระบระเบยน

ขอมลอย�งเฉพ�ะเจ�ะจง ขอมลในกลมนจะไมซำ�กบระเบยนอน ๆ

เขตขอมลคย

Page 6: นางสาว หัทยา เชื้อสมเกียรติ ม.5

ชนดของขอมล (Data Types)*ค�ตรรกะ (booleans) มค� จรง กบ เทจ *จำ�นวนเตม (integers) เลขทไมมเศษสวนหรอ

ทศนยม เชน 1, -1, 345, -543 *จำ�นวนจรง (floating-point values) จำ�นวน

ตวเลขใดๆ เชน 23.456, -4755.3333445 *ตวอกษร (character) ขอมลทแทนดวยกลม

ของบต เปนตวอกษรหรอสญลกษณ เชน A, S, B *ส�ยอกขระ (strings) กลมของตวอกษร*วนทและเวล� (date/time) ขอมลวนทหรอเวล�*ไบน�ร (binary) ขอมลท�งคอมพวเตอร เชน

แฟม รปภ�พ ไฟลวดโอ

Page 7: นางสาว หัทยา เชื้อสมเกียรติ ม.5

ประเภทของแฟมขอมล*แฟมหลก (master files) คอแฟมทเกบ

ขอมลทเกดก�รเปลยนแปลงนอย หรอแทบไมมก�รเปลยนแปลงเลย อ�จเรยกไดว�เปนแฟมขอมลถ�วร หรอกงถ�วร

*แฟมลกค� แฟมสนค� แฟมขอมลก�รข�ยประจำ�เดอน

*แฟมรายการเปลยนแปลง (transaction files) คอแฟมทเกบขอมลร�ยก�รทเกดก�รเปลยนแปลงกอนทจะนำ�ไปปรบปรงใหกบแฟมร�ยก�รหลก

*แฟมร�ยก�รข�ยในแตละวน

Page 8: นางสาว หัทยา เชื้อสมเกียรติ ม.5

ลกษณะการประมวลผลขอมล(Data Processing)*การประมวลผลแบบกลม (batch processing) *การประมวลผลทนท (real-time processing) - การประมวลผลแบบกลม (batch processing) เปนก�ร

ประมวลผลโดยรวบรวมขอมลต�งๆ ม�ประมวลผลต�มชวงเวล�ทกำ�หนด โดยขอมลทใชในก�รประมวลผลอ�จม�จ�กเอกส�รต�งๆ ขอมลทปอนแบบออนไลน แตขอมลจะยงไมถกประมวลผลทนท จนกว�จะถงชวงเวล�ทกำ�หนดไว เพอลดค�ใชจ�ย เชน ค�นำ�ประป� ค�ไฟฟ� ยอดบญชบตรเครดต

- การประมวลผลทนท (real-time processing) เปนก�รประมวลผลทไดผลลพธทนทเมอทำ�ร�ยก�รเข�สระบบ เชน ก�รถอนเงนจ�กต ATM ทตองมก�รปรบเปลยนยอดเงนในบญช ซงถ�ก�รประมวลผลทำ�แบบออนไลน จะเรยกว� online transaction processing (OLTP)

Page 9: นางสาว หัทยา เชื้อสมเกียรติ ม.5

การเขาถงขอมล (Data Access)การเขาถงขอมลแบบลำาดบ (sequential data

access) เปนก�รเข�ถงขอมลแบบทตองอ�ศยก�รอ�นขอมลตงแตตน จนถงขอมลทตองก�ร เหม�ะสำ�หรบก�รอ�นขอมลปรม�ณม�กและเรยงลำ�ดบ

การเขาถงขอมลแบบสม (random data access) ก�รเข�ถงขอมลลกษณะนจะตองใชกลไกก�รห�ตำ�แหนงระเบยนวธต�งๆ เหม�ะสำ�หรบก�รคนห�ขอมลจำ�นวนไมม�ก และมก�รเพม ลบ แกไขขอมลเปนประจำ�

Page 10: นางสาว หัทยา เชื้อสมเกียรติ ม.5

การจดโครงสรางแฟมขอมล• มปจจยทตองพจารณาในการเลอกโครงสราง ไดแก– ปรม�ณขอมล คว�มถในก�รดงขอมล คว�มถในก�ร

ปรบปรงขอมล จำ�นวนครงทอ�นขอมลจ�กหนวยคว�มจำ�สำ�กรองตอก�รดงขอมล

• การจดโครงสรางขอมลแบบตางๆ– แฟมลำ�ดบ (sequential file) – แฟมสม ( direct file หรอ hash file)– แฟมดรรชน (indexed file)– แฟมลำ�ดบดรรชน (indexed sequential file)

Page 11: นางสาว หัทยา เชื้อสมเกียรติ ม.5

ตวอยางแฟมดรรชน

ตวอย�งก�รแทรก record

Page 12: นางสาว หัทยา เชื้อสมเกียรติ ม.5

การจดโครงสรางแฟมขอมลแฟมลำาดบดรรชน (indexed sequential file) คอตวระเบยนในแฟมขอมลไมเรยงต�มลำ�ดบ แตเรยงเฉพ�ะคยในดรรชน และมก�รกำ�หนดดรรชนบ�งสวน(partial indexed)เพมขนม�ตวอยางแฟมลำาดบดรรชน

Page 13: นางสาว หัทยา เชื้อสมเกียรติ ม.5

ตวอยางการแทรก record

เปรยบเทยบโครงสรางแฟมขอมล

Page 14: นางสาว หัทยา เชื้อสมเกียรติ ม.5

แฟมโปรแกรมและแฟมขอมล

• แฟมโปรแกรม คอแฟมโปรแกรมประกอบดวยชดคำ�สงต�งๆ ททำ�ง�นอย�งใดอย�งหนง เชน โปรแกรมประมวลผลคำ� Microsoft Word

ประเภทแฟมโปรแกรม สวนขยายCommand COM Application Program EXE Batch Program BAT Dynamic Link Library DLL

Page 15: นางสาว หัทยา เชื้อสมเกียรติ ม.5

• แฟมขอมล คอแฟมทไดจ�กก�รบนทกขอมลดวยแฟมโปรแกรม ซงแฟมขอมลบ�งประเภทสร�งและเปดดวยโปรแกรมใดโปรแกรมหนงโดยเฉพ�ะ

ประเภทแฟมขอมล

สวนขยาย

โปรแกรม มาตรฐาน

Adobe Photoshop Drawing

PSD Adobe Photoshop

Bitmap BMP

Conceptual Data Model

CDM PowerDesigner DataArchitect

Microsoft Word Document

DOC Microsoft Word

Visio Drawing VSD Visio

Page 16: นางสาว หัทยา เชื้อสมเกียรติ ม.5

ระบบแฟมขอมล (File Systems)ในอดตก�รจดเกบขอมลดวยคอมพวเตอรมลกษณะเปนแฟม

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

-คว�มซำ�ซอนของขอมล (data redundancy)-สอดคลองกนของขอมล (data inconsistency)-ขอมลแยกอสระตอกน (data isolation)-คว�มไมปลอดภยของขอมล (poor security)-ข�ดบรณภ�พของขอมล (lack of data integrity)-คว�มขนตอกนระหว�งโปรแกรมประยกตกบโครงสร�งของแฟมขอมล

(application / data

Page 17: นางสาว หัทยา เชื้อสมเกียรติ ม.5

ระบบฐานขอมล (DATABASE SYSTEMS)• ระบบฐานขอมล (database) หม�ยถง กลมของขอมล

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

• ระบบจดการฐานขอมล (Database Management System:DBMS) เปนซอฟตแวรระบบทใชในก�รจดก�รฐ�นขอมล เปรยบเหมอนสอกล�งระหว�งผใชและโปรแกรมประยกตต�งๆทเกยวของกบก�รใชฐ�นขอมล

Page 18: นางสาว หัทยา เชื้อสมเกียรติ ม.5

ขอดของระบบฐานขอมล-ลดคว�มซำ�ซอนของขอมล (reduce

dataredundancy)-ก�รใชขอมลรวมกน (data sharing)-ขอมลมคว�มถกตองม�กขน (improved data

integrity) -เพมคว�มปลอดภยใหกบขอมล (increased security) -มคว�มเปนอสระของขอมล (data independency)

Page 19: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

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

อย�งมประสทธภ�พ-ก�รออกแบบโครงสร�งขอมลทดจะชวยลดเวล�ในก�รกระทำ�ก�รและลดก�รใช

ง�นในพนทคว�มจำ�ดวยวตถประสงคโครงสร�งขอมลใชเพอวตถประสงค 3 ประก�ร1.ก�รจดเกบขอมลในโลกแหงคว�มจรง2.เครองมอของนกเขยนโปรแกรม3.แบบจำ�ลอง

Page 20: นางสาว หัทยา เชื้อสมเกียรติ ม.5

การจดเกบขอมลในโลกแหงความจรงเปนก�รนำ�ขอมลทมอยเข�ไปเกบในเครองคอมพวเตอร อ�ท

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

Page 21: นางสาว หัทยา เชื้อสมเกียรติ ม.5

เครองมอของนกเขยนโปรแกรมแบบจำาลองใชโครงสร�งขอมลเพอเปนแบบจำ�ลองโลกแหงคว�มจรง -กองซอนใชจำ�ลองก�รทำ�ง�นบ�งอย�งของคอมพวเตอร -แถวคอย ใชจำ�ลองก�รเข�แถวคอยของลกค�ในธน�ค�รลกษณะของขอมล

  • ขอมลทมความถกตองและเชอถอได (accuracy) ขอมลจะมคว�มถกตองและเชอถอไดม�กนอยเพยงใดนน และก�รควบคมก�รประมวลผลก�รควบคมขอมลนำ�เข�เปนก�รกระทำ�เพอใหเกดคว�ม มนใจว�ขอมลนำ�เข�มคว�มถกตองเชอถอได

  • ขอมลตรงตามความตองการของผใช (relevancy) ไดแก ก�รเกบเฉพ�ะขอมลทผใชตองก�รเท�นน ไมควร เกบขอมลอน ๆ ทไมจำ�เปนหรอไมเกยวของกบก�รใชง�น

  ขอมลมความทนสมย• (timeliness) ขอมลทดนนนอกจ�กจะเปนขอมลทมคว�มถกตองเชอถอไดแลวจะ ตองเปนขอมลททนสมย

Page 22: นางสาว หัทยา เชื้อสมเกียรติ ม.5

การเรยงลำาดบขอมล เปนก�รนำ�เอ�ขอมลในเรคอรดม�จดเรยงลำ�ดบจ�กนอยไปห�ม�กหรอจ�กม�กไปห�นอยโดยใชทกฟลดหรอรวมหล�ย ๆ ฟลดในก�รเรยงลำ�ดบกไดวธการเรยงลำาดบอยางงาย โดยทำ�ต�มลำ�ดบขนตอนดงภ�พ

Page 23: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

Page 24: นางสาว หัทยา เชื้อสมเกียรติ ม.5

การคนหาแบบไบลด(Blind Search)     เปนก�รคนห�แบบทเดนท�งจ�กโหนดหนงไปยงอกโหนดหนงโดยอ�ศยทศท�งเปนตวกำ�หนดก�รคนห� ไมตองมขอมลอะไรม�ชวยเสรมก�รตดสนใจว�จะเดนท�งตอไปอย�งไร นอกจ�กทศท�งซงเปนรปแบบต�ยตว ก�รคนห�แบบไบลดส�ม�รถแบงยอยไดดงน คอ ก�รคนห�ทหมด  และก�รคนห�บ�งสวน     -  ก�รคนห�ทงหมด(exhaustive search) คอ ก�รคนห�ทงหมดของปรภมสถ�นะ     -  ก�รคนห�บ�งสวน  (partial search)  ก�รคนห�เพยงบ�งสวนของปรภมสถ�นะ ซงในคว�มเปนจรงก�รคนห�สวนม�กใชก�รคนห�เฉพ�ะบ�งสวนเท�นนเนองจ�กปรภมสถ�นะมกมขน�ดใหญ เท�ใหไมส�ม�รถคนห�ไดทงหมด ดงนนจงมคว�มเปนไปไดว�คำ�ตอบทไดอ�จไมใชคำ�ตอบทดทสด ก�รคนห�แบบนส�ม�รถแบงไดเปน 2 ประเภทคอ ก�รคนห�แบบลกกอน(Depth first search) และก�รคนห�แบบกว�งกอน (Breadth first search)

Page 25: นางสาว หัทยา เชื้อสมเกียรติ ม.5

การคนหาแบบลกกอน(Depth first search)ก�รคนห�แบบลกกอนเปนก�รคนห�ทกำ�หนดทศท�งจ�ก

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

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

Page 26: นางสาว หัทยา เชื้อสมเกียรติ ม.5

โหนดเรมตน จ�กนนใหนำ�โหนดทอยตดกบโหนดทกำ�ลงสำ�รวจอย(ทยงไมไดทำ�ก�รสำ�รวจและยงไมไดอยในแสตกม�ใสแสตก) ม�เกบไวในสแตกเมอสำ�รวจโหนดนนเสรจ ใหพอพ(pop) ตวบนสดของโหนดออกม�ทำ�ก�รสำ�รวจ แลวนำ�โหนดข�งเคยงทงหมดทยงไมไดสำ�รวจม�ตอท�ยแสตก แลวพอพตวบนสดออกม�สำ�รวจ ทำ�เชนนเรอย ๆ จนกระทงพบโหนดทตองก�ร หรอสำ�รวจครบทดโหนด 

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

Page 27: นางสาว หัทยา เชื้อสมเกียรติ ม.5

ก�รสำ�รวจจะเรมตนท 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 28: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

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

Page 29: นางสาว หัทยา เชื้อสมเกียรติ ม.5

        

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

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

Page 30: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

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

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

Page 31: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

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

เดยว พอจะไปเสนท�งอนเสนท�งทผ�นม�กไมจำ�เปนตองเกบ)

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

2. อ�จจะตดเสนท�งทลกม�กโดยไม พบคำ�ตอบ เชนในกรณทเสนท�งนน

ไมมคำ�ตอบและเปนเสนท�งทย�วไมสน สด จะทำ�ไมส�ม�รถไปเสนท�งอนได

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

3. ถ�คำ�ตอบอยในระดบ n+1 สถ�นะ อนทกตวทระดบ 1 ถงระดบ n ไม

จำ�เปนตองถกกระจ�ยจนหมด

3. ถ�คำ�ตอบอยในระดบ n+1 สถ�นะ ทกตวทระดบ 1 ถงระดบ n จะตองถก

กระจ�ยจนหมด ทำ�ใหมสถ�นะทไมจำ�เปนในเสนท�งทจะไปสคำ�ตอบถกกระจ�ยออกดวย

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

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

ดวย

Page 32: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

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

Page 33: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

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

Page 34: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

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

Page 35: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

Page 36: นางสาว หัทยา เชื้อสมเกียรติ ม.5

การคนหาดสดกอน(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 37: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

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

Page 38: นางสาว หัทยา เชื้อสมเกียรติ ม.5

อลกอรธม: การคนหาแบบดทสดกอน1. เรมดวย OPEN ทมเพยงโหนดเรมตน2. ทำ�จนกว�จะพบเป�หม�ย หรอว�ไมมโหนดเหลออยใน OPEN -เลอกโหนดทดทสดใน OPEN -สร�งโหนดลกใหกบโหนดทดทสดนน -สำ�หรบโหนดลกแตละตวใหทำ�ดงตอไปน     i) ถ�โหนดนนยงไมเคยถกสร�งม�กอนหน�นน ใหตรวจสอบค�ของมนโดยใชฮวรสตกฟงชนแลวเพมเข�ไปใน OPEN แลวบนทกว�เปนโหนดแม     ii) ถ�โหนดนนถกสร�งม�กอนหน�นแลว ใหเปลยนโหนดแมของมนถ�เสนท�งใหมทไดดกว�โหนดแมตวเดม ในกรณน ใหปรบเปลยนค�ต�มเสนท�งทอ�จจะเกดขน

Page 39: นางสาว หัทยา เชื้อสมเกียรติ ม.5

การคนหาแบบ Greedy (Greedy Algorithm)    กรดอลกอรธม เปนก�รคนห�แบบดทสดกอน(Best first search) ทง�ยทสด หลกก�รของก�รคนห�แบบนคอ ก�รเลอกโหนดทดทสดตลอดเวล�อลกอรธม กรด1. เลอกโหนดเรมตนม�หนงโหนด2. ใหโหนดทเลอกม�นเปนสถ�นะปจจบน3. ใหทำ�ต�มขบวนก�รข�งล�งนจนกว�จะไมส�ม�รถสร�งโหนดลกไดอก      3.1 สร�งสถ�นะใหมทเปนโหนดลกทเปนไปไดทงหมดจ�กสถ�นะปจจบน      3.2 จ�กสถ�นะใหมทสร�งขนม�ทงหมด ใหเลอกสถ�นะ หรอ โหนดลก ทดทสดออกม�เพยงโหนดเดยว4. กลบไปทขนตอนท 2ตวอย�ง จ�กเรองก�รเดนท�งของเซลแมนทจะตองเดนท�งไปยงเมอง A B C D ซงมระยะท�งต�มต�ร�งท 3 เร�จะแกปญห�นดวยวธก�รของกรดบ�ง

Page 40: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

จ�กรปท 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

Page 41: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

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

Page 42: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

 

f = g + h’

 

Page 43: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

โดยท g คอฟงกชนทคำ�นวณตนทนจ�กสถ�นะเรมตนม�ยงสถ�นะปจจบน h' คอฟงกชนทประม�ณตนทนจ�กสถ�นะปจจบนไปยงคำ�ตอบ

Page 44: นางสาว หัทยา เชื้อสมเกียรติ ม.5

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

รปท 11 แสดงก�รคนห�ดวยอลกอรทม A* กนสถ�นะในรปท 8  โดยสมมตใหตนทนหรอระยะห�งระหว�งสถ�นะพอแมไปยงสถ�นะลกเท�กบ 1 หนวย เชนตน

ทนจรง (g)  จ�ก A ไปยง B,C หรอ D มค�เท�กบ 1 หนวย

Page 45: นางสาว หัทยา เชื้อสมเกียรติ ม.5

ผจดทำา นางสาว หทยา เชอสมเกยรต

ชนมธยมศกษาปท 5 เลขท 13