TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO BÀI TẬP LỚN MÔN HỆ CHUYÊN GIA Đề tài Xây dựng hệ chuyên gia điều khiển lượng nước tưới cho cây trồng dựa vào cây quyết định Giáo viên[.]
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN - - BÁO CÁO BÀI TẬP LỚN MÔN: HỆ CHUYÊN GIA Đề tài: Xây dựng hệ chuyên gia điều khiển lượng nước tưới cho trồng dựa vào định Giáo viên hướng dẫn PHỤ LỤC : ThS.Trần Hùng Cường LỜI MỞ ĐẦU Chương 1: TỔNG QUAN HỆ CHUYÊN GIA I Khái niệm II Cấu trúc đặc trưng hệ chuyên gia III Ứng dụng Chương 2: THUẬT TOÁN ID3 I Thuật toán 11 13 13 Giới thiệu định 13 Thuật toán tạo định 14 II Ví dụ minh họa Chương 3: XÂY DỰNG ỨNG DỤNG I Phân tích tốn 16 20 20 Mục đích tốn 20 Cách làm 20 II Dữ Liệu 20 Xây dựng định 20 III: Minh họa chương trình 27 KẾT LUẬN 27 LỜI MỞ ĐẦU Công nghệ thông tin ngành khoa học ngày quan tâm sử dụng rộng rãi lĩnh vực sống Với ưu điểm mạnh ứng dụng nhiều sống cơng nghệ thông tin giúp cho công việc quản lý dễ dàng Để quản lý công việc cụ thể quan người quản lý cần thực nhiều động tác Nhờ có phần mềm cơng việc trở nên đơn giản nhiều Năng lực máy tính ngày mạnh mẽ điều kiện thuận lợi cho trí tuệ nhân tạo: cho phép chương trình máy tính áp dụng thuật giải trí tuệ nhân tạo có khả phản ứng nhanh hiệu trước Ngày việc ứng dụng công nghệ kĩ thuật cao vào đời sống đòi hỏi thiết Một lĩnh vực trí tuệ nhân tạo, mà phần quan trọng Hệ chuyên gia Qua tập lớn này, chúng em xin gửi lời cảm ơn tới thầy ThS.Trần Hùng Cường, cảm ơn thầy cho chúng em có hội tìm hiểu góc kiến thức mới, hay bổ ích với tận tâm dạy dỗ chúng em, giúp chúng em hồn thiện đề tài Trong q trình tìm hiểu hồn thiện, đề tài khơng thể tránh khỏi sai sót, khuyết điểm Vì vậy, nhóm thực chúng em hy vọng nhận đánh giá đóng góp nhiệt tình từ phía thầy bạn để nhóm chúng em hồn thiện Chúng em xin chân thành cảm ơn! Chương 1: TỔNG QUAN HỆ CHUYÊN GIA I Khái niệm Trí tuệ nhân tạo (TTNT) phận khoa học máy tính liên quan đến việc thiết kế hệ thống máy tính thông minh, nghĩa hệ thống thể đặc trưng mà thấy gắn với trí thơng minh hành vi người, hiểu ngôn ngữ, học, suy luận, giải vấn đề… TTNT = Trí thức + Suy diễn Vai trị TTNT: giải thuật có độ phức tạp cấp hàm đa thức ta viết chương trình bình thường, thuật giải có độ phức tạp cấp hàm mũ ta phải áp dụng cách giải gần đúng, áp dụng kỹ thuật TTNT nhằm làm nhỏ khơng gian tốn dẫn đến giảm đáng kể thời gian thực Các lĩnh vực nghiên cứu TTNT: xử lý ngôn ngữ tự nhiên, nhận dạng, HCG, thị giác máy tính, robot học… Natural Language Robotics Expert Systems Artifical Intelligence Vision Systems Pattern Recognition Hình 1.1 Các lĩnh vực nghiên cứu TTNT Hệ sở tri thức (CSTT) chương trình máy tính thiết kế để mơ hình hóa khả giải vấn đề chuyên gia người Hệ CSTT hệ thống dựa tri thức, cho phép dùng tri thức để giải vấn đề phức tạp thuộc lĩnh vực Hệ chuyên gia (HCG) nhánh TTNT sử dụng tri thức chuyên biệt để giải toán giai đoạn dùng chuyên gia người HCG phát triển vào năm 1970 ứng dụng nhiều lĩnh vực Ngày nói tới HCG thực chất hiểu hệ thống có sử dụng công nghệ HCG gồm: ngôn ngữ HCG chuyên dụng, chương trình, phần cứng thiết kế nhằm phát triển vận hành HCG Hiện sách báo người ta thường dùng từ đồng nghĩa “HCG dựa sở tri thức” (knowledge – based expert systems) Hệ chuyên gia loại hệ CSTT thiết kế cho lĩnh vực ứng dụng cụ thể Ví dụ hệ chun gia chuẩn đốn bệnh y khoa, hệ chuyên gia chuẩn đoán hỏng hóc đường dây điện thoại… Hệ chuyên gia làm việc chuyên gia thực thụ tư vấn cung cấp ý kiến dựa kinh nghiệm chuyên gia đưa vào hệ chuyên gia Giáo sư Edward Feigenbaum trường đại học STANFORD, chuyên gia đầu ngành hệ chuyên gia, cho rằng: hệ chuyên gia hệ thống chương trình máy tính chứa tri thức quấ trình suy diễn lĩnh vực cụ thể để giải tốn khó mà đòi hỏi uyên bác chuyên gia ngành II Cấu trúc Và Đặc Trưng Của Hệ Chuyên Gia Cấu Trúc: Hệ chuyên gia xử lý vấn đề tương tự chuyên gia người Bởi vậy, bao gồm thành phần sau: (1) Bộ giao diện người – máy; (2) Mô Tơ suy diễn; (3) Cơ sở tri thức; (4) Bộ giải thích; (5) Bộ tiếp nhận tri thức; (6) Bộ nhớ làm việc Hình 1.2 Các thành phần hệ chuyên gia +) Bộ giao diện người – máy (User Interface): thực giao tiếp HCG người sử dụng Bộ nhận thông tin từ người sử dụng đưa câu trả lời, lời khuyên, giải thích lĩnh vực +) Mơ Tơ suy diễn (Interface Engine): HCG mơ hình hóa cách lập luận người với modun động suy diễn HCG chứa động suy diễn để tiến hành suy diễn nhằm tạo tri thức dựa kiện, tri thức vùng nhớ làm việc sở tri thức Hai kiểu suy diễn động suy diễn suy diễn tiến suy diễn lùi +) Cơ sở tri thức (Knowledge Base): lưu trữ, biểu diễn tri thức mà hệ đảm nhận, làm sở cho hoạt động hệ CSTT bao gồm sở kiện (facts) sở luật (rules) +) Bộ giải thích (Explanation System): trả lời hai câu hỏi (why)và cách (how) có yêu cầu từ người sử dụng Câu hỏi WHY nhằm mục đích cung cấp lý lẽ để thuyết phục người sử dụng theo đường suy diễn hệ chuyên gia Câu hỏi HOW nhằm cung cấp giải thích đường mà hệ chuyên gia sử dụng để mang lại kết +) Bộ tiếp nhận tri thức (Knowledge Editor): làm nhiệm vụ thu nhận tri thức từ chuyên gia người (human expert), từ kỹ sư xử lý tri thức người sử dụng thông fqua yêu cầu lưu trữ vào CSTT +) Vùng nhớ làm việc (Working Memory): chứa kiện liên quan phát trình đưa kết luận Bộ nhớ làm việc tương đương với nhớ ngắn hạn (Short – Term Memory) mơ hình giải vấn đề người Hệ chuyên gia = (1)+(2)+(3)+(4)+(5)+(6), (2) (3) bắt buộc phải có xây dựng HCG Các Đặc Trưng Hệ Chuyên Gia: Tách tri thức khỏi điều khiển: Thông thường, chương trình truyền thống khối điều khiển (giải thuật) tri thức (cấu trúc liệu) gắn liền với Điều gây khó khăn phát triển thay đổi chương trình Trong HCG, sở tri thức mô tơ suy diễn độc lập với Điều giúp việc phát triển, bảo trìn HCG thuận lời Nghĩa ta bổ sung hay loại kiện, luật mà khồn làm ảnh hưởng đến động suy diễn Và thay đổi điều khiển ta cần chỉnh sửa thuật toán động suy diễn Có tri thức chuyên gia: Một đặc tính quan trọng tri thức sử dụng HCG tri thức chuyên gia Các tri thức thu nhận mã hóa HCG Nó bao gồm tri thức lĩnh vực kỹ giải toán chuyên gia Thuật ngữ chuyên gia để người có kỹ giỏi giải tốn đạt hiểu cao Họ bác sỹ, nhà kinh tế, nhà chơi cờ vua… Tập trung nguồn chuyên gia: Hầu hết chuyên gia có kỹ giỏi giải toán thuộc lĩnh vực Tuy nhiên, chun gia khơng giải tốn khơng thuộc lĩnh vực họ.HCG tương tự vậy, tinh thơng vấn đề huấn luyện, cịn vấn đề ngồi khó có khả giải Một khó khăn chung phát triển HCG thu nạp tri thức từ chuyên gia để giải toán khó Các dự án chun gia thành cơng trực tiếp hướng đến tri thức chuyên sâu biết Một phương án khác chia toán ban đầu thành toán nhỏ Tuy nhiên, tốn giải lại gặp phải khó khăn khác phạm vi rộng lĩnh vực Lập luận dựa ký hiệu: HCG biểu diễn tri thức dạng ký hiệu Ta sử dụng ký hiệu để biểu diễn nhiều dạng tri thức khác Chẳng hạn kiện, khái niệm hay cá luật… Bên cạnh việc biểu diễn câu lệnh (chỉ thị) dạng ký hiệu, HCG xử lý ký hiệu giải vấn đề Lập luận may rủi: Các chuyên gia tinh thông việc sử dụng kinh nghiệm họ để giải toán xét cách hiệu Bằng kinh nghiệm mà họ hiểu vấn đề qua thực tế giữ dạng may rủi Các dạng may rủi điển hình chuyên gia giải vấn đề số trường hợp: Với vấn đề hỏng hóc xe oto, ln kiểm tra hệ thống điện Hiếm người ta mặc áo mùa hè Nếu gặp ung bướu ln kiểm tra lịch sử gia đình người bệnh Hầu hết TTNT ban đầu áp dụng kỹ thuật tìm kiếm may rủi giải vấn đề Minsky sử dụng kỹ thuật Heuristic máy tính với phát biểu “Nếu bạn khơng thể khun máy tính cách thực tốt để thực việc lập trình để thử nhiều cách tiếp cận” Khả giải vấn đề bị hạn chế: Trước dự án HCG bắt đầu, ta phải xác định xem vấn đề giải hay khơng Điều gây ngạc nhiên cho người bắt đầu tiếp xúc với HCG họ thấy TTNT giải tốn Nếu khơng có chun gia để giải vấn đề ta hy vọng HCG giải tốt Nếu vấn đề thay đổi q nhanh thực khơng có HCG giải Ta nên xây dựng HCG để giải toán mà chuyên gia giải Độ phức tạp toán: Các toán nên có độ phức tạp lập luận khơng q dễ khơng q khó Nói chung nhiệm vụ q dễ cần HCG giải phút khó đánh giá cơng sức HCG Vấn đề không phức tạp đến mức gây tình trạng khơng quản lý tầm chun gia Nếu vấn đề có độ phức tạp lớn cố gắng chia thành tốn nhỏ hơn, tốn ta giải HCG Chấp nhận sai lầm: Người ta coi HCG giải vấn đề chuyên gia, tức chấp nhận hệ thống có sai lầm Do HCG mắc sai lầm, ta thấy chương trình truyền thống có ưu HCG Tuy nhiên so sánh tổng thể người ta thấy số trường hợp HCG có lời giải sai lầm mang tính người xử lý thơng tin khơng xác, chí mâu thuẫn Các chương trình truyền thống thường áp dụng cho tốn có thơng tin xác đầy đủ Tuy nhiên với toán mà liệu thiếu sai chương trình truyền thống đưa kết “tất khơng có gì” Ngược lại, với tốn có cấu trúc yếu, thơng tin đầy đủ HCG cho kết luận có lý, chí tối ưu III Ứng Dụng Cho đến nay, hàng nă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 HCG sử dụng công ty, tổ chức quân mà không dược công bố lý bảo mật Lĩnh vực Cấu hình (Configuration) Chuẩn đoán (Diagnosis) Truyền đạt (Instruction) Ứng dụng phát triển Tập hợp thích đáng thành phần hệ thống theo cách riêng Lập luận dựa chứng quan sát Dạy học kiểu thông minh cho sinh viên hỏi (why), (how) 10 Chương 3: XÂY DỰNG ỨNG DỤNG I Phân tích tốn Mục đích tốn Sử dụng đinh cho việc điều khiển lượng nước tưới cho trồng Cách làm Bài toán hệ chuyên gia nhằm điều khiển lượng nước tưới cho trồng Từ dự báo cho người sử dụng biết tình trạng trồng có cần tưới nước hay khơng Với giao diện đơn giản, người sử dụng cần nhập vị trí tự nhập thơng tin liệu hệ thống đưa dự đoán lượng nước cần tưới ngày Để xây dựng hệ chun gia hệ thống cần có sở tri thức, 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 II Dữ liệu Xây dựng định 1.1 Ý tưởng Cây định kiểu mơ hình dự báo, trường hợp có nghĩa ánh từ quan sát tượng thời tiết (nhiệt độ, độ ẩm, mây, gió) tới kết luận mục tiêu tượng (mưa, tạnh ráo) Mỗi nút tương ứng với thuộc tính thời tiết cần dự đốn 19 (độ ẩm cao, trung bình hay thấp…); đường nối với nút thể 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, tạnh ráo), 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 dụng đến lá, sau rút lớp đối tượng thời tiết cần dự dốn gồm thuộc tính để xây dựng tập luật đắn 1.2 Xây dựng định ⮚ Chỉ tập biến mục tiêu tưới nhiều, Tưới nhiều, tưới vừa không tưới ⮚ Chỉ tập thuộc tính: nhiệt độ, độ ẩm, thời tiết, mực nước hồ ⮚ Chỉ giá trị thuộc tính: cao, thấp, trung binh, nắng, dâm mát, mưa, hồ đầy, hồ lưng, hồ cạn 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 đinh ⮚ 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 chuyên 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 ⮚ 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 cịn phẩn tử o Khơng cịn 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: 20 ... khiển lượng nước tưới cho trồng Cách làm Bài toán hệ chuyên gia nhằm điều khiển lượng nước tưới cho trồng Từ dự báo cho người sử dụng biết tình trạng trồng có cần tưới nước hay khơng Với giao... chuyên gia thực thụ tư vấn cung cấp ý kiến dựa kinh nghiệm chuyên gia đưa vào hệ chuyên gia Giáo sư Edward Feigenbaum trường đại học STANFORD, chuyên gia đầu ngành hệ chuyên gia, cho rằng: hệ chuyên. .. systems) Hệ chuyên gia loại hệ CSTT thiết kế cho lĩnh vực ứng dụng cụ thể Ví dụ hệ chuyên gia chuẩn đoán bệnh y khoa, hệ chuyên gia chuẩn đốn hỏng hóc đường dây điện thoại… Hệ chuyên gia làm việc chuyên