Thiết kế chương trình

Một phần của tài liệu Tiểu luận môn TOÁN CHO KHOA HỌC MÁY TÍNH LÝ THUYẾT LOGIC VỊ TỪ VÀ MỘT SỐ ỨNG DỤNG CỦA LOGIC VỊ TỪ (Trang 25)

Chương trình được thết kế và thực thi trên môi trường ngôn ngữ lập trình Prolog. Giao diện được trình bày trong chương trình sử dụng giao diện dòng lệnh của Prolog. Phần cơ sở dữ liệu về nhận biết biển báo giao thông được xây dựng dựa trên các đặc điểm, hình dáng, đặc trưng của biển báo đó. Chẳng hạn, ta thấy rằng hầu hết các biển báo thường có các hình dáng như: hình tròn, hình tam giác, hình chữ nhật. Trong số đó có biển báo có đường viền bao quanh, một số khác thì không có. Phần nền và màu là phần phía trong biển, trên phần nền thường có một hình đặc trưng nào đó. Thông thường thì ý nghĩa của biển báo liên quan phần lớn ở hình đặc trưng này. Do đó, chỉ cần xác định được hình đặc trưng, chúng ta có thể dễ nhận biết sự khác biệt của biển báo đó so với biển khác.

Hai biển báo cấm người đi bộ và cấm xe mô tô sau là ví dụ:

biển báo cấm người đi bộ và cấm xe moto

Ta có thể biểu diễn sự khác nhau theo mệnh đề IF-THEN

IF

Hình của biển báohình tròn Biển báođường viền

Đường viền màu đỏ

Hình đặc trưng hình người

Hình đặc trưng bị gạch chéo THEN

Biển báobiển cấm người đi bộ IF

Hình của biển báohình tròn Biển báođường viền

Đường viền màu đỏ

Hình đặc trưng hình người lái xe moto

Hình đặc trưng bị gạch chéo THEN

Biển báobiển cấm cấm xe mô tô

Từ sự mô tả ở trên, chúng ta có thể dễ dàng triển khai trong ngôn ngữ lập trình Prolog như sau theo kiểu cặp đôi (Attribute-Value pairs), bằng cách suy diễn ngược lại tạo thành các luật để nhận biết một biển báo:

Bienbao( cam_nguoi_di_bo):- Bien_bao_hinh(tron), Bien_co(duong_vien), Duong_vien_mau(do), Hinh_dac_trung(hinh_nguoi), Tinh_trang_hinh(bi_gach_cheo). Bienbao( cam_xe_moto):-

Bien_bao_hinh(tron), Bien_co(duong_vien), Duong_vien_mau(do),

Hinh_dac_trung(nguoi_lai_xe_moto), Tinh_trang_hinh(bi_gach_cheo).

Với tập hợp nhiều biển báo được xây dựng như trên tạo nên thành phần cơ sở dữ liệu cho hệ thống. Ta được một chương trình như sau:

Trường hợp thành công

Trường hợp không thành công

Một phần của tài liệu Tiểu luận môn TOÁN CHO KHOA HỌC MÁY TÍNH LÝ THUYẾT LOGIC VỊ TỪ VÀ MỘT SỐ ỨNG DỤNG CỦA LOGIC VỊ TỪ (Trang 25)