Đây là các hệ dựa vào máy tính hỗ trợ cho người ra quyết định giải các bài toán nửa cấu trúc Keenand Scott Morton, 1978 • HHTQĐ là tập các thủ tục dựa trên mô hình nhằm xử lý dữ liệu vàp
Trang 1TRƯỜ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ệ trợ giúp quyết định
Đề tài: Hệ chuyên gia tư vấn hướng nghiệp theo sở thích, tính cách
Giáo viên hướng dẫn : Th.s Vũ Đức Huy
Hà Nội 8/2013
Trang 2MỤC LỤC
CHƯƠNG 1.TỔNG QUAN VỀ HỆ TRỢ GIÚP QUYẾT ĐỊNH 5
1.1 Hệ thống thông tin 5
1.2 Hệ trợ giúp ra quyết định 5
1.2.1 Quyết định 5
1.2.2 Quá trình ra quyết định 7
1.3 Hệ trợ giúp quyết định 9
1.3.1 Khái niệm hệ hỗ trợ quyết định 9
1.3.2 Các thành phần của hệ hỗ trợ quyết định 9
1.3.3 Mô hình ra quyết định 13
1.3.4 Phân loại hệ hỗ trợ ra quyết định 14
1.3.5 Năng lực của hệ hỗ trợ quyết định 15
1.3.6 Phân tích “What-if” 16
1.4 Quá trình ứng dụng tin học trong các bài toán phi cấu trúc 16
1.4.1 Bài toán phi cấu trúc 16
1.4.2 Loại bài toán phi cấu trúc: 16
1.5 Giới thiệu về Prolog 17
1.5.1 Prolog là ngôn ngữ lập trình logich 17
1.5.2 Cú pháp Prolog 18
1.5.3 Kiểu dữ liệu cấu trúc của Prolog 23
1.5.4 So sánh và hợp các dạng 24
CHƯƠNG 2: HỆ CHUYÊN GIA TƯ VẤN HƯỚNG NGHIỆP 26
2.1 Khái niệm về nghề nghiệp và hướng nghiệp 26
2.1.1 Khái niệm nghề nghiệp và việc làm 26
2.1.2 Khái niệm hướng nghiệp 26
2.2 Thực trạng tư vấn hướng nghiệp cho hoc sinh THPT hiện nay 26
2.3 Giải pháp tư vấn hướng nghiệp cho học sinh THPT 27
2.3.1 Mô hình hệ chuyên gia cho bài toán 27
2.3.2 Một số nhóm nghề nghiệp dựa trên cơ sở lý luận của John Holland 28
2.3.3 Xây dựng tập sự kiện và luật cho bài toán 34
CHƯƠNG 3 : CÀI ĐẶT VÀ THỬ NGHIỆM 36
3.1 Môi trường cài đặt chương trình 36
3.2 Giao diện 36
3.2.1 Form chính 36
3.2.2 Form Tri thức 37
3.2.3 Form Giới thiệu 37
3.4 Hướng dẫn sử dụng 38
CHƯƠNG 4: TỔNG KẾT VÀ ĐÁNH GIÁ KẾT QUẢ 40
4.1 Kết quả đạt được 40
4.2 Những hạn chế 40
Trang 3Mở Đầu
1 Sự cần thiết của tư vấn nghề nghiệp
Trước mỗi mùa tuyển sinh, công tác tư vấn tuyển sinh có vai trò hết sức quan trọng
Vì thế, từ nhiều năm nay, các nhà trường đã có sự quan tâm trong công tác định hướngnghề nghiệp cho học sinh Tư vấn có hiệu quả thiết thực sẽ tạo điều kiện thuận lợicho học sinh cuối cấp chọn đúng trường, đúng ngành phù hợp với nguyện vọng, sởthích, năng lực học tập của bản thân và nhu cầu về nguồn nhân lực của xã hội Chọnngành, chọn trường thi đúng không chỉ là khâu quan trọng ảnh hưởng tới kết quả kỳthi của mỗi thí sinh mà còn tránh lãng phí thời gian, tiết kiệm tiền của cho gia đình và
xã hội
Hiện nay, với sự phát triển của công nghệ, học sinh có thể dễ dàng tìm kiếm thông tin
từ nhiều nguồn khác nhau từ: Sách, báo, internet, trao đổi thông tin với học sinh khóatrên Nhưng nhiều khi thông tin trên internet và thực tế lại có một khoảng cách rất lớnnên việc lựa chọn những thông tin chính xác, tin cậy thì lại cần có sự định hướng rõrang Trên thực tế, có rất nhiều người phải thất nghiệp hay phải làm việc không đúngvới chuyên môn là khá phổ biến, họ thấy khó khăn trong việc đáp ứng những yêu cầucủa nghề đặt ra, không cảm thấy hứng thú và muốn gắn bó với nghề nghiệp mà mình
đã chọn Điều này đã gây nên sự lãng phí nhân lực rất lớn và phân bố nhân lực khônghợp lý Theo điều tra của Bộ Giáo dục- Đào tạo công bố năm 2011, cả nước có tới63% sinh viên tốt nghiệp đại học - cao đẳng ra trường không có việc làm, 37% có việclàm nhƣng nhiều sinh viên phải làm trái nghề hoặc phải qua đào tạo lại Tư vấn hướngnghiệp được xem là một vấn đề nóng hiện nay, nhất là trong trường phổ thông Khiđược định hướng đúng đắn về nghề, con người sẽ yên tâm với nghề mình đã lựa chọn,
có thái độ chủ động, tích cực học tập, rèn luyện để có thể hoạt động tốt lĩnh vực nghềnghiệp trong tương lai Tư vấn hướng nghiệp được xem là một vấn đề nóng hiện nay,nhất là trong trường phổ thông Khi được định hướng đúng đắn về nghề, con người sẽyên tâm với nghề mình đã lựa chọn, có thái độ chủ động, tích cực học tập, rèn luyện
để có thể hoạt động tốt lĩnh vực nghề nghiệp trong tương lai Nếu chọn được đúngnghề phù hợp, con người càng có nhiều cơ hội để thành đạt sau này Tư vấn hướngnghiệp giúp cho thanh thiếu niên chọn nghề một cách có cơ sở, giúp họ có được nhậnthức đúng đắn hơn về nghề nghiệp, phát huy tối đa năng lực sáng tạo, nâng cao chấtlượng cuộc sống, phù hợp với nền kinh tế vận hành theo cơ chế thị trường, đồng thờiđáp ứng được nhu cầu của xã hội, tránh lãng phí về đào tạo, sử dụng lao động hợp lý,góp phần vào việc phát triển kinh tế xã hội bền vững của đất nước
Nhằm giải quyết những vấn đề trên, nhóm em xin chọn đề tài “Xây dựng hệ chuyêngia tư vấn hướng nghiệp dựa trên tính cách và sở thích” Đề tài giúp các em học sinh
tự tin, chủ động trong việc chọn nghề nghiệp phù hợp với tính cách, năng lực bản thân
và các phụ huynh có thể giúp con em mình chọn con hướng đi chính xác và phù hợp
2 Mục tiêu của đề tài
Giúp cho học sinh có được ý thức như là chủ thể trong sự lựa chọn nghề, có địnhhướng đúng khi chọn nghề dựa trên cơ sở hiểu biết khoa học về nghề nghiệp, về nănglực, sở trường của bản thân, những yêu cầu của nghề đối với người lao động, triểnvọng phát triển của nghề ở địa phương và nhu cầu nhân lực xã hội
Trang 43 Đối tượng và phạm vi của đề tài
Đê tài hướng đến đối tượng là học sinh trung học phổ thông, là những người đangchuẩn bị cho mình nghề nghiệp trong tương lai cũng như các phụ huynh học sinhtrong việc định hướng nghề nghiệp cho con cái
4 Phương pháp nghiên cứu
- Thu thập nghiên cứu các tài liệu trên Internet
- Nội dung tư vấn hướng nghiệp
- Giáo trình Hệ chuyên gia (PGS.TS Phan Huy Khánh)
- Một số tài liệu có liên quan
- Tiến hành nghiên cứu về bản thân cung như bạn bè
- Tiến hành phân tích, thiết kế hệ thống và triển khai xây dựng
- Xây dựng tập luật làm co sở trí thức cho chương trình
- Cài đặt thuật toán suy diễn để đưa ra lời khuyên dựa vào các tập luật
Trang 5CHƯƠNG 1.TỔNG QUAN VỀ HỆ TRỢ GIÚP QUYẾT ĐỊNH
1.1 Hệ thống thông tin
1.2 Hệ trợ giúp ra quyết định
1.2.1 Quyết định
1.2.1.1 Khái niệm về quyết định
Đó là một lựa chọn về “đường lối hành động” (Simon 1960;Costello & Zalkind 1963;
Churchman 1968), hay “chiến lược hành động” (Fishburn 1964)dẫn đến một mục tiêu mong muốn (Churchman 1968)
“Một quá trình lựa chọn có ý thức giữa hai hay nhiều phương án đểchọn ra một phương án tạo ra được kết quả mong muốn trong cácđiều kiện ràng buộc đã biết”
• HHTQĐ là các hệ dựa trên máy tính, có tính tương tác, giúp cácnhà ra quyết định dùng dữ liệu và mô hình để giải quyết các bài toánphi cấu trúc(S Morton, 1971)
• HHTQĐ kết hợp trí lực của con người với năng lực của máy tính đểcải tiến chất lượng của quyết định Đây là các hệ dựa vào máy tính
hỗ trợ cho người ra quyết định giải các bài toán nửa cấu trúc (Keenand Scott Morton, 1978)
• HHTQĐ là tập các thủ tục dựa trên mô hình nhằm xử lý dữ liệu vàphán đoán của con người để giúp nhà quản lý ra quyết định (Little,1970)
• Thay đổi tùy theo ngữ cảnh, chưa có định nghĩa được chấp nhậnrộng rãi
1.2.1.2 Hiểu rõ thêm về ra quyết định
Việc đưa ra quyết định đối với một vấn đề xuất hiện trong khắp cáclĩnh vực, hoạt động của đời sống mà đôi khi chúng ta không nhận ra
Từ những việc đơn giản như chọn một bộ quần áo để đi dự tiệc chođến các công việc lớn lao như phân bố ngân sách vào các chươngtrình của quốc gia đều là các công việc đưa ra quyết định
“Một quá trình lựa chọn có ý thức giữa hai hay nhiều phương án đểchọn ra một phương án tạo ra được một kết quả mong muốn trongcác điều kiện ràng buộc đã biết”
Trang 6- Quyết định có kết luận nào thì hợp lý/hợp lệ trong hoàn cảnhnào ?
Quyết định có thể là những thay đổi trạng thái kiến thức
- Quyết định có chấp nhận một kiến thức mới không?
Tại sao phải hỗ trợ ra quyết định ?
- Nhu cầu hỗ trợ ra quyết định
¾ Ra quyết định luôn cần xử lý kiến thức
¾ Kiến thức là nguyên liệu và thành phẩm của ra quyết định, cầnđược sở hữu hoặc tích lũy bởi người ra quyết định
- Giới hạn về nhận thức (trí nhớ có hạn )
- Giới hạn về kinh tế (chi phí nhân lực )
- Giới hạn về thời gian
- Áp lực cạnh tranh
Bản chất của hỗ trợ ra quyết định
- Cung cấp thông tin, tri thức
- Có thể thể hiện qua tương tác người – máy, qua mô phỏng
Các yếu tố ảnh hưởng đến ra quyết định
- Công nghệ- thông tin – máy tính
- Tính cạnh tranh – sự phức tạp về cấu trúc
- Thị trường quốc tế- ổn định chính trị- chủ nghĩa tiêu thụ
- Các thay đổi biến động
Khung cảnh của quyết định
-Quá trình quyết định hợp lý: (Olson,1998)
-Nhận diện vấn đề
-Xây dựng mô hình và thu thập dữliệu
-Tạo sinh giải pháp
Trang 7• Mô hình hóa quyết định
- Mô hình: trừu tượng của thực tại, theo một cách nhìn
- Hai dạng mô hình hóa quyết định trong kinh doanh (theo thứ tự triểnkhai !)
- Mô hình nhận thức (mental model) – về bối cảnh kinh doanh – như
là lý thuyết của người ra quyết định về kinh doanh tốt/xấu
- Mô hình khoa học quản lý (management science - MS): mô tả toánhọc về một số bối cảnh kinh doanh
- Ý tưởng của các mô hình DSS: kết hợp các mô hình dạng MS (phùhợp ít nhiều,với các giả thiết khác nhau về bài toán nghiệp vụ) vớiphân giải của người ra quyết định
- Mục tiêu của DSS & EIS: cung cấp các công cụ trợ giúp việc pháttriển và cải thiện các mô hình nhận thức (về nhân & quả) của người
ra quyết định bằng cách cung cấp dữ liệu nhanh, đúng & áp dụngcác mô hình toán học
- Các hệ chuyên gia (ES) thường dùng các mô hình nhận thức phứctạp hơn
Trang 81.2.2 Quá trình ra quyết định
1.2.2.1 Phân loại quyết định
Có thể phân ra bốn loại quyết định như sau:
- Quyết định có cấu trúc (Structured Decision): Các quyết định màngười ra quyết định biết chắc chắn đúng
- Quyết định không có cấu trúc (NonStructured Decision): Cácquyết định mà người ra quyết định biết là có nhiều câu trả lời gầnđúng và không có cách nào để tìm ra câu trả lời chính xác nhất
- Quyết định đệ quy (Recurring Decision): Các quyết định lặp đi lặplại
- Quyết định không đệ quy (Nonrecurring Decision): Các quyết địnhkhông xảy ra thường xuyên
1.2.2.2 Các giai đoạn của quá trình ra quyết định
Theo Simon, quá trình ra quyết định và quan hệ giữa chúng đượcgiới thiệu ở hình 1.1:
Hình 1.1 - Các giai đoạn của quá trình ra quyết định
1.2.2.3 Tìm kiếm và đánh giá các lựa chọn một phần rất quan trọng trong hỗ trợ ra quyết định.
Giai đoạn lựa chọn (Choice Phase) là giai đoạn quan trọngnhất của quá trình ra quyết định Giai đoạn này bao gồm babước chính sau đây:
- Tìm kiếm lựa chọn
- Đánh giá lựa chọn
- Giới thiệu lựa chọn
Trong trường hợp này người ra quyết định muốn sử dụng mô hìnhquy chuẩn (Normative model) để tìm kiếm một lựa chọn tối ưu,thì Hệ hỗ trợ có thể sử dụng phương pháp vét cạn (Blindsearch) để duyệt hết các lựa chọn hay mô hình toán học để phântích
Trang 91.3 Hệ trợ giúp quyết định
1.3.1 Khái niệm hệ hỗ trợ quyết định
Hình 1.2 - Ưu điểm của Hệ hỗ trợ ra quyết định
Trong thập niên 1970, Scott Norton đưa những khái niệm đầutiên về hệ trợ giúp quyết định (Decision Support System, DSS).Ông định nghĩa “DSS là các hệ dựa trên máy tính, có tính tương tác,giúp các nhà ra quyết định dùng dữ liệu và mô hình để giải các bàitoán phi cấu trúc, những bài toán mờ, phức tạp với lời giải khônghoàn chỉnh”
1.3.2 Các thành phần của hệ hỗ trợ quyết định
Một hệ hỗ trợ quyết định gồm có ba thành phần chính:
- Quản lý dữ liệu
- Quản lý mô hình
- Phân hệ quản lý dựa vào kiến thức
- Quản lý giao diện người dùng
Trang 10Hình 1.3 - Các thành phần của hệ hỗ trợ quyết định
Phân hệ quản lý dữ liệu gồm một cơ sở dữ liệu (database) chứa
các dữ liệu cần thiết của tình huống và được quản lý bởi một hệquản trị cơ sở dữ liệu (DBMS – data base managementsystem) Phân
hệ này có thể được kết nối với nhà kho dữ liệu của tổ chức
(data warehouse) – là kho chứa dữ liệu của tổ chức có liên đới đếnvấn đề ra quyết định
Phân hệ quản lý mô hình còn được gọi là hệ quản trị cơ sở mô
hình (MBMS – model base management system) là gói phần mềmgồm các thành phần về thống kê, tài chánh, khoa học quản lý haycác phương pháp định lượng nhằm trang bị cho hệ thống năng lựcphân tích; cũng có thể có các ngôn ngữ mô hình hóa ở đây Thànhphần này có thể kết nối với các kho chứa mô hình của tổ chức hay ởbên ngoài nào khác
Phân hệ quản lý dựa vào kiến thức có thể hỗ trợ các phân hệ
khác hay hoạt động độc lập nhằm đưa ra tính thông minh của quyếtđịnh đưa ra Nó cũng có thể được kết nối với các kho kiến thức kháccủa tổ chức
Phân hệ giao diện người dùng giúp người sử dụng giao tiếp với
và ra lệnh cho hệ thống Các thành phần vừa kể trên tạo nênHHTQĐ, có thể kết nối với intranet/extranet của tổ chức hay kết nốitrực tiếp với Internet
Trang 11Phân hệ quản lý dữ liệu bao gồm các phần tử sau (phần trong khunghình chữ nhật trên hình vẽ)
- Cơ sở dữ liệu
- Hệ quản trị cơ sở dữ liệu
- Danh mục dữ liệu
- Phương tiện truy vấn
Cơ sở dữ liệu (CSDL): tập hợp các dữ liệu có liên quan phục vụ chonhu cầu của tổ chức, dùng bởi nhiều người (vịtrí), đơn vị chức năng
và ở các ứng dụng khác nhau
CSDL của HHTQĐ có thể lấy từ nhà kho dữ liệu, hoặc được xây dựngtheo yêu cầu riêng Dữ liệu được trích lọc từ các nguồn bên trong vàbên ngoài tổ chức Dữ liệu nội tại thường từ hệ xử lý giao tác (TPS –transaction processing system) của tổ chức, có thể ở các đơn vịchứcnăng khác nhau
Hệ quản trị cơ sở dữ liệu: thường các HHTQĐ trang bị các hệ quản trị
cơ sở dữ liệu tiêu chuẩn (thương mại) có khả năng hỗ trợ các tác vụquản lý – duyệt xét các bản ghi dữ liệu, tạo lập và duy trì các quan
hệ dữ liệu, tạo sinh báo cáo theo nhu cầu Tuy nhiên, sức mạnhthực sự của các HHTQĐ chỉ xuất hiện khi tích hợp dữ liệu với các mô
Trang 12hình của nó Phương tiện truy vấn: trong quá trình xây dựng và sửdụng HHTQĐ.
Phân hệ quản lý dựa trên kiến thức
• Cung cấp khả năng cần để giải quyết một vài khía cạnh của bàitoán và tăng cường năng lực vận hành của các thành phần khác củaHHTQĐ
• Silverman (1995) đề nghị 3 cách tích hợp các hệ chuyên gia dựatrên kiến thức
với mô hình toán:
- Trợ giúp quyết định dựa trên kiến thức - giúp hỗ trợ các bước của quátrình quyết định không giải quyết được bằng toán
- Các hệ mô hình hóa quyết định thông minh - giúp người dùng xâydựng, áp dụng và quản lý thư viện các mô hình
- Các hệ chuyên gia phân tích quyết định - tích hợp các phương pháp
Trang 141.3.4 Phân loại hệ hỗ trợ ra quyết định
Hệ hỗ trợ ra quyết định được phân loại dựa trên nhiều tiêu chí Hiệnnay, vẫn chưa có cách phân loại thống nhất Sau đây là hai cách phổbiến nhất
PHÂN LOẠI HỆHỖTRỢQUYẾT ĐỊNH THEO KẾT XUẤTHỆTHỐNG
Trang 151.3.5 Năng lực của hệ hỗ trợ quyết định
Năng lực của DSS, người ta thấy:
1 Cung cấp trợ giúp cho người ra quyết định trong những tìnhhuống không cấu trúc và nửa cấu trúc Sự trợ giúp được cung cấpcho các mức quản lý khác nhau từ người thực thi đến các nhà quảnlý
2 Sự trợ giúp cho cá nhân và cho cả nhóm
3 DSS trợ giúp cho các giai đoạn của quá trình ra quyết định: Giaiđoạn nhận định, thiết kế, lựa chọn và cuối cùng ra quyết định
4 DSS trợ giúp cho sự đa dạng của quá trình ra quyết định và cáckiểu quyết định
5 DSS thích nghi và mềm dẻo Do vậy người dùng có thêm xóa, kếthợp thay đổi hoặc sắp đặt lại các phần tử cở bản để DSS có thểcung cấp sự trả lời nhanh chóng cho những tình huống không mongđợi
6 DSS dễ sử dụng, người dùng cảm thấy thoải mái đối với hệ thống
do DSS thân thiện dùng, mềm, dẻo, những khả năng đồ họa mạnh
và có ngôn ngữ giao diện người và máy thích hợp
7 DSS cố gắng nâng cao hiệu quả của quá trình ra quyết định,chẳng hạn như đúng đắn, chính xác, thời gian và chất lượng
8 Người ra quyết định điều khiển toàn bộ các bước của quá trình raquyết định trong việc giải quyết các bài toán DSS hướng vào sự trợgiúp chứ không thay thế những người ra quyết định
Trang 161.3.6 Phân tích “What-if”
Một người làm mô hình tạo ra những dự đoán và những giả định đểđánh giá dữ liệu vào Công việc này nhiều khi để đánh giá tương laikhông chắc chắn Khi mô hình được giải quyết, các kết quả tất nhiênphụ thuộc vào những dữ liệu này Phân tíc h nhạy cảm cố gắng kiểmtra sự tác động của những sự thay đổi của dữ liệu vào trên nhữnggiải pháp được đề nghị (các biến kết quả) Kiểu của phân tích nhạycảm được gọi là phân tích “What - if”, bởi vì nó được cấu trúc như là
“Điều gì xảy ra cho giải pháp nếu biến vào, giả thiết, hoặc giá trịcủa tham số được thay đổi”
1.4 Quá trình ứng dụng tin học trong các bài toán phi cấu trúc
1.4.1 Bài toán phi cấu trúc
Bài toán phi cấu trúc là bài toán không có thuật toán ( tức là không
có lời giải chính xác trên máy tính điện tử) mà dùng máy tính điện tử
để hỗ trợ một số phần việc
HHTQĐ cơ bản hỗ trợ các nhà ra quyết định trong các tình huốngnửa cấu trúc và phi cấu trúc bằng cách kết hợp phán xử của conngười và xử lý thông tin bằng máy tính Các bài toán như vậy khôngthể/không thuận tiện giải quyết được chỉ bằng các công cụ máy tínhhóa hay các phương pháp định lượng
1.4.2 Loại bài toán phi cấu trúc:
Loại bài toán đó là loại bài toán quản lý và ra quyết định
1.4.2.1 Quản lý
Trang 17- Quản lý là ra quyết định
1.4.2.2 Ra quyết định
Ra quyết định ở một quá trình lựa chọn có ý thức giữa hai hoặcnhiều phương án để chọn ra một phương án này sẽ tạo ra một kếtquả mong muốn trong các điều kiện ràng buộc đã biết
i Hệ thống mục tiêu và môi trường
ii Dự kiến giải pháp
iii Khái niệm cơ bản và các kĩ thuật
1.5 Giới thiệu về Prolog
1.5.1 Prolog là ngôn ngữ lập trình logich
Prolog là ngôn ngữ được sử dụng phổ biến nhất trong các ngôn ngữ lập trình logic.Ngôn ngữ Prolog do giáo sư người Pháp Alain Colmerauer và nhóm nghiên cứu củaông đề xuất lần đầu tiên tại trường đaih học Marseille đầu những năm 1970 Đến năm
1980, Prolog nhanh chóng được áp dụng rộng rãi ở châu Âu, được người Nhật chọnlàm ngôn ngữ phát triển máy tính thế hệ thứ 5 Prolog được cài đặt trên máy tínhApple II, IBM-PC, Macintosh
Trang 18Prolog con được gọi là ngôn ngữ lập trình kí hiệu tương tự các ngôn ngữ lập trìnhhàm, hay lập trình phi số Prolog rất thích hợp để giải quyết các bàn toán liên quanđến các đối tượng và mối quan hệ giữa chúng.
Prolog được sử dụng phổ biến trong lĩnh vực trí tuệ nhân tạo Nguyên lý lập trinhlogic dựa trên các mệnh đề Horn Một mệnh đề Horn biểu diễn một sự kiện hay một
sự việc nào đó đúng hoặc không đúng, xảy ra hoặc không xảy ra
1.5.2 Cú pháp Prolog
a) Các thuật ngữ
Một chương trình Prolog là một cơ sở dữ liệu gồm các mệnh đề Mỗi mệnh đề đượcxây dựng từ các vị từ Một vị từ là một phát biểu nào đó về các đối tượng có giá trịchân đúng hoặc sai Một vị từ có thể có các đối là các nguyên lôgich Mỗi nguyên tửbiểu diễn một quan hệ giữa các hạng Như vậy, hạng và quan hệ giữa các hạng tạothành mệnh đề
Hạng được xem là những đối tượng “dữ liệu” trong một trình Prolog Hạng có thể làhạng sơ cấp gồm hằng, biến và các hạng phức hợp Các hạng phức hợp biểu diễn cácđối tượng phức tạp của bài toán cần giải quyết thuộc lĩnh vực đang xét Hạng phứchợp là một hàm tử có chứa các đối, có dạng
Tên_hàm_tử (Đối_1, , Đối_n)
Tên hàm tử là một chuỗi chữ cái và/hoặc chữ số được bắt đầu bởi một chữ cái thường.Các đối có thể là biến, hạng sơ cấp, hoặc hạng phức hợp Trong Prolog, hàm tử đặcbiệt “.” biểu diễn cấu trúc danh sách Kiểu dữ liệu hàm tử tương tự kiểu bản ghi vàdanh sách tương tự kiểu mảng trong các ngôn ngữ lập trình mệnh lệnh
Mệnh đề có thể là một sự kiện, một luật, hay một câu hỏi
Prolog quy ước viết sau mỗi mệnh đề một dấu chấm để kết thúc như sau:
Trang 19được sử dụng trong Prolog Lý do chủ yếu ở chỗ Prolog là ngôn ngữ lập trình ký hiệu,phi số.
- Kiểu hằng logic
Prolog sử dụng hai hằng lôgich có giá trị là true và fail Thông thường các hằng lôgichkhông được dùng như tham số mà được dùng như các mệnh đề Hằng fail thườngđược dùng để tạo sinh lời giải bài toán
- Kiểu hằng chuỗi kí tự
Các hằng là chuỗi (string) các ký tự được đặt giữa hai dấu nháy kép
"Toto \#\ {@ tata" chuỗi có tuỳý ký tự
"" chuỗi rỗng (empty string)
"\"" chuỗi chỉcó một dấu nháy kép
-Kiểu hằng nguyên tử
Các hằng nguyên tử Prolog là chuỗi ký tự ở một trong ba dạng như sau:
(1) Chuỗi gồm chữ cái, chữ sốvà ký tự _ luôn luôn được bắt đầu bằng một chữ cái inthường
Trang 20Từ cây gia hệ trên đây, có thể tiếp tục viết các vị từ khác để nhận được một chươngtrình Prolog gồm 6 vị từ như sau:
-Định nghiã luật đệ quy:
Bây giờ ta tiếp tục thêm một quan hệ mới vào chương trình Quan hệ này chỉ sử dụngquan hệ parent, và chỉ có hai luật Luật thứ nhất định nghĩa các tổ tiên trực tiếp, luậtthứ hai định nghĩa các tổ tiên gián tiếp
Ta nói rằng X là một tổ tiên gián tiếp của Z nếu tồn tại một liên hệ cha mẹ (ông bà)giữa X và Z:
Trong cây gia hệ ở ví dụ trên, Tom là tổ tiên trực tiếp của Liz, và tổ tiên gián tiếp củaSue Ta định nghĩa luật 1 (tổ tiên trực tiếp) như sau: