Lĩnh vực trí tuệ nhân tạo nói chung và hệ chuyên gia nói riêng góp phần tạo racác hệ thống có khả năng trí tuệ của con người, có được tri thức tiên tiến của các hệ chuyên gia để giải quy
Trang 1TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO CHUYÊN ĐỀ HỌC PHẦN
HỆ CHUYÊN GIA
ĐỀ TI: XÂY DỰNG HỆ CHUYÊN GIA TƯ VẤN NGNH NGHỀ
XUẤT KHẨU LAO ĐỘNG TẠI NHẬT BẢN
Sinh viên thực hiện : LÊ VẠN PHƯƠNG
NGUYỄN HUY ANH Giảng viên hướng dẫn : LÊ THỊ TRANG LINH
Ngành : CÔNG NGHỆ THÔNG TIN
Chuyên ngành : CÔNG NGHỆ PHẦN MỀM
Hà Nội, tháng 09 năm 2024
Trang 2PHIẾU CHẤM ĐIỂM
Sinh viên thực hiện:
STT Họ và tên Nội dung thực hiện Điểm Chữ ký
1 Lê Vạn Phương
2 Nguyễn Huy Anh
Giáo viên chấm điểm:
Giáo viên 1:
Giáo viên 2:
Trang 3MỤC LỤC
CHƯƠNG 1: GIỚI THIỆU VỀ HỆ CHUYÊN GIA 1
1.1 Định nghĩa 1
1.2 Vai trò 1
1.3 Đặc trưng và ưu điểm của hệ chuyên gia 2
1.3.1 Đặc trưng 2
1.3.2 Ưu điểm 3
1.4 Đặc điểm chính của một hệ chuyên gia 4
1.4.1 Các kỹ thuật suy diễn 4
1.4.2 Biểu diễn tri thức 4
1.4.3 Suy luận không chắc chắn 7
1.4.4 Giao tiếp với người dùng 8
1.4.5 Cơ chế giải thích 11
CHƯƠNG 2: PHÂN TÍCH BI TOÁN 13
2.1 Thuật toán suy diễn tiến 13
2.1.1 Giới thiệu thuật toán 13
2.1.2 Hệ luật dẫn 13
2.1.3 Mô hình hệ dẫn luật 14
2.1.4 Vấn đề suy diễn 15
2.1.5 Suy diễn tiến: 15
2.2 Đặt vấn đề 18
2.3 Nội dung thực hiện 19
2.4 Thu thập tri thức 20
2.5 Biểu diễn tri thức 21
2.6 Sơ đồ kiến trúc hệ thống 30
Trang 4DANH MỤC HÌNH ẢNH
Hình 2.1 Mô hình hoạt động của suy diễn tiến 16
Hình 2.2 Thuật toán suy diễn tiến 17
Hình 2.3 Bảng sở thích 22
Hình 2.4 Bảng địa điểm 22
Hình 2.5 Bảng học vấn 23
Hình 2.6 Bảng nhóm ngành nghề 23
Hình 2.7 Bảng ngành nghề 25
Hình 2.8 Các tập luật 30
Hình 2.9 Sơ đồ kiến trúc hệ thống 30
Trang 5LỜI MỞ ĐẦU
Thế giới ngày nay phát triển mạnh mẽ với các hoạt động vô cùng đa dạng vàphức tạp đòi hỏi khả năng giải quyết vấn đề ở mức độ trí tuệ nhân t ạo ngày càngcao Lĩnh vực trí tuệ nhân tạo nói chung và hệ chuyên gia nói riêng góp phần tạo racác hệ thống có khả năng trí tuệ của con người, có được tri thức tiên tiến của các
hệ chuyên gia để giải quyết các vấn đề phức t ạp trong cuộc sống
Hiện nay, để chọn một ngành học phù hợp mà từ đó định hướng nghề nghiệpsau này là một điều không hề dễ dàng.Trên thực tế có rất nhiều người khi ra trườngthất nghiệp hoặc làm trái ngành mình học là khá phổ biến Điều này gây lên sựlãng phí nhân lực và phân bố nhân lực không hợp lý Vì vậy vấn đề chọn nghề xuấtkhẩu lao động đang là vấn đề rất được quan tâm Khi chọn đúng nghề phù hợp, conngười sẽ có sự yên tâm trong học tập, hoạt động tích cực, rèn luyện để đạt được kếtquả làm việc tốt t rong tương lại Nếu chọn đúng ngành phù hợp, con người càng cónhiều cơ hội để thành đạt sau này
Nhắm giải quyết vấn đề trên và để củng cố kiến thức môn Hệ chuyên gia
nhóm chúng em đã chọn đề tài: ”Xây dựng hệ chuyên gia tư vấn nghề nghiệp xuất khẩu lao động tại Nhật Bản”.Đề tài nhằm hỗ trợ công t ác giáo dục,giúp các
em học sinh tự tin ,chủ động t rong việc chọn ngành học phù hợp với năng lực củabản thân và các phụ huynh có thể giúp con em mình chọn con đường đi đến thànhđạt một cách chính xác và phù hợp
Nội dung của báo cáo báo gồm 3 chương:
Chương 1: Giới thiệu về hệ chuyên gia
Chương 2: Phân tích bài toán
Chương 3: Thiết kế, xây dựng chương trình tư vấn.
Cuối cùng nhóm em xin chân thành cám ơn thầy cô đã tạo điều kiện thuận lợi
và hướng dẫn chúng em hoàn thành bài tập lớn này
Nhóm em xin trân thành cảm ơn!
Trang 6CHƯƠNG 1: GIỚI THIỆU VỀ HỆ CHUYÊN GIA
1.1 Định nghĩa
Hệ chuyên gia là một ứng dụng máy tính dùng để giải quyết một loại vấn đềnào đó Ví dụ: chẳng hạn nó dùng trong các ứng dụng chẩn đoán cho người và hệthống Ngoài ra, chúng còn có thể chơi cờ, tạo những dự án tài chính, quản lý hệthống thời gian thực và những kiến thức có thể liên quan đến các lĩnh vực chuyênmôn
Hiện nay, có nhiều hệ chuyên gia được xây dựng với thành phẩm được gọi
là ES Shell, Shell là một phần trong sản phẩm phần mềm trong đó có chứa phầngiao tiếp với người sử dụng, một định dạng cho những tri thức đã được khai báotrong các hệ Cơ sở tri thức và động cơ suy diễn Các kỹ sư sẽ sử dụng shell nào đó
để xây dựng hệ thống cho lĩnh vực chuyên môn của mình Các kỹ sư hệ thống xâydựng bộ giao tiếp, thi ết kế các khai báo định dạng cho tri thức và mã hóa chúng,thực hiện chúng trong động cơ suy diễn
Tùy theo kí ch t hư ớc, của dự án, các kỹ sư chuyên môn và kỹ sư hệ thống cóthể là một Chẳng hạn, như xây dựng một hệ thống bình thường t hì chúng phải trảiqua nhiều công đoạn cần thiết như là thiết kế định dạng cho tri thức, mã hóa trithức chuyên môn và tất cả chúng hầu như là liên quan đến nhau như là m ột thểthống nhất
Một trong những vấn đề mấu chốt khi xây dựng một hệ chuyên gia là quátrình khai thác thông t i n Mã hóa các tri thức chuyên môn vào phần khai báo địnhdạng l uật - đây chính là quá trình khó khăn và là công việc mang tính nhàm chánnhất Mục tiêu chính của chúng ta là cung cấp những kỹ thuật cần thiết cho kỹ sưchuyên môn và kỹ sư hệ thống, để có thể thiết kế những hệ thống mềm dẻo
Đặc điểm khác biệt, giữa động cơ suy diễn và hệ cơ sở tri thức lúc thiết kế
và làm như thế nào để xây dựng và sử dụng chúng
1.2 Vai trò
1
Trang 7Để thấy vai trò của hệ chuyên gia có thể l i ệt kê theo chủng loại vấn đề sauđây:
Điều khiển: Các hệ thống điều khiển quản l ý theo cách phù hợp các hành
vi của hệ thống Chẳng hạn như điều hành quá t rình sản xuất hay điều trịbệnh nhân Một hệ chuyên gia về điều khiển lấy dữ liệu và các thao tác
hệ thống, diễn giải dữ liệu này để hiểu về trạng t hái của hệ t hống hay dựđoán tương lai
Thiết kế: Hệ thống có nhiệm vụ có xây dựng các đối tượng theo các ràng
buộc chẳng hạn như thiết kế hệ thống máy tính với đủ các yêu cầu về cấuhình bộ nhớ, tốc độ Các hệ thống này thường thực hiện các bước côngviệc, các bược tuân theo các ràng buộc riêng
Chuẩn đoán: Các hệ thống chuẩn đoán chỉ ra các chức năng trong hệ
thống hay phát hiện lỗi dựa trên quan sát thông tin
Diễn giải: Các hệ thống diễn giải cho phép hiển tình huống bất ngờ từ
thông tin có sẵn Điển hình l à thông tin rút từ dữ liệu máy dò, thiết bị haykết quả thí nghiệm
Giám sát: Các hệ thống giám sát so sánh thông tin quan sát về hành vi
của hệ thống với trạng thái hệ thống được coi là gay cấn
Ví dụ: Các hệ thống giám sát diẽn giải tín hiệu thu tù đầy dò sóng và sosánh thông tin này với trạng thái đã biết Khi phát hiện điều kiện gay cấn hệthống sẽ kích hoạt một loại nhiệm vụ
Lập kế hoạch: Các hệ thống lập kế hoạch tạo r a các hành động đạt được
đích theo các ràng buộc Chẳng hạn như lập kế hoạch các nhiệm vụ chongười máy để thực hiện chức năng nào đó
Dự đoán: Người ta dùng hệ thống dự báo thời t i ết để biết các kết quả mà
các tình huống gây ra Các hệ thống này dự báo các sự kiện tương laitheo thông tin đã có và theo mô hình bài toán
1.3 Đặc trưng và ưu điểm của hệ chuyên gia
1.3.1 Đặc trưng
2
Trang 8Có 4 đặc trưng cơ bản của một hệ chuyên gia:
Hiệu quả cao (high perform ance) Khả năng trả l ời với m ứ c độ t i nh thôngbằng hoặc cao hơn so với chuyên gia (người) trong cùng lĩnh vực
Thời gian trả lời thoả đáng (adequate response time) Thời gian trả l ờihợp lý, bằng hoặc nhanh hơn so với chuyên gia (người) đế đi đến cùngmột quyết định Hệ chuyên gia là một hệ t hống thời gian thực (real timesystem)
Độ ti n cậy cao (good reliability) Không t hể xảy ra sự cố hoặc giảm sút
độ tin cậy khi sử dụng
Dễ hiểu (understandable) Hệ chuyên gia giải thích các bước suy luậnmột cách dễ hiếu và nhất quán, không giống như cách trả lời bí ẩn củacác hộp đen (black box)
1.3.2 Ưu điểm
– Phổ cập (increased availability): Là sản phẩm chuyên gi a, được phát triểnkhông ngừng với hiệu quả sử dụng không thể phủ nhận
– Giảm giá thành (reduced cost)
– Giảm rủi ro (r educed dangers): Giúp con ngư ời tránh được trong các môitrường rủi ro nguy hiếm
– Tính thường trực (Permanance): Bất kể lúc nào cũng có thể khai thác sửdụng, trong khi con người có thế mệt mỏi, nghỉ ngơi hay vắng mặt
– Đa lĩnh vực (multi pl e expertise) : chuyên gia về nhiều l ĩ nh vục khác nhau
và được khai thác đồng thời bất kế thời gian sử dụng
– Độ tin cậy (increased relialility): Luôn đảm bảo độ t i n cậy khi khai t hác.– Khả năng giảng giải (explanation): Câu trả lời với mức độ tinh thôngđược giảng giải rõ ràng chi tiết, dễ hiểu
– Khả năng trả lời (fast response) : Trả lời t heo t hời gi an t hự c, khách quan.– Tính ổn định, suy l uận có lý và đầy đủ mọi lúc mọi nơi (steady, unemotional, and complete response at all times)
– Trợ giúp thông minh như một người hướng dẫn (intelligent -tutor)
– Có thể truy cập như là một cơ sở dữ liệu thông minh (intelligent
3
Trang 91.4 Đặc điểm chính của một hệ chuyên gia
Các đặc điểm chính của một hệ chuyên gia:
Các kỹ thuật suy diễn: suy diễn tiến, suy diễn lùi
Hỗ trợ suy luận tương đối (không chắc chắn)
Suy diễn lùi:
Là tính hiệu quả để giải quyết vấn đề mà có thể mô hình hóa lại là cấu trúclựa chọn các vấn đề Trang bị cho hệ thống khả năng chọn cái tốt nhất từ những cái
có thể
Kiến thức được cấu t rúc lại và đưa vào các l uật , chúng mô tả làm như thế nàomột khả năng nào đó được chọn Luật chia nhỏ vấn đề thành nhiều vấn đề khácnhỏ hơn Có nhiều vấn đề được đặt ra, khó mà có thể t hống kê đư ợc số lượng cáccâu trả lời và chọn được một câu đúng nhất trong tất cả những câu đó
Suy diễn tiến:
Là sử dụng tập luận tương tự nhau nhằm cho việc sử dụng suy diễn l ùi Mặc
dù vậy, tiến trình suy diễn có khác đi, hệ thống giữ vết, cho tình trạng hi ện tại củagiải pháp và tìm kiếm luật, điều này sẽ dẫn đến việc đi dần đến giải pháp cuốicùng
Ví dụ: Hệ thống thiết lập chỗ cho các đồ đạc trong 1 phòng Có 1 phòng và 1
số các đồ đạc chưa được sắp vào 1 chỗ Hệ thống sẽ chịu trách nhiệm bố trí đồ đạctrong phòng Khi tất cả các món đồ được đặt vào thì hệ thống hoàn tất và tiến hành
in ra lời giải cuối cùng Sau đây l à 1 ví dụ về luật đặt ti vi cạnh ghế trường kỉ: IfTivi chưa được đặt và ghế trường kỉ đặt gần t i vi (X) và (Y) đối diện (X) thì: Đặttivi (X)
4
Trang 101.4.2 Biểu diễn tri thức
Dạng đối tượng- thuộc tính- giá trị:
Cơ chế tổ chức nhận thức của con người thường được xây dựng dựa trên các
sự kiện (fact), xem như các đơn vị cơ bản nhất Một sự kiện là một dạng tri thứckhai báo Nó cung cấp một số hiểu biết về một biến có hay một vấn đề nào đó Một sự kiện có thể được dùng để xác nhận giá t rị của một thuộc tính xác địnhcủa một vài đối tượng VD: Mệnh đề “quả bóng màu đỏ” xác nhận “đỏ” là giá trịthuộc tính “màu” của đối tượng “quả bóng” Kiểu sự kiện này được gọi là bộ baĐối t ư ợng- Thuộc tính- Giá trị (O-A-V- Object-Attribute-Value) Nhưng khi biểudiễn cho một vấn đề có tính tương đối thì chúng ta phải thêm tác nhân chắc chắnvào bên trong luật (CF)
Dạng khung (Frame):
Là một cấu trúc dữ liệu chứa đựng tất cả những tri thức liên quan đến mộtđối t ư ợng cụ thể nào đó Frames có liên hệ chặt chẽ đến khái niệm hướng đốitượng (thực ra frame là nguồn gốc của lập t rình hướng đối tượng) Ngược lại cácphương pháp biểu diễn tri thức đã được đề cập đến, frame “đóng gói” toàn bộ mộtđối tượng, tình huống hoặc cả một vấn đề phức tạp thành m ột thực thể duy nhất cócấu trúc Một frame bao hàm trong nó một khối lượng tương đối lớn tri thức về
5
Trang 11một đối tượng, sự kiện, vị trí, tình huống hoặc những yếu tố khác Do đó, frame cóthể giúp ta mô tả khá chi tiết một đối tượng
6
Trang 121.4.3 Suy luận không chắc chắn
Độ tin cậy:
7
Trang 13 Luật với độ tin cậy:
Có những khẳng định không phải l úc nào cũng là tuyệt đối 100% Có nhi ềuvấn đề chúng ta không thể khẳng định được chúng là hoàn toàn đúng hoặc hoàntoài sai
Chẳng hạn, khi đang đi dạo trên đường, chúng tôi muốn ghé nhà anh bạn
nhưng chợt nghĩ đến việc là “Thường thường, vào lúc 7h tối như thế này thì anh ta
đã đi chơi với bạn gái” Như vậy nghĩa l à sao ? Không phải là anh ta không có
nhà, như ng không hẳn là anh ta có nhà, trạng từ “thường thường” đó chí nh là độtin cậy vào việc anh ta có ở nhà lúc này hay không?
Chẳng hạn, khi phỏng vấn về xem hơi t hì hệ thống sẽ hỏi người dùng rấtnhiều câu hỏi, và chúng sẽ tổng hợp những gì mà người dùng cung cấp để cuốicùng cho ra được các vấn đề mà chúng nghi ngờ Khi đề nghị ra giải pháp chongười sử dụng hệ thống hiển thị thông tin về m ứ c độ tin cậy của mệnh đề Nhưtrong VD sau đây: Độ nghi ngờ về tình tr ạng hết gas là đến 90% trong khi đó hi ệntượng gas bị rò rỉ là lên đến 80%
1.4.4 Giao tiếp với người dùng
Hỏi người dùng:
8
Trang 14Để hỏi người dùng về các thông tin về đặc điểm cá nhân của đối tượng.Giả sử ta có các thuộc tính, hành động của một động vật là eat (ăn), feet (chân, wings (đuôi), neck (cổ), color (màu)
Vị từ ask được thiết kế với mục đích là hỏi đối tượng ấy có thuộc t í nh A,V
và chờ người dùng nhập vào câu trả lời
Ghi nhận trả lời người dùng:
Những thông tin mà người dùng cung cấp sẽ được hệ thống ghi nhận lại vào
cơ sở dữ liệu ( với sự xác nhận của người dùng khi trả lời câu hỏi: yes) bằng vị từassert với mẫu do kỹ sư chuyên môn cung cấp,
Câu hỏi có nhiều giá trị:
9
Trang 15Với tr ư ờng hợp câu hỏi có nhiều giá trị t hì theo thuật toán cải tién cho vị từask là chúng ta thêm mẫu multivalued để ghi nhận thuộc tính nào đó của đối tượngmang nhiều giá trị
Hệ thống menu người dùng:
Khi người dùng sẽ được hệ thống gi ao tiếp thông qua hệ thống menu đã đượcthiết kế Vị từ menuask được thiết kế để người dùng qua đó giao tiếp với hệ t hống Đầu tiên với thuộc tính- gi á trị, khi muốn hỏi giá trị cho thuộc tính nào đó thìcác câu trả lời sẽ tùy thuộc vào danh sách các câu trả lời mà hệ thống đã cung cấpsẵn thông qua tham số MenuList, khi muốn truy vấn người dùng một thuộc tí nhcủa đối tượng nào đó Khi người trả lời câu hỏi hệ thống sẽ kiểm tra xem câu trảlời của người dùng có nằm trong danh sách thực đơn hay không? (Điều này sẽđược kiểm tra thông qua vị từ check-val) Khi đã xác thực là câu trả lời hợp lệ t hì
vị từ assert sẽ ghi nhận câu trả lời vào cơ sở dữ liệu
Tạo Shell:
Cùng giống như m ột phần mềm bình thường, để giao t i ếp với người dùng hệthống phải cần đến shell Shell chẳng qua là m ột cầu nối giao ti ếp trung gian giữangười dùng và hệ thống, thông qua đó người dùng và hệ thống có thể trao đổithông tin, liên lạc với nhau
Quy trình làm viện của hệ thống với người dùng là như sau:
Khởi động shell
Nạp cơ sở tri thức vào hệ thống
Tương tác giữa người dùng và Shell
10
Trang 16 Hệ thống dựa cơ sở trên t hông tin người dùng cung cấp để giải quyếtvấn đề.
1.4.5 Cơ chế giải thích
Giải thích cho người dùng:
Tiếp tục với ví dụ về việc chuẩn đoán hỏng hóc máy tính, ta có thể có ví dụ sau:Máy tính bật được? Sai
Đề nghị Kiểm tra dây nguồn và ổ cắm điện
Trong ngữ cảnh cuộc hội thoại giữa người và hệ thống trợ giúp ở trên, saukhi đưa ra lời đề nghị là kiểm tra dây nguồn và ổ cắm điện thì nếu người dùng cónhu cầu muốn xem là “tại sao lại như vậy” thì hệ thống sẽ cung ứng những l ý dotại sao chúng ta phải chờ Đối với người dùng vi ệc chúng t a gi ải thích lý do tại saochúng ta giải thích sẽ làm người dùng rõ vấn đề hơn
Giải thích cho kỹ sư:
Đối với kỹ sư thiết kế hệ thống và kỹ sư chuyên môn, giải t hí ch đối với họ làmột vi ệc hết sức quan trọng trong quá trình thiết kế và xây dựng hệ, họ có thể căn
11
Trang 17cứ vào đó để lần ra được những bug trong chương trình, có thể căn cứ vào đó đểkiểm tra tính đúng đắn của hệ, dễ dàng phát hiện được những chỗ hỏng về mặcchuyên môn, cũng như các lỗi về kỹ thuật khi hệ thống đã được vận hành
Những giải thích này có thể xóa khỏi hệ thống khi hệ thống đã hoàn t ất ,nhưng đôi khi như thế sẽ làm công tác bảo trì sẽ gặp nhiều khó khăn hơn
Các loại giải thích:
Có 4 loại giải thích thường được sử dụng trong hệ chuyên gia:
Lần vết theo suy luận: của luật (rất hợp đối với người thiết kế hệthống)
Giải thích How: là làm như thế nào để có được suy luận
Giải thích Why: là lời giải thích tại sao hệ thống hỏi vấn đề đó
Giải thích Why not: là kết luận được cung cấp
Như đã khảo sát, quá trình suy diễn lùi cũng là quá trình đối thoại giữangười dùng và hệ chuyên gia Đó là khi hệ chuyên gia cần nhập dữ liệu cho các sựkiện yêu cầu (là nút tận cùng- loại nút số 3) Ở đây người ta có thể có quyền đặt ranhững câu hỏi nghi vấn như Tại sao? Why phải cung cập số liệu này? Hoặc khi đãtìm ra kết luận và xuất kết luận cho người dùng, họ cũng có thể đặt nghi vấn nhưlàm thế nào? How mà có kết quả như vậy?
Trong cả hai t rường hợp trên, để khẳng định niềm tin, hệ chuyên gia phải trảlời được cho người đùng các câu hỏi Why, How Đó chí nh là cơ chế giải thích của
hệ chuyên gia, rõ ràng là cơ chế giải thích phải được cài đặt song song với cơ chếsuy diễn lùi
1.5 Thuật toán suy diễn tiến
1.5.1 Giới thiệu thuật toán
Suy diễn tiến là quá trình suy luận xuất phát từ một số sự kiện ban đầu, xácđịnh các sự kiện có thể được "sinh" ra từ sự kiện này Trong phương pháp nàyngười s ử dụng cung cấp các sự kiện cho hệ chuyên gia để hệ thống(máy suy diễn)tìm cách rút ra các kết luận có thể Kết luận được xem là các thuộc tính có thể được
12