1. Trang chủ
  2. » Tất cả

Xây dựng hệ thống xác định thời gian dừng đèn đỏ dựa trên logic mờ

35 1 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây dựng hệ thống xác định thời gian dừng đèn đỏ dựa trên logic mờ
Trường học Đại học Bách Khoa Hà Nội
Chuyên ngành Hệ thống điều khiển và trí tuệ nhân tạo
Thể loại Nghiên cứu khoa học
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 35
Dung lượng 612,7 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mục lục Chương 1 TỔNG QUẢN VỀ HỆ CHUYÊN GIA 3 1 1 Hệ chuyên gia là gì? 3 1 2 Cấu trúc 3 1 2 1 Bộ giao diện người máy 4 1 2 2 Mô tơ suy diễn 4 1 2 3 Cơ sở tri thức 4 1 2 4 Bộ giải thích 4 1 2 5 Bộ tiếp[.]

Trang 1

Mục lục

Chương 1: TỔNG QUẢN VỀ HỆ CHUYÊN GIA 3

1.1 Hệ chuyên gia là gì? 3

1.2 Cấu trúc 3

1.2.1 Bộ giao diện người máy 4

1.2.2 Mô tơ suy diễn 4

1.2.3 Cơ sở tri thức 4

1.2.4 Bộ giải thích 4

1.2.5 Bộ tiếp nhận tri thức 4

1.2.6 Bộ nhớ làm việc 5

1.3 Các lĩnh vực ứng dụng 6

Chương 2: LOGIC MỜ 7

2.1 Tập rõ, tập mờ 7

2.1.1 Các khái niệm 7

2.2 Các phép toán trên tập mờ 10

2.3 Suy diễn mờ 11

2.3.1 Biểu diễn tri thức bằng các sự kiện mờ, luật 11

2.3.2 Suy diễn mờ 12

2.4 Quy trình giải bài toán bằng logic mờ 13

Chương 3: XÂY DỰNG ỨNG DỤNG 18

3.1 Phát biểu bài toán 18

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

3.3 Hình ảnh minh họa 26

KẾT LUẬN 35

TÀI LIỆU THAM KHẢO 36

Trang 2

Chương 1: TỔNG QUẢN VỀ HỆ CHUYÊN GIA 1.1 Hệ chuyên gia là gì?

Theo E Feigenbaum : Hệ chuyên gia (Expert System) là một chương trìnhmáy tính thông minh sử dụng tri thức (knowledge) và các thủ tục suy luận(inference procedures) để giải những bài toán tương đối khó khăn đòi hỏi nhữngchuyên gia mới giải được Hệ chuyên gia là một hệ thống tin học có thể môphỏng (emulates) năng lực quyết đoán (decision) và hành động (making abilily)của một chuyên gia (con người) Hệ chuyên gia là một trong những lĩnh vực ứngdụng của trí tuệ nhân tạo (Artificial Intelligence)

1.2 Cấu trúc

Các hành phần của hệ chuyên gia

Trang 3

1.2.1 Bộ giao diện người máy

Thực hiện giao tiếp giữa HCG và người sử dụng Bộ này nhận các thông tin

từ người sử dụng và đưa ra các câu trả lời, các lời khuyên, các giải thích về lĩnhvực đó

1.2.2 Mô tơ suy diễn

Hệ chuyên gia mô hình hóa cách lập luận của con người với mô dun động

cơ suy diễn Hệ chuyên gia chứa động cơ suy diễn để tiến hành các suy diễn nhằm tạo ra các tri thức mới dựa trên các sự kiện, tri thức trong vùng nhớ làm việc và tri thức trong cơ sở tri thức.Hai kiểu suy diễn chính trong động cơ suy diễn là suy diễn tiến và suy diễn lùi

về con đường mà hệ chuyên gia sử dụng mang lại kết quả

1.2.5 Bộ tiếp nhận tri thức

Làm nhiệm vụ thu nhận tri thức từ hệ chuyên gia con người (human

expert), từ kỹ sư xử lý tri thức và người sử dụng thông qua các yêu cầu và lưu trữ vào CSTT

Trang 4

1.2.6 Bộ nhớ làm việc

Chứa các sự kiện liên quan được phát hiện trong quá trình đưa ra kết luận

Bộ nhớ làm việc tương đương với bộ nhớ ngắn hạn(Short- Term Memory) trong

mô hình giải quyết vấn đề của con người

Trang 5

Lập luận dựa trên những chứng cứ quan sát được

Truyền đạt Dạy học kiểu thông minh sao cho sinh viên có thể hỏi vì sao,

như thế nào, và cái gì nếu giống như hỏi một người thấy giáo.Giải thích Giải thích những dữ liệu thu thập được

Kiểm tra So sánh dữ liệu thu lượm được với dữ liệu chuyên môn để đánh

giá hiệu quảLập kế

hoạch

Lập kế hoạch sản xuất theo yêu cầu

Dự đoán Dự đoán hậu quả từ một tình huống xảy ra

Chữa trị Chỉ định thụ lý một vấn đề

Điều khiển Điều khiển một quá trình, đòi hỏi diễn giải, chuẩn đoán, kiểm

tra, lập kế hoạch, dự đoán và chữa trị

Trang 6

Chương 2: LOGIC MỜ 2.1 Tập rõ, tập mờ

2.1.1 Các khái niệm

Logic mờ xuất hiện đầu tiên vào những năm 1920 nhưng mãi đến năm

1965, giáo sư Lotfi Zadeh mới hoàn thiện, đưa ra một lý thuyết tập mờ (FuzzySet Theory) hoàn chỉnh và công bố lần đầu tiên tại Mỹ Kể từ đó, logic mờ đã cónhiều phát triển qua các chặng đường sau: phát minh ở Mỹ, áp dụng ở Châu Âu

và đưa vào các sản phẩm thương mại ở Nhật

Trong logic rõ, một tập hợp A thường có một biên rõ để phân biệt giữa các đốitượng thuộc A và các đối tượng không thuộc A Từ đó người ta có thể trả lờichính xác câu hỏi: x có thuộc A hay không? Còn trong logic mờ, biên giới giữacác đối tượng thuộc tập A và các đối tượng không thuộc tập A là không rõ ràng

và nó được phản ánh bởi một hàm thuộc μA(x) (xem định nghĩa hàm thuộc dướiđây) Lấy một ví dụ, rất khó có thể chọn ra các học sinh có trạng thái tình cảm là

“buồn” trong một lớp học vì “buồn” là một khái niệm mờ

- Biến ngôn ngữ là thuật ngữ mô tả các khái niệm trong logic mờ VD: nhiệt

độ,

chiều cao, cân nặng,…

- Giá trị ngôn ngữ là những giá trị mà một biến ngôn ngữ có thể nhận được

diễn giải bằng ngôn ngữ tự nhiên Giá trị ngôn ngữ phản ánh sự mờ hóa của biếnngôn ngữ:

Trang 7

- Tập mờ được định nghĩa như sau:

● Cho X là một tập không rỗng, gọi là tập vũ trụ hay tập tham chiếu.Một tập mờ A trong vũ trụ X là một hàm: μA: X → [0,1]

● Hàm μA được gọi là hàm thuộc của tập mờ A mỗi phần tử x  X xácđịnh một giá trị μA(x)  [0,1] gọi là mức thuộc của x trong tập mờ A Mức thuộc

μA(x) biểu thị mức độ chân lý của sự kiện x  X và thể hiện tính mờ của tập hợp.

● Có 2 phương pháp sử dụng hàm thuộc để tính độ phụ thuộc của mộtphần tử x nào đó: tính trực tiếp nếu μA cho trước dưới dạng công thức hoặc trabảng nếu A được cho dưới dạng bảng

● Để tiện so sánh, ta có thể tham khảo lại hàm đặc trưng XA của mộttập hợp A trong lý thuyết tập hợp: XA: X → {0, 1}

● XA nhận giá trị trong tập {0, 1} sao cho:

XA(x) = 1 nếu x  A, XA(x) = 0 nếu x  A

● Độ cao H của một tập mờ a (định nghĩa trên tập vũ trụ X) là giá trị

H = sup { μA(x) | x  X}

Một tập mờ với ít nhất một phần tử có độ phụ thuộc = 1 (H=1) được gọi là

tập mờ chính tắc, ngược lại một tập mờ với H<1 được gọi là tập mờ không chính tắc.

● Miền xác định S của tập mờ A (định nghĩa trên tập vũ trụ X) là tậpcon của X thỏa mãn: S = { x  X | μA(x) >0 }

● Miền tin cậy T của tập mờ A (định nghĩa trên tập vũ trụ X) là tập concủa X thỏa mãn: T = {x X | μA(x) = 1 }

Ví dụ sau sẽ chỉ ra sự khác nhau giữa tập mờ và tập rõ:

Cho biến ngôn ngữ = “chiều cao” và giá trị ngôn ngữ = “thấp”

Trong đó tập vũ trụ H của biến ngôn ngữ “chiều cao” (ký hiệu: H - tập chiều cao;

Trang 8

Hình 2 Đồ thị hàm thuộc μ thấp (h)

Khi đó, nếu một người có chiều cao h=1.5m, chiều cao của người này được coithuộc tập mờ “Chiều cao là thấp” với mức độ 0.67, nói theo ngôn ngữ tự nhiên là

Trang 9

“khá thấp” Trong khi tập rõ lại khẳng định chiều cao như vậy là không thấp(h>1.4m) Rõ ràng cách tiếp cận theo lý thuyết tập mờ là mềm dẻo hơn và tổngquát hơn.

Cho X là tập hợp: A, B là hai tập mờ trong X và có các hàm thuộc lần lượt

μ ´A , μ ´A Phép trừ của hai tập hợp mờ A và B trong X kí hiệu A\B được địnhnghĩa như sau: A\B = A∩ ´B

⮚ Luật De Morgan

Cho A, B là hai tập con của X, khi đó:

(A ∪ B) C = A C ∩ B C và (A ∩ B) C = A C ∪ B C

Trang 10

2.3 Suy diễn mờ

2.3.1 Biểu diễn tri thức bằng các sự kiện mờ, luật

Lý thuyết tập mờ là khung toán học chặt chẽ (không có gì mập mờ trong

lý thuyết tập mờ) để nghiên cứu những khái niệm mờ một cách cụ thể và chặtchẽ Nó cũng có thể được coi như một ngôn ngữ mô hình rất phù hợp cho cácquan hệ, các tiêu chuẩn, các hiện tượng mờ

Khi xây dựng một hệ chuyên gia nhằm mục đích trợ giúp chẩn đoán bệnh, máytính sẽ phải xử lý một loạt các thông tin mờ (ranh giới không định nghĩa được rõràng) Không thể đưa các thông tin này vào máy mà không qua xử lý Ví dụ:mức độ sốt có thể là “nhẹ”, “hơi hơi”, “cao”, “rất cao”, … hoặc thời gian sốt lại

có thể là “ngắn”, “khá lâu”, “lâu”, “rất lâu” Đây chính là nơi mà lý thuyết tập

mờ - một ngành đang phát triển mạnh của toán học, phát huy sức mạnh của nó

Lý thuyết tập mờ là một công cụ toán học có hiệu quả dùng để biểu diễn và thaotác trên các thông tin mờ các hệ chuyên gia ứng dụng trong y tế sử dụng lýthuyết này để suy diễn, đưa ra lời khuyên hoặc chẩn đoán nhờ lý thuyết toán họcnày, chúng ta có thể đưa vào máy tính những thông tin không chính xác có dạngnhư “rất”, “hơi hơi”, “khá”, “có lẽ”…

- Sự kiện mờ

Với một hệ chuyên gia chẩn đoán bệnh nói chung, tri thức của các bác sĩ chính lànhững sự kiện mờ Các sự kiện mờ này được mô tả dưới dạng các biến ngôn ngữtương ứng

Ví dụ:

● X có thể được mô tả dưới các giá trị ngôn ngữ:

A= {“hơi sưng”, “sưng vừa”, “rất sưng”}

Sự kiện mờ được biểu diễn ở dạng: X is A

Trang 11

Khi đó, mỗi sự kiện tương ứng một tập mờ Chẳng hạn ở ví dụ trên, các sự kiện

mờ là: “Khớp hơi sưng”, “Khớp sưng vừa”, Khớp rất sưng”

- Biểu diễn luật mờ

Một luật mờ bao gồm: Các tiền đề chứa trong phần IF và kết luận chứa trongphần THEN Các tiền đề và kết luận trong luật mờ là những giá trị mờ, được nốivới nhau bằng toán tử AND Luật mờ đơn giản được biểu diễn như sau:

IF X IS A THEN Y IS B

Cụ thể với các tập mờ A và B, ta có luật mờ tổng quát như sau:

IF A{x, μA(x)} AND B{y, μB(y)} AND AND C {z, μC(z) }THEN D{t, μD(t) } AND E{u, μC(u) } AND AND F{ v, μC(v) }

2.3.2 Suy diễn mờ

Cho luật mờ: IF A THEN B

Giả sử ta có giả thiết A’ có cùng tập vũ trụ với A, suy diễn mờ sẽ cho biết kếtluận B’ có cùng tập vũ trụ với B là gì Để có thể thực hiện được như vậy thì mỗiluật mờ dạng IF A THEN B có thể biểu diễn bởi một ma trận M gọi là ma trậnliên hệ mờ có kích thước n x m (với n,m là lực lượng tập vũ trụ của tập mờ A vàB)

Người ta có 2 cách để xây dựng ra ma trận này:

● Max-min: Mij = min(μA(ai) , μB(bj) )

● Max-product: Mij = μA(ai) * μB(bj)

Để tìm được B’ khi biết A’ người ta sử dụng công thức xác định như sau:

B’j = max(min(μA(ai),Mi,j)) (i=1 n)

Phép max ở đây tương đương với chuẩn t-conorm, còn phép min tương đươngvới chuẩn t-norm (xem các chuẩn t-norm, t-conorm)

Trang 12

Trong một số hệ chuyên gia, nếu giá trị cho giả thiết A’ là một giá trị rõ, (giả sửai) khi đó người ta tính trực tiếp tập mờ B’ như sau

● Max-min: B’j = min(μA(ai) , μB(bj) )

● Max-product: B’j = μA(ai) * μB(bj)

Trong thực tế, có những luật mờ có dạng

Trong đó Ai và B là các tập mờ Khi đó không thể xây dựng được ma trận quan

hệ mờ như trước được Một trong cách tiếp cận của Kosko (1992) là tách thành nluật mờ rời rạc Sau đó dựa trên các giả thiết A1’,A2’,…,An’ để tính ra B1,B2,

…,Bn Kết quả B’ thu được sẽ được tính bằng việc hợp hoặc giao các tập mờB1,B2,…,Bn tuỳ thuộc vào dạng kết nối logic của luật mờ

Có thể trong hệ chuyên gia tồn tại nhiều luật mờ dạng:

2.4 Quy trình giải bài toán bằng logic mờ

*Quy trình:

Bước 1: Xây dựng biến ngôn ngữ và các hàm thành viên(Mờ hóa)

Bước 2: Xây dựng hệ cơ sở tri thức

Bước 3: Viết tập luật

Bước 4: Tính toán mờ

Trang 13

Bước 5: Giải mờ

*Ví dụ: Bài toán bơm nước:

Bước 1: Xây dựng biến ngôn ngữ và các hàm thành viên (khâu mờ hóa)

 Cho 1 bể nước cao 10m có 3 mức nước: X: -Cao: μCao(X)

-Lưng: μLưng(X)-Cạn: μCạn(X)

 Một hồ nước cao 2m có 3 mức nước: Y: -Đầy: μĐầy(Y)

-Vừa: μVừa(Y)-Cạn: μCạn(Y)

 Một cái bơm có 3 trạng thái: Z: -Bơm lâu: 30’

-Bơm hơi lâu: 20’

-Bơm vừa: 15’

Bước 2: Xây dựng hệ cơ sở trí thức Từ kinh nghiệm (ý kiến của chuyên gia) ta

có thể xây dựng được bảng như dưới đây

Y(hồ)

X(bể)

Bước 3: Viết luật Từ bảng mô tả tri thức trên, có thể mô tả thành 4 luật như sau:

Luật 1: IF(x là cao) ∧ (y là vừa) THEN (z là bơm vừa)

Luật2: IF (x là lưng) ∧ (y là vừa) THEN (z là bơm vừa)

Luật 3: IF (x là cao) ∧ (y là cạn) THEN (z là bơm lâu)

Trang 14

Luật 4: IF (x là lưng) ∧ (y là cạn) THEN (z bơm hơi lâu)

Bước 4: Tính toán mờ (hay chính xác hơn suy diễn mờ) thuộc khối: động cơ suy

diễn (Inference Engine: phần chính yếu của hệ mờ) Để thực hiện tính toán mờ bằng trực quan, chúng ta mô tả lời giải bằng phương pháp đồ thi hay ma trận (bảng) suy diễn Trong ma trận (bảng) dưới đây, các dòng thể hiện các luật; các cột gồm hai phần: i) phần đầu vào phía bên trái mô tả đầu vào 1: biến x, đầu vào 2: biến y; ii) phần đầu ra y

Phần chuẩn bị Vẽ đồ thị theo mô tả của luật đưa các giá trị ban đầu là y0= 1^m, giá trị ban đầu của hồ là x0 = 2^m vào các cột tương ứng Các giá trị đó cắt các đường đặc tính của các hàm thuộc về với các giá trị tương ứng Tại các điểm cắt, kéo theo trục ngang; gạch chân phần diện tích mà đương kéo dài trục ngang với trục ngang tọa độ (xem hình dưới đây)

Phần suy diễn mờ

Giả sử luật suy diễn được chọn là Suy diễn Mamdani Trong bài toán này, các luật hợp thành của các luật mờ sử dụng toán tử AND Và luật tính giá trị hàm thuộc về đầu ra là hàm MIN Để thực hiện điều này trên đồ thị, thực hiện từng dòng (theo từng luật như sau: Từ các giá trị hàm thuộc của mỗi dòng, xét giá trị nào nhỏ nhất (MIN), chiếu sang kết quả đầu ra.cắt đường đặc trưng đầu ra của mỗi đường Gạch chéo phần diện tích được bao của đầu ra như đã gạch chân ở đầu vào Lặp lại cho hết các luật (các dòng trên biêu đồ ma trận)

Trang 15

Bước 5: Giải mờ

Từ các kết quả ở bước B4, sử dụng một trong các phương pháp mờ hóa để tìm kếtquả cuối cùng Cho dù phương pháp này hay phương pháp khác, nguyên tắc chung của giải mờ được những nhà nghiên cứu sử dụng theo nguyên lý trung bình của các đầu ra Để đơn giản trong minh họa và hiểu được nguyên tắc, nhưng không làm mất tính tổng quát, chúng ta sử dụng phương pháp tính toán trung bìnhtheo các giá trị lớn nhất của các cận trái và cận phải; Đối với đầu ra của luật

Trang 16

1(dòng 1): ZMAX.1=6 (phút); ZMAX.2=30-6 (phút) ZTRUNG_BÌNH.1=

(ZMAX.1+ ZMAX.2)/2= [6 phút +(30-6 phút]/2= 15 phút

Trang 17

Chương 3: XÂY DỰNG ỨNG DỤNG

3.1 Phát biểu bài toán

Chọn độ rộng đường bằng 4 và mật độ giao thông bằng 20 làm biến đầu vào Tính thời gian dừng đèn đỏ bằng logic mờ

⇨ Ta đi xây dựng các biến ngôn ngữ cùng trạng thái

a Độ rộng đường (0 – 10 dơn vị-mét vuông)

Trang 18

b Mật độ giao thông

Trang 19

c Thời gian dừng đèn đỏ

a Tập luật

M.độ thưa M.độ đông M.độ rất đông Làn đường Hẹp T.gian Vừa T.gian Lâu T.gian Lâu

Làn đường Vừa T.gian Nhanh T.gian Vừa T.gian Vừa

Làn đường Rộng T.gian Nhanh T.gian Nhanh T.gian Nhanh

b Thuật toán

B1: Xác định các luật mờ

Luật 1: IF x is MĐ.thưa and y is DR.hẹp THEN z is TG.vừa

Luật 2: IF x is MĐ.đông and y is DR.hẹp THEN z is TG.lâu

Luật 3: IF x is MĐ.rất đông and y is DR.hẹp THEN z is TG.lâu

Luật 4: IF x is MĐ.thưa and y is DR.vừa THEN z is TG.nhanh

Luật 5: IF x is MĐ.đông and y is DR.vừa THEN z is TG.vừa

Trang 20

Luật 6: IF x is MĐ.rất đông and y is DR.vừa THEN z is TG.vừa

Luật 7: IF x is MĐ.thưa and y is DR.rộng THEN z is TG.nhanh

Luật 8: IF x is MĐ.đông and y is DR.rộng THEN z is TG.nhanh

Luật 9: IF x is MĐ.rất đông and y is MĐ.rất đông THEN z is TG.nhanh

Trang 21

với mỗi luật ta đi tìm các giá trị M để tính M của thời gian

do mỗi luật đầu có dấu & => lấy min giữa 2 giá trị M

Trang 22

T = h6∗(3∗m22 −3∗m12

+b2

a2 +3∗m1∗a+3∗m2∗b)

● y0{ làn đường hẹp: 0.2; làn đường vừa: 0.5; làn đường rộng: 0}

● z0{ mật độ thưa: 0.43; mật độ đông: 0.2; mật độ rất đông: 0}

=>w3= h.thời gian lâu = min(0.2;0) = 0

r4: h.làn đường vừa = 0.5 và h mật độ thưa = 0.43

=>w4= h.thời gian nhanh = min(0.5;0.43) = 0.43

r5: h.làn đường vừa = 0.5 và h mật độ đông = 0.2

=>w5= h.thời gian vừa = min(0.5;0.2) = 0.2

Trang 23

r6: h.làn đường vừa = 0.5 và h mật độ rất đông = 0

=>w6= h.thời gian vừa = min(0.5;0) = 0.2

Trang 24

Áp dụng công thức trên ta tính được:

Trang 27

Hình 3.1: Lớp DoRong

Trang 29

Hình 3.2: Lớp MatDo

Trang 32

Hình 3.3: Lớp GiaiMo

Trang 33

Hình 3.4: Chương trình

Hình 3.5: Kết quả chạy chương trình

Trang 34

KẾT LUẬN

Việc thiết kế một chương trình dự báo thời gian dừng đèn đỏ dựa trên logic mờ phù hợp với thể nhu cầu của mọi người là mục tiêu chương trình hướngđến, để từ đó ta có thể tham khảo hoặc lấy thêm ý kiến từ chuyên gia để giúp việc dự đoán thời gian dừng đèn đỏ hiệu quả và chính xác nhất

Trang 35

TÀI LIỆU THAM KHẢO

1 Giáo trình Hệ Chuyên Gia : Trần Hùng Cường, Trần Thanh Hùng, NXB Khoa

Học và Kỹ Thuật

2 6J3ZgELE5mB

https://viblo.asia/p/su-dung-he-mo-giai-bai-toan-tinh-thoi-gian-bom-nuoc-3 https://fita.vnua.edu.vn/wp-content/uploads/2013/06/F_Ch.1.pdf

Ngày đăng: 26/02/2023, 18:12

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w