Chƣơng 2 : ỨNG DỤNG LOGIC MỜ TRONG TÌM ĐƢỜNG
2.1. Giới thiệu Logic mờ
Trong cuộc sống, con ngƣời truyền thông tin cho nhau chủ yếu là bằng ngôn ngữ tự nghiên. Ngôn ngữ tự nhiên thƣờng đa nghĩa hoặc thâm chí có lúc còn thiếu tính chính xác, nhƣng nó vẫn là phƣơng tiện chính mà con ngƣời dùng để truyền thông tin cho nhau. Với khả năng đặc biệt của mình, con ngƣời thƣờng vƣợt qua những hạn chế của ngôn ngữ tự nhiên (đa nghĩa, chiếu chính xác, không rõ ràng) và thƣờng là hiểu đúng các thông tin nhận đƣợc. Đây là điều mà máy móc chƣa thể thực hiện đƣợc. Tham vọng của các nhà khoa học là mong muốn máy móc có khả năng hiểu đƣợc ngôn ngữ tự nghiên, có khả năng suy diễn, có khả năng xử lý thông tin tƣơng tự nhƣ bộ óc con ngƣời, để con ngƣời có thể ra lệnh cho máy móc bằng ngôn ngữ tự nhiên, yêu cầu đến sự trợ giúp của máy móc mà qua đó đòi hỏi máy móc phải xử lý các dữ liệu mang nhiều ý nghĩa khác nhau, có khi thiếu tính chính xác, chƣa đƣợc xác định một cách rõ ràng giống nhƣ ngôn ngữ tự nhiên.
Ví dụ nhƣ chúng ta có thể yêu cầu máy móc chỉ ra một đƣờng đi “tốt nhất” để đi từ vị trí A đến một ví trí B nào đó. Việc có tồn tài một đƣờng đi từ A đến B hay không thƣờng là có thể xác định một cách rõ ràng, thậm chí có thể chỉ ra nhiều đƣờng đi khác nhau để có thể đi từ A đến B. Vấn đề là xác định con đƣờng nào là “tốt nhất” để đi từ A đến B. Ở đây, ngay mệnh đề “tốt nhất” bản thân đã không đƣợc xác định một cách rõ ràng, thế nào là tốt nhất. Một con đƣờng tốt có thể là con đƣờng ngắn nhất những cũng có thể không phải vậy. Nếu đƣờng ngắn nhƣng dễ xảy ra tắc đƣờng thì chƣa hẳn đã là “tốt”, thậm chí còn “tệ” hơn con đƣờng dài nhƣng luôn thông suốt. Độ tốt của con đƣờng phụ thuộc vào nhiều yếu tố, có những yếu tố cố định và xác định đƣợc ngay từ đầu, nhƣng cũng có những yếu tố là chƣa xác định và thƣờng xuyên thay đổi ví dụ nhƣ yếu tố tắc đƣờng, sự cố bất thƣờng khiến đƣờng đi bị nghẽn,...
Để máy móc có thể hiểu và xử lý đƣợc những tri thức đƣợc diễn đạt bằng ngôn ngữ tự nhiên ngƣời ta cần phải xây dựng một lý thuyết logic toán cho phép
Zahden, một nhà toán học và cũng là nhà logic học ngƣời Hà Lan, đã xây dựng thành công lý thuyết tập mờ và hệ thống logic mờ. Phát minh này của Lotti Zahden cho phép ngƣời ta có thể lƣợng hóa giá trị các mệnh đề mờ, qua đó có thể truyền đạt một số thông tin cho máy móc bằng ngôn ngữ tự nhiên, có thể yêu cầu máy móc xử lý các dữ liệu mang nhiều thông tin, thiếu tính chính xác, không rõ ràng.
2.1.1. Nhắc lại về tập hợp kinh điển
Khái niệm về tâp hợp đƣợc hình thành trên nền tảng logic và đƣợc G.Cantor định nghĩa nhƣ là một sự xếp đặt chung các vật, các đối tƣợng có cùng một tính chất, đƣợc gọi là phần tử của tập hợp đó. Ý nghĩa logic của khái niệm tập hợp đƣợc xác định ở chỗ một vật hoặc một đối tƣợng bất kỳ chỉ có thể có hai khả năng hoặc là phaàn tử của tập đang xét hoặc không [3].
Có nhiều cách để biểu diễn tập hợp. Cách biểu diễn vừa đơn giản lại dễ đƣợc chấp nhận nhất là liệt kê các phẩn tử của tập hợp, ví dụ
S1 = {0, 2, 4, 6, 8} hay S2 = {nhà, xe, cây}
Trong trƣờng hợp không thể liệt kê hết đƣợc các phần tử của tập A, ngƣời ta có thể chỉ ra những tính chất chính xác mà những phần tử trong tập A phải thoả mãn, chẳng hạn A = {x | x là số tự nhiên}. Tập hợp mà các phần tử của nó có thể đƣợc xác định một cách rõ ràng nhƣ vậy còn đƣợc gọi là “tập rõ”.
Với tập hợp A, ánh xạ μA(x): A->R đƣợc định nghĩa nhƣ sau
A x nÕu 0 A x nÕu 1 A(x) (1)
đƣợc gọi là hàm thuộc của tập A.
Một tính chất quan trọng nhất của tập rõ mà chúng ta cần chú ý, đó là một tập rõ hoàn toàn đƣợc xác định bởi hàm thuộc của nó. Hàm thuộc của tập rõ A đƣợc ký hiệu là μA(x), là một hàm chỉ nhận một trong hai giá trị (0/1). Hàm nhận giá trị 1 khi x thuộc tập A và nhận giá trị 0 khi x không thuộc tập A. Các phần tử của tập rõ luôn có một ranh giới rõ ràng giữa các phần tử thuộc và các phần tử không thuộc nó.
Một tập X luôn có μA(x)=1, với mọi x đƣợc gọi là không gian nền (tập nền).
2.1.2. Khái niệm chung về tập mờ
Trong thực tế, có những vấn đề không biểu diễn bằng tập rõ đƣợc. Ví dụ nhƣ khi nói về vận tốc của một chiếc xe ô tô chạy trên đƣờng, ta cần chỉ ra là xe chạy với “vận tốc cao”, “vận tốc thấp”. Giả sử quy ƣớc vận tốc dƣới 40Km/h là
60Km/h sẽ thuộc vào vận tốc thấp hay vận tốc cao? Ngay cả quy ƣớc giới hạn vận tốc thấp hay cao tùy từng con đƣờng, thời điểm cũng có thể khác nhau. Nhƣ vậy mệnh đề “vận tốc cao”, “vận tốc thấp” không phải là một mệnh đề rõ cho phép xác định một tập rõ. Tƣơng tự nhƣ vậy, mệnh đề “ngƣời giàu”, “ngƣời nghèo”, “ngƣời trẻ”, “ngƣời già”,... đều không phải là “mệnh đề chính xác”. Trong các trƣờng hợp tƣơng tự nhƣ các ví dụ trên ngƣời ta sử dụng tập mờ để biểu diễn. Nếu tập rõ đƣợc xác định bởi các tính chất chính xác cho phép chúng ta biết một đối tƣợng là thuộc hay không thuộc tập đã cho và hàm thuộc của tập rõ chỉ nhận hai giá trị 0 hoặc 1, hàm thuộc của tập rõ nhận giá trị là 1 khi đối tƣợng thuộc tập đã cho; ngƣợc lại, nó sẽ nhận giá trị 0 khi đối tƣợng không thuộc tập đó. Từ những ví dụ trên cho thấy, các tập mờ có đặc trƣng là tính không rõ ràng, không chính xác. Các tập mờ đƣợc xác định bởi hàm thuộc mà giá trị của nó là các số thực từ 0 đến 1.
Trong tập mờ S, mỗi phần tử đƣợc xác định [8]:
μS : Ω -> M (2)
trong đó μS là hàm xác định phần tử của tập (hàm thành viên - membership function), Ω là tập nền, M là miền giá trị cho phép. Thông thƣờng M lựa chọn trong phạm vi [0,1]. vì vậy công thức (2) có thể viết lại:
μS : Ω -> [0,1] (3)
Support của tập mờ S, ký hiệu là supp(S), bao gồm các phần tử có bậc tƣ cách thành viên dƣơng:
supp(S) = { x ∈ Ω | μs(x) > 0 } (4)
α-cut của tập mờ S đƣợc ký hiệu Sα:
Sα = { x ∈ Ω | μs(x) ≥ α } (5)
Tƣơng tự, α-level cut của tập mờ S, ký hiệu là Sα, là tập con chứa tất cả các phần tử có bậc tƣ cách thành viên đúng bằng α:
Sα = { x ∈ Ω | μs(x) = α } (6)
2.1.3. Các phép toán trên tập mờ
Các phép toán cơ bản trên tập mờ là phép hợp, phép giao và phép bù [3] [1]. Tƣơng tự nhƣ định nghĩa về tập mờ, các phép toán trên tập mờ cũng sẽ đƣợc định nghĩa thông qua hàm thuộc (hàm thành viên).
Tập mờ S đƣợc gọi là rỗng nếu μS(x)=0 với mọi x X Tập mờ A=B khi μA(x)= μB(x) với mọi x X
C=AB trong đó μC(x)=max{μA(x), μB(x)} A‟ là phần bù của A và μA‟(x)=1-μA(x) Minh họa một số phép toán trên tập mờ:
Hình 2.1: Minh hoạ phép toán hợp trên tập mờ
Hình 2.2: Minh hoạ phép toán giao trên tập mờ