Bài tập lớn môn Hệ chuyên gia dự báo thời tiết sử dụng thuật toán cây quyết định ID3.Tổng quan về hệ chuyên gia và ứng dụng, giới thiệu các thuật toán có thể ứng dụng cho đề tài (ID3),Xây dựng chương trình
Bài tập lớn mơn Hệ chun gia BỘ CƠNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN BÀI TẬP LỚN MÔN: HỆ CHUYÊN GIA Đề Tài : Xây Dựng Hệ Thống Dự Báo Thời Tiết Giảng viên hướng dẫn: Lê Thị Thủy Lớp : KHMT1 – K11 Nhóm : 15 Sinh viên thực hiện: Phạm Minh Hoàng Chu Anh Tài Nguyễn Hoàng Hiệp Hà Nội ngày 05 tháng 05 năm 2019 -Xây dựng hệ thống dự báo thời tiết sử dụng định Bài tập lớn môn Hệ chuyên gia MỤC LỤC LỜI NÓI ĐẦU…………………………………………………………………………3 CHƯƠNG I TỔNG QUAN VỀ HỆ CHUYÊN GIA VẦ ỨNG DỤNG Hệ chuyên gia gì……………………………………………………………………4 Đặc trưng hệ chuyên gia……………………………………………………… 2.1 đặc trưng hệ chuyên gia…………………………………………………… 2.2 Ưu điểm hệ chuyên gia………………………………………………………….6 2.3 Các lĩnh vực hệ chuyên gia…………………………………………………… CHƯƠNG II GIỚI THIỆU VỀ CÁC THUẬT TỐN CĨ THỂ ỨNG DỤNG CHO ĐỀ TÀI(CÂY QUYẾT ĐỊNH ID3) Các định nghĩa……………………………………………………………………… Thuật tốn ID3……………………………………………………………………… 2.1.Entropy đo tính tập liệu………………………………………8 2.2 Information Gain 2.3 Ví dụ minh họa CHƯƠNG III XÂY DỰNG HỆ CHUYÊN GIA DỰ BÁO THỜI TIẾT Giới thiệu đề tài…………………………………………………………………… 12 Cấu trúc liệu biểu diễn trạng thái………………………………………… 3.Ngôn ngữ sử dụng…………………………………………………………………… 4.Một số giao diện hệ thống -Xây dựng hệ thống dự báo thời tiết sử dụng định Bài tập lớn môn Hệ chuyên gia LỜI MỞ ĐẦU Trong thời đại ngày nay, với phát triển vũ bão ngành cơng nghệ thơng tin giới nói chung Việt Nam nói riêng máy tính khơng xa Đặc biệt lĩnh vực trí tuệ nhân tạo nói chung hệ chuyên gia nói riêng phần ngành cơng nghê thơng tin góp phần tạo hệ thống có khả trí truệ người, có tri thức tiên tiến hệ chuyên gia để giải vấn đề phức tạp sống Hệ chuyên gia thu hút mạnh mẽ ưu điểm sau : Các cương trình tỏ hữu hiệu tiện lợi đáp ứng nhu cầu thực tế, Các chương trình hệ chuyên gia ngày tỏ có tính khả thi cao, hệ chun gia khơng có tính đơn lẻ phù hợp với nhiều cá nhân Trong lĩnh vực thời tiết mọt ví dụ điển hình việc ứng dụng hệ chuyên gia vào thực tế Chúng ta biết thời tiết ln ảnh hưởng trực tiếp tới đời sống nên dự báo thời tiết giúp hoạt động ngày trở nen thuận tiện nhiều Vì nhóm chúng em lựa chon đề tài Dự báo thời tiết để xây dựng chuyên gia chuyên biệt giúp cho việc dự báo thời tiết ngày Nhóm chúng em cố gắng hồn thành cách tốt có thể, nhiên trình xấy dựng phần mềm tốn nhiều thiếu sót, mong tiếp tục góp ý giúp chúng em hồn thiện Chúng em xin chân thành cảm ơn! -Xây dựng hệ thống dự báo thời tiết sử dụng định Bài tập lớn môn Hệ chuyên gia CHƯƠNG I: TỔNG QUAN VỀ HỆ CHUYÊN GIA VÀ ỨNG DỤNG Hệ chuyên gia gì? - Theo E.Feigenbaum : «Hệ chuyên gia (Expert System) chương - trình máy tính thơng minh sử dụng tri thức (knowledge) thủ tục suy luận (inference procedures) để giải tốn tương đối khó khăn đòi hỏi chun gia giải được» Hệ chuyên gia hệ thống tin học mơ (emulates) lực đoán (decision) hành động (making abilily) chuyên gia (con người) Hệ chuyên gia lĩnh vực ứng dụng trí tuệ nhân tạo (Artificial Intelligence) hình Một số lĩnh vực ứng dụng trí tuệ nhân tạo - - Hệ chuyên gia sử dụng tri thức chuyên gia để giải vấn đề (bài toán) khác thuộc lĩnh vực Tri thức (knowledge) hệ chun gia phản ánh tinh thơng tích tụ từ sách vở,tạp chí, từ chuyên gia hay nhà bác học Các thuật ngữ hệ chuyên gia, hệ thống dựa tri thức (knowledge- based system )hay hệ chuyên gia dựa tri thức (knowledge- based expert system) thường có nghĩa Một hệ chuyên gia gồm ba thành phần sở tri thức (knowledge base), máy suy diễn hay môtơ suy diễn (inference engine), hệ thống giao tiếp với người sử dụng (user interface) Cơ sở tri thức chứa tri thức để từ đó, máy suy diễn tạo câu trả lời cho ngườisử dụng qua hệ thống giao tiếp -Xây dựng hệ thống dự báo thời tiết sử dụng định Bài tập lớn môn Hệ chuyên gia - Người sử dụng (user) cung cấp kiện (facts) biết, có thật hay thơng tin có ích cho hệ chun gia, nhận câu trả lời lời khuyên hay gợi ý đắn (expertise) - Hoạt động hệ chuyên gia dựa tri thức minh họa sau : Hoạt động hệ chuyên gia - Mỗi hệ chuyên gia đặc trưng cho lĩnh vực vấn đề (problem domain) đó, y học, tài chính, khoa học hay cơng nghệ, v.v , mà cho lĩnh vực vấn đề - Tri thức chuyên gia để giải vấn đề đặc trưng gọi lĩnh vực tri thức(knowledge domain) Quan hệ lĩnh vực vấn đề lĩnh vực tri thức Đặc trưng ưu điểm hệ chuyên gia 2.1 đặc trưng hệ chuyên gia + Hiệu cao (high performance) Khả trả lời với mức độ tinh thông cao so với chuyên gia (người) lĩnh vực +Thời gian trả lời thoả đáng (adequate response time) Thời gian trả lời hợp lý, nhanh so với chuyên gia (người) để đến định Hệ chuyên gia hệ thống thời gian thực (real time system) +Độ tin cậy cao (good reliability) Không thể xảy cố giảm sút độ tin cậy khisử dụng -Xây dựng hệ thống dự báo thời tiết sử dụng định Bài tập lớn môn Hệ chuyên gia +Dễ hiểu (understandable) Hệ chuyên gia giải thích bước suy luận cách dễ hiểuvà quán, không giống cách trả lời bí ẩn hộp đen (black box) 2.2 Những ưu điểm hệ chuyên gia + Phổ cập (increased availability).Là sản phẩm chuyên gia, phát triển không ngừng với hiệu sử dụng phủ nhận + Giảm giá thành (reduced cost) + Giảm rủi ro (reduced dangers) Giúp người tránh mơi trường rủi ro, nguy hiểm + Tính thường trực (Permanance).Bất kể lúc khai thác sử dụng, người mệt mỏi, nghỉ ngơi hay vắng mặt + Đa lĩnh vực (multiple expertise) chuyên gia nhiều lĩnh vực khác khai thác đồng thời thời gian sử dụng + Độ tin cậy (increased relialility) Luôn đảm bảo độ tin cậy khai thác + Khả giảng giải (explanation) Câu trả lời với mức độ tinh thông giảng giảirõ ràng chi tiết, dễ hiểu + Khả trả lời (fast reponse) Trả lời theo thời gian thực, khách quan + Tính ổn định, suy luận có lý đầy đủ lúc nơi (steady, une motional, and complete response at all times) +Trợ giúp thơng minh người hướng dẫn (intelligent -tutor) +Có thể truy cập sở liệu thông minh (intelligent database) 2.3 Ứng dụng hệ chuyên gia - Cho đến nay, hàng trăm hệ chuyên gia xây dựng báo cáo thường xuyên tạp chí, sách, báo hội thảo khoa học Ngồi hệ chun gia đượcsử dụng công ty, tổ chức quân mà khơng cơng bố lý bảo mật -Bảng liệu kê số lĩnh vực ứng dụng hệ chuyên gia: -Xây dựng hệ thống dự báo thời tiết sử dụng định Bài tập lớn môn Hệ chuyên gia Lĩnh vực Ứng dụng diện rộng Cấu Tập hợp thích đáng thành phần hệ thống hình(Configuration) theo cách riêng Chẩn đoán (Diagnosis) Lập luận dựa chứng quan sát Truyền đạt (Instruction) Dạy học kiểu thơng minh cho sinh viên hỏi (why?), (how?) (what if?) giống hỏi người thầy giáo Giải thích(Interpretation ) Kiểm tra (Monitoring) Lập kế hoạch(Planning) Dự đốn (Prognosis) Chữa trị (Remedy) Điều khiển (Control) Giải thích liệu thu nhận So sánh liệu thu lượm với liệu chuyên môn để đánh giá hiệu Lập kế hoạch sản xuất theo yêu cầu Dự đốn hậu từ tình xảy Chỉ định cách thụ lý vấn đề Điều khiển q trình, đòi hỏi diễn giải, chẩn đốn, kiểm tra,lập kế hoạch, dự đoán chữa trị CHƯƠNG II: GIỚI THIỆU VỀ CÁC THUẬT TỐN CĨ THỂ ỨNG DỤNG CHO ĐỀ TÀI(CÂY QUYẾT ĐỊNH ID3) Các định nghĩa *Cây định: - Trong lý thuyết định (chẳng hạn quản lý rủi ro), định (tiếng Anh: decision tree) đồ thị định hậu (bao gồm rủi ro hao phí tài nguyên) Cây định sử dụng để xây dựng kế hoạch nhằm đạt mục tiêu mong muốn Các định dùng để hỗ trợ trình định Cây định dạng đặc biệt cấu trúc - Trong lĩnh vực máy học, định kiểu mơ hình dự báo (predictive model), nghĩa ánh xạ từ quan sát vật/hiện tượng tới kết luận giá trị mục tiêu vật/hiện tượng Mỗi nút (internal node) tương ứng với biến; đường nối với nút thể giá trị cụ thể cho biến Mỗi nút đại diện cho giá trị dự đoán biến mục tiêu, cho trước giá trị biến biểu diễn đường từ nút gốc tới nút Kỹ thuật học máy dùng định gọi học định, hay gọi với tên ngắn gọn định -Xây dựng hệ thống dự báo thời tiết sử dụng định Bài tập lớn mơn Hệ chun gia Thuật tốn ID3 - Thuật toán ID3 phát biểu Quinlan (trường đại học Syney, Australia) công bố vào cuối thập niên 70 kỷ 20 Sau đó, thuật tốn ID3 giới thiệu trình bày mục Induction on decision trees, machine learning năm 1986 ID3 xem cải tiến CLS với khả lựa chọn thuộc tính tốt để tiếp tục triển khai bước ID3 xây dựng định từ trên- xuống (top -down) [5] 2.1 Entropy đo tính tập liệu: - dùng để đo tính tập liệu Entropy củamộttậpSđượctính theo cơng thức(1) Entropy(S)= - P+ log (P+ ) P log (P- )(2.1) Trong trường hợp mẫu liệu có hai thuộc tính phân lớp"yes" (+),"no" (-) Ký hiệu p+là để tỷ lệ mẫu có giá trị thuộc tính định là"yes", p- tỷ lệ mẫu có giá trị thuộc tính định "no" tập S Trường hợp tổng quát, tập S có n phân lớp ta có cơng thứcsau: Entropy(S)= (- P log ( ))(2.2) Trong Pi tỷ lệ mẫu thuộc lớp i tập hợp S mẫu kiểm tra Các trườnghợpđặcbiệt -Nếu tất mẫu thành viên tập S thuộc lớp Entropy(S) =0 -Nếu tập S có số mẫuphân bổđều vào lớp Entropy(S) =1 -Các trườnghợpcòn lại0< Entropy(S)ta chọnthuộc tính Độ ẩm làm nút … Tương tự nhánh lại định ta định hoàn chỉnh sau: -Xây dựng hệ thống dự báo thời tiết sử dụng định 12 Bài tập lớn môn Hệ chuyên gia CHƯƠNG III: XÂY DỤNG HỆ CHUYÊN GIA DỰ BÁO THỜI TIẾT Giới thiệu đề tài 1.1 Tên đề tài Xây dựng hệ thống dự báo thời tiết sử dụng định ID3 1.2 Mục đích đề tài Giúp cho người dùng biết tình hình thời tiết ngày thông qua yếu tố thời tiết đo đạc thời điểm Qua người dùng chủ động với kế hoạch cơng việc ngày 1.3 Phát biểu tốn Bài toán hệ chuyên gia nhằm dự đoán số kiểu thời tiết thông thường như: mưa, nắng, mát mẻ, lạnh Với mong muốn dự báo cho người dùng biết kiểu thời tiết nêu để người dùng chủ động với hoạt động ngày Với giao diện đơn giản, người dùng cần nhập thông tin nhiệt độ tại, độ ẩm tại, có mây hay khơng hệ thống đưa dự đoán kiểu thời tiết ngày Để làm điều hệ thống cần có sở tri thức đầy đủ kiểu thời tiết nêu trên, tương ứng hệ thống cần có máy suy diễn để sử dụng sở tri thức xây dựng sẵn nhớ, móc xích chúng lại với để suy diễn kết luận cuối Với việc sử dụng định, người chuyên gia thiết kế sở tri thức đưa tập luật kiện đầy đủ xác mà khó đạt sử dụng tư thông thường 2.Cấu trúc liệu biểu diễn trạng thái 2.1 Xây dựng định a Ý tưởng sử dụng định cho mơ hình dự báo thời tiết: Cây định kiểu mơ hình dự báo, trường hợp có nghĩa ánh xạ từ quan sát tượng thời tiết(nhiệt độ, độ ẩm, mây) tới kết luận mục tiêu tượng(mưa, nắng, mát mẻ, lạnh) Mỗi nút tương ứng với thuộc tính thời tiết cần dự đốn (nhiệt độ cao, thấp hay trung bình…); đường nối với nút thể -Xây dựng hệ thống dự báo thời tiết sử dụng định 13 Bài tập lớn môn Hệ chun gia móc xích liên quan đến thuộc tính Mỗi nút đại diện cho giá trị dự đoán biến mục tiêu(mưa, nắng, mát mẻ, lạnh), cho trước giá trị thuộc tính biểu diễn đường từ nút gốc tới nút Từ rút định sử dụng phân lớp cách duyệt từ nút gốc đụng đến lá, từ rút lớp đối tượng thời tiết cần dự đoán gồm thuộc tính để từ xây dựng tập luật đắn b Cách xây dựng định: Chỉ tập biến mục tiêu mưa, nắng, mát mẻ, lạnh Chỉ tập thuộc tính: nhiệt độ, độ ẩm, mây Chỉ giá trị thuộc tính: cao, thấp, trung bình, có, khơng có Vấn đề đặt cần xác định thuộc tính giá trị làm ảnh hưởng đến biến mục tiêu Sau bước để xây dựng định: Cây thiết lập từ xuống Tập biến mục tiêu nằm gốc, nút nơi phân chia nhánh , Chọn thuộc tính để phân chia thành nhánh Thuộc tính chọn dựa độ đo thống kê độ đo heuristic Trong trường hợp ta chọn thuộc tính kinh nghiệm chun gia khơng vào độ đo Thuộc tính có giá trị phân lớp biến mục tiêu cao ta chọn VD: Ta có tập biến mục tiêu sau A(mưa, nắng) tập thuộc tính B(nhiệt độ, độ ẩm mây) Như ta nhận thấy thuộc tính độ ẩm mây cho ta phân loại cao để nhận biết tượng mưa nắng Tiếp tục lặp lại xây dựng định cho nhánh Điều kiện dừng: o Tất tập biến mục tiêu phẩn tử o Khơng thuộc tính dùng để phân chia tập biến mục tiêu Từ bước ta xây dựng định sau: Tập liệu huấn luyện: -Xây dựng hệ thống dự báo thời tiết sử dụng định 14 Bài tập lớn môn Hệ chuyên gia STT 10 11 12 13 14 15 16 Nhiệt độ cao Cao Cao Cao Cao Cao Trung bình Trung bình Trung bình Trung bình Trung bình Trung bình Thấp Thấp Thấp Thấp Mây có Có Có Khơng Khơng Khơng Có Khơng Có Khơng Có Khơng Có Khơng Có Khơng Độ ẩm cao Trung bình Thấp Cao Trung bình Thấp Cao Cao Trung bình Trung bình Thấp Thấp Cao Cao Thấp Thấp Thời tiết Có mưa Nắng nóng Nắng nóng Nắng nóng Nắng nóng Nắng nóng Có mưa Mát mẻ Mát mẻ Mát mẻ Mát mẻ Mát mẻ Có mưa Lạnh Lạnh Lạnh Từ bảng liệu huyến luyện ta áp dụng thuật toán định ID3 giới thiệu Sau ta thu định cuối cùng: -Xây dựng hệ thống dự báo thời tiết sử dụng định 15 Bài tập lớn môn Hệ chuyên gia Nhiệt độ Cao Thấp TB Mây Mây Mây Độ ẩm Độ ẩm Thấp Cao Nắng nóng Nắn g nón g Nắn g nón g Độ ẩm Có mư a Mát mẻ Mát mẻ Mát mẻ Độ ẩm Thấp Cao Thấp Cao TB TB Mát mẻ Không Độ ẩm Thấp Cao TB Nắn g nón g Có Thấp Cao TB Nắng nóng Khơng Độ ẩm Thấp Cao TB Có mưa Có Khơng Có Mát mẻ -Xây dựng hệ thống dự báo thời tiết sử dụng định Có mưa Có mư a TB Lạnh Lạnh Lạnh Lạnh Bài tập lớn môn Hệ chuyên gia c Biến đổi định thành luât: Biểu diễn tri thức dạng luật IF-THEN Mỗi luật tạo từ đường dẫn từ gốc tới Mỗi cặp giá trị thuộc tính dọc theo đường dẫn tạo nên phép kết(AND -và) Các nút mang tên lớp hay biến mục tiêu(mưa, nắng, mát mẻ, lạnh) Dựa vào định ta có tập luật sau: R1: If (Nhiệt độ=Cao) (Mây=Có) (Độ ẩm=Cao) Then Thời tiết=Mưa R2: If (Nhiệt độ=Cao) (Mây=Có) (Độ ẩm=Trung bình) Then Thời tiết=Nắng nóng R3: If (Nhiệt độ=Cao) (Mây=Có) (Độ ẩm=Thấp) Then Thời tiết=Nắng nóng R4: If (Nhiệt độ=Cao) (Mây=Khơng có) (Độ ẩm=Cao) Then Thời tiết=Nắng nóng R5: If (Nhiệt độ=Cao) (Mây=Khơng có) (Độ ẩm=Trung bình) Then Thời tiết=Nắng nóng R6: If (Nhiệt độ=Cao) (Mây=Khơng có) (Độ ẩm=Thấp) Then Thời tiết=Nắng nóng R7: If (Nhiệt độ=Trung bình) (Mây=Có) (Độ ẩm=Cao) Then Thời tiết=Mưa R8: If (Nhiệt độ=Trung bình) (Mây=Khơng có) (Độ ẩm=Cao) Then Thời tiết=Mát mẻ R9: If (Nhiệt độ=Trung bình) (Mây=Có) (Độ ẩm=Trung bình) Then Thời tiết=Mát mẻ R10: If (Nhiệt độ=Trung bình) (Mây=Khơng có) (Độ ẩm=Trung bình) Then Thời tiết=Mát mẻ R11: If (Nhiệt độ=Trung bình) (Mây=Có) (Độ ẩm=Thấp) Then Thời tiết=Mát mẻ R12: If (Nhiệt độ=Trung bình) (Mây=Khơng có) (Độ ẩm=Thấp) Then Thời tiết=Mát mẻ R13: If (Nhiệt độ=Thấp) (Mây=Có) (Độ ẩm=Cao) Then Thời tiết=Mưa R14: If (Nhiệt độ=Thấp) (Mây=Có) (Độ ẩm=Trung bình) Then Thời tiết=Mưa -Xây dựng hệ thống dự báo thời tiết sử dụng định Bài tập lớn môn Hệ chuyên gia R15: If (Nhiệt độ=Thấp) (Mây=Có) (Độ ẩm=Thấp) Then Thời tiết=Mưa R16: If (Nhiệt độ=Thấp) (Mây=Khơng có) (Độ ẩm=Cao) Then Thời tiết=Lạnh R17: If (Nhiệt độ=Thấp) (Mây=Khơng có) (Độ ẩm=Trung bình)) Then Thời tiết=Lạnh R18: If (Nhiệt độ=Thấp) (Mây=Khơng có) (Độ ẩm=Thấp) Then Thời tiết=Lạnh Ta tổng hợp tập luật vào bảng sau: Độ ẩm Kiểu độ ẩm >=80% Cao >=60%