Định tuyến địa lý dựa vào hệ mờ và hướng di chuyển của các phương tiện trong mạng vanet phục vụ cho hệ thống giao thông thông minh báo cáo tổng kết đề tài nghiên cứu khoa học cấp trường
Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 68 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
68
Dung lượng
708,13 KB
Nội dung
Bộ Giáo dục Đào tạo TRNG I HC GIAO THÔNG VẬN TẢI BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG CỦA NGHIÊN CỨU SINH ĐỊNH TUYẾN ĐỊA LÝ DỰA VÀO HỆ MỜ VÀ HƯỚNG DI CHUYỂN CỦA CÁC PHƯƠNG TIỆN TRONG MẠNG VANET PHỤC VỤ CHO HỆ THỐNG GIAO THÔNG THÔNG MINH Mã số: T2019-PHII-012 Chủ nhiệm ñề tài: TS.Võ Trường Sơn Thời gian thực hiện: 01/2019 ñến 02/2020 Ngày viết báo cáo: 20/02/2020 TP.Hồ Chí Minh, Tháng 02/2020 i MỤC LỤC Mục lục i Danh mục thuật ngữ, chữ viết tắt iii Danh mục hình vẽ, đồ thị iv Danh mục bảng biểu v Phần mở ñầu ĐẶT VẤN ĐỀ 1 Tính cấp thiết đề tài Mục ñích nghiên cứu ñề tài Ý nghĩa khoa học thực tiễn ñề tài Nội dung ñề tài Chương I TỔNG QUAN VỀ HỆ THỐNG GIAO THÔNG THÔNG MINH VÀ MẠNG VANET 1.1 Hệ thống giao thông thông minh 1.2 Mạng VANET 1.3 Các phương pháp ñịnh tuyến VANET 12 1.4 Kết luận chương I 14 Chương II XÂY DỰNG PHƯƠNG PHÁP ĐỊNH TUYẾN ĐỊA LÝ 15 TRÊN CƠ SỞ HỆ MỜ, SỬ DỤNG THÔNG TIN VỀ KHOẢNG CÁCH VÀ HƯỚNG DI CHUYỂN VÀ XÂY DỰNG HỆ SUY DIỄN MỜ CHO GIAO THỨC ĐỊNH TUYẾN 2.1 Định tuyến ñịa lý mạng VANET 15 2.2 Giao thức ñịnh tuyến địa lý sử dụng thơng tin khoảng cách hướng 18 di chuyển FDGR 2.3 Hệ suy diễn mờ 21 2.4 Hệ suy diễn mờ cho giao thức ñịnh tuyến sử dụng thông tin khoảng 28 ii cách hướng di chuyển 2.5 Kết luận chương II 32 Chương III XÂY DỰNG PHẦN MỀM MÔ PHỎNG HỆ THỐNG VÀ 22 ĐÁNH GIÁ KẾT QUẢ HOẠT ĐỘNG CỦA GIAO THỨC ĐỊNH TUYẾN ĐƯỢC ĐỀ XUẤT SO VỚI CÁC GIAO THỨC ĐÃ CĨ TƯƠNG ỨNG 3.1 Mơ hình hệ thống 33 3.2 Xây dựng hệ thống mô 35 3.3 Các kết mô 36 3.4 Kết luận chương III 38 KẾT LUẬN, KIẾN NGHỊ 39 Kết luận 39 Kiến nghị 40 TÀI LIỆU THAM KHẢO 41 PHỤ LỤC 43 CÁC SẢN PHẨM CỦA ĐỀ TÀI iii DANH MỤC CÁC THUẬT NGỮ, CÁC CHỮ VIẾT TẮT x y tn dCN(tn) ∆dCN(tn) β(tn) Hồnh độ điểm Tung ñộ ñiểm Thời ñiểm thứ n Khoảng cách hai nút CN thời ñiểm tn Độ biến thiên khoảng cách hai nút C N hai thời ñiểm tn tn −1 FVD(tn) CF(tn) Mức ñộ chiếm dụng nhớ ñệm Vector khoảng cách Chi phí mờ rd Ta Tỷ lệ gói tin tới đích thời gian trung bình gói tin tới đích Ad hoc C2I CAGR DSRC DTN Mạng không dây tùy biến Kết nối trung tâm với ñường Định tuyến ñịa lý chống tắc nghẽn Hệ thống thông tin chuyên dụng tầm ngắn Chấp nhận trễ Định tuyến ñịa lý dựa vào hệ mờ hướng di chuyển FDGR GPS Hello ITS LAN MAN MANET non-DTN OBU RFID RSU SDH TTL VANET V2I V2V WAN Hệ thống định vị tồn cầu Bản tin quảng bá giao thức ñịnh tuyến mạng VANET Hệ thống giao thông thông minh Mạng cục Mạng thị Mạng khơng dây tùy biến di động Không chấp nhận trễ bị gắn xe Nhận dạng qua tần số vơ tuyến Thiết bị gắn bên đường Phân cấp số đồng Thời gian sống gói tin Mạng không dây tùy biến phương tiện giao thông Kết nối phương tiện với trạm bên ñường Kết nối phương tiện ñường với Mạng diện rộng iv DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ Hình 1.1 Kiến trúc vật lý ITS Hình 1.2 Mơ hình mạng VANET 10 Hình 1.3 Phân loại giao thức ñịnh tuyến VANET 14 Hình 2.1 Nút nút lân cận chuyển động ngược chiều 18 Hình 2.2 Sơ đồ bước xử lý giao thức FDGR 19 Hình 2.3 Cấu trúc bên hệ mờ 22 Hình 2.4 Các dạng mờ hố 24 Hình 2.5 Bộ giải mờ trọng tâm 26 Hình 2.6 Bộ giải mờ trung bình tâm 27 Hình 2.7 Bộ giải mờ cực đại 27 Hình 2.8 Hai tình vị trí nút lân cận 28 Hình 2.9 Hệ suy diễn mờ giao thức ñịnh tuyến FDGR 29 Hình 2.10 Hệ số FVD (tn ) hệ suy diễn mờ 30 Hình 3.1 Vùng mơ 34 Hình 3.2 Hàm thuộc biến ñầu vào FVD (tn ) 35 Hình 3.3 Hàm thuộc biến đầu vào ∆dCN (tn ) 35 Hình 3.4 Hàm thuộc biến đầu vào β (tn ) 36 Hình 3.5 Hàm thuộc biến ñầu CF (t ) 36 Hình 3.6 Tỷ lệ gói tin tới đích theo mật độ phương tiện tuyến đường mơ 36 (%) Hình 3.7 Thời gian tới đích trung bình gói tin theo mật độ phương tiện tuyến đường mô (giây) 37 v DANH MỤC CÁC BẢNG BIỂU Bảng 2.1 So sánh giải mờ 17 Bảng 2.2 luật hợp thành hệ mờ FDGR 31 Phần mở đầu ĐẶT VẤN ĐỀ Tính cấp thiết đề tài: Hệ thống giao thơng thơng minh ITS (Intelligent Transport System) ñã ñang ñược áp dụng nhiều nước giới, ñặc biệt nước như: Mỹ, Nhật Bản, Anh, Úc, … Ở Việt Nam, ITS ñã bắt ñầu ñược nghiên cứu, áp dụng nhằm mục đích: giảm thiểu tai nạn giao thơng, ùn tắc giao thông, ô nhiễm môi trường, giá thành vận chuyển; tăng hiệu vận chuyển, tạo ñiều kiện thuận lợi tối ña cho việc ñi lại Hệ thống giao thông thông minh bao gồm nhiều thành phần, hệ thống khác nhau, từ hệ thống quản lý hệ dẫn hướng xe, hệ tín hiệu ñiều khiển giao thông, trung tâm ñiều khiển, camera kiểm sốt tốc độ, camera theo dõi lưu lượng,… đến hệ thống cao cấp hệ tích hợp thu thập xử lý liệu, hệ liệu hướng dẫn chỗ ñậu xe, hệ liệu thời tiết, công nghệ cảm biến phục vụ cho việc thu thập liệu giao thông Trong hệ thống giao thơng thơng minh, việc kết nối để truyền liệu phương tiện với phương tiện với trạm bên đường đóng vai trị quan trọng Tuy nhiên, phương tiện giao thông tuyến đường có tính di động cao di chuyển với tốc độ 100km/h Do đó, loại mạng khơng dây tùy biến (Ad hoc) mạng khơng dây tùy biến di động (MANET) khơng phù hợp với ñặc ñiểm Để giải vấn ñề nêu trên, mạng VANET ñang ñược sử dụng rộng rãi cho kết nối phương tiện với trạm bên ñường (V2I) phương tiện ñường với (V2V) Tuy nhiên, nút VANET thường có tầm phủ sóng hạn chế Do đó, để truyền gói liệu nút cách xa nhau, cần phải thực chuyển tiếp gói thơng qua nút trung gian Các thuật tốn định tuyến cho mạng VANET sử dụng ñể lựa chọn nút trung gian phù hợp Trên giới có nhiều nghiên cứu thuật tốn định tuyến mạng VANET Có thể chia thuật tốn thành hai nhóm định tuyến theo cấu trúc hình học (topo) hay cịn gọi lai định tuyến theo đồ hình mạng định tuyến theo vị trí địa lý [1, 2] Định tuyến dựa cấu trúc hình học sử dụng thơng tin liên kết trạng thái liên kết tồn mạng để thực chuyển tiếp gói tin Định tuyến theo địa lý sử dụng thơng tin vị trí thực tế nút lân cận ñể thực định tuyến Vì thơng tin liên kết thay đổi cách thường xuyên VANET nên việc ñịnh tuyến dựa cấu trúc hình học bị ảnh hưởng gián đoạn tuyến đường Do đó, ña số giao thức ñịnh tuyến ñang ñược áp dụng cho VANET ñều dựa yếu tố ñịa lý thay dựa cấu trúc hình học [1] Tuy nhiên, giao thức ñịnh tuyến ñịa lý ñều có hạn chế định Giao thức định tuyến GPSR ñã ñược hai tác giả Brad Karp H T Kung đề xuất [3] GPSR sử dụng thơng tin vị trí định tuyến đích đến gói tin đề đưa định chuyển tiếp Tuy nhiên, giao thức không phù hợp với điều kiện mật độ giao thơng khơng đồng Trong nghiên cứu [4], Christian Lochert cộng ñã giới thiệu cách thức ñịnh tuyến theo vị trí thực mơi trường thị mà khơng cần giả định nút có quyền truy cập vào đồ tồn cầu tĩnh Trong nghiên cứu này, tác giả ñã sử dụng khái niệm nút giao ñể bám theo ñoạn ñường làm ñịnh tuyến gói liệu Tuy nhiên, ý tưởng nút giao vấn đề khó để trì Do đó, thuật tốn phù hợp với mơi trường thị Boon-Chong Seet cộng ñã ñề xuất giao thức ñịnh tuyến cho mạng tùy biến di ñộng dành cho phương tiện môi trường ñô thị ñược gọi A-STAR [5] A-STAR sử dụng thơng tin từ tuyến xe bt thị để xác định hướng chuyển tiếp gói tin Tuy nhiên, chế chọn tuyến khơng tốt nhất, dẫn đến độ trễ cao Giao thức ñịnh tuyến PDGR ñã ñược tác giả Jiayu Gong cộng ñề xuất [6] PDGR thực chuyển tiếp gói liệu dựa đặc tính di chuyển tương lai phương tiện Tuy nhiên nghiên cứu khơng xem xét đến đặc tính tự nhiên khơng tin cậy kênh vô tuyến việc ngắt kết nối nút mang gói tin với nút lân cận Trong [7], hai tác giả Boangoat Jarupan Eylem Ekici ñã ñề xuất giao thức truyền liệu V2I ñể chuyển tiếp gói tin cách hiệu với độ trễ thấp Tuy nhiên, giao thức tính tốn kênh vô tuyến phương tiện ñiều kiện lý tưởng ñiều không phù hợp với thực tế Điểm chung tất giao thức định tuyến nói xem xét kênh vơ tuyến điều kiện lý tưởng mà khơng lưu ý đến tượng che khuất loại fading khác Một giao thức ñịnh tuyến địa lý nâng cao có tên PGR ñề xuất [8] Giao thức giúp tăng cường chiến lược chuyển tiếp gói liệu thơng qua phương pháp dự đốn, làm giảm số nút trung gian chuyển tiếp gói tin trì tỷ lệ chuyển gói tin tới đích tương ñối cao Tuy nhiên, nhiều trường hợp, việc ñịnh tuyến giao lộ thuật tốn khơng chọn ñược tuyến tối ưu Trong [9], N.V Dharani Kumari B.S Shylaja ñã ñề xuất giao thức ñịnh tuyến AMGRP dựa việc xem xét, phân tích nhiều tiêu chí định tuyến số liệu di động, tuổi thọ liên kết, mật ñộ nút trạng thái nút yếu tố quan trọng để tính tốn định tuyến Tuy nhiên, thuật tốn áp dụng có hiệu cho mơi trường thị Một thuật tốn hướng di chuyển cho giao thức GPSR ñã ñược V Phouthone cộng ñề xuất [10] Thuật tốn xem xét cách tồn diện thơng tin vectơ vận tốc thời gian hết hạn liên kết để tính tốn hướng di chuyển Các kết mô nhiều kịch mức khác cho thấy thuật tốn đề xuất chuyển tiếp gói tin tốt giảm độ trễ ñáng kể so với thuật toán ñịnh tuyến ñịa lý trước Tuy nhiên, thuật tốn phù hợp với loại dịch vụ ñược ñáp ứng theo kiểu tùy khả (best effort) với ñiều kiện mật ñộ thấp Khác với nghiên cứu nêu trên, [1] ñã ñề xuất giao thức ñịnh tuyến SRR, theo ñó giao thức thực việc chuyển tiếp gói tin tới đích với độ tin cậy ổn ñịnh cao SRR kết hợp logic mờ với ñịnh tuyến ñịa lý ñịnh chuyển tiếp gói tin Các số liệu ñầu vào ñịnh tuyến SRR hướng khoảng cách ñược cung cấp cho hệ mờ để xác định nút thích hợp cho việc chuyển tiếp gói liệu Sau đó, tác giả sử dụng chế lưu trữ tạm (cache) gói liệu mạng bị kết nối sau quay SRR phương tiện ñược kết nối trở lại Tuy nhiên nghiên cứu quan tâm tới khoảng cách hướng tương ñối từ nút tới nút lân cận so với từ nút tới đích mà khơng quan tâm tới hướng di chuyển tương ñối nút nút lân cận Điều dẫn ñến ñịnh lựa chọn nút trung gian thiếu xác, chí gây gói tin nút trung gian di chuyển khỏi vùng phủ sóng nút Trong [2], tác giả ñề xuất giao thức ñịnh tuyến ñịa lý CAGR dựa vào logic mờ tương tự [1] ñồng thời ñưa thêm chế chống tắc nghẽn cho nút trung gian vào hệ suy diễn mờ Tuy nhiên, tương tự SRR, CAGR khơng quan tâm tới hướng di chuyển tương đối nguồn nút lân cận Ở nước, ñã có số nghiên cứu giao thức ñịnh tuyến mạng VANET Tuy nhiên, nghiên cứu tập trung vào việc ñánh giá, so sánh giao thức có từ kết cơng trình nghiên cứu nước ngồi mà khơng có đề xuất giao thức ñịnh tuyến ñịa lý Các ñề xuất giao thức ñều tập trung vào giao thức dựa cấu trúc hình học mạng Trong [V1], tác giả ñã ñề xuất giao thức ñịnh tuyến có tên Giao thức định tuyến dựa hướng di chuyển phương tiện (VehicleHeading based Routing Protocol - VHRP) Tuy nhiên, VHRP lại loại giao thức dựa vào cấu trúc hình học Trong nghiên cứu [V2], tác giả Đỗ Đình Cường nghiên cứu để cải tiến hiệu giao thức ñịnh tuyến AODV AOMDV mạng MANET Tuy nhiên, AODV AOMDV hai giao thức dựa cấu trúc hình học nghiên cứu áp dụng cho mạng MANET mà khơng áp dụng cho VANET cách có hiệu Có thể thấy rằng, nghiên cứu ñược ñề cập ñều chưa sử dụng thơng tin di chuyển tương đối phương tiện làm số liệu đầu vào thuật tốn định tuyến, kết định tuyến thường thiếu xác, chí gây gói liệu Bên cạnh đó, kênh truyền VANET kênh vơ tuyến, chịu ảnh hưởng nhiều tượng che khuất, fading, khó biểu diễn dạng mơ hình tốn học tường minh Hệ suy diễn mờ có ưu việc giải loại toán thiếu tường minh Do đó, việc sử dụng thơng tin di chuyển tương ñối phương tiện với kết hợp với cấu suy diễn mờ để tính tốn định tuyến VANET làm cho kết ñịnh tuyến xác hơn, hoạt động định tuyến hiệu Tỷ lệ chuyển gói tới đích tăng lên thời gian chuyển gói đến đích giảm xuống Đề tài đề xuất thuật tốn định tuyến địa lý Thuật toán dựa vào cấu suy diễn mờ sử dụng thông tin khoảng cách hướng di chuyển tương ñối phương tiện ñể thực chuyển tiếp gói liệu đến đích Mục đích nghiên cứu đề tài Mục đích tổng thể đề tài nghiên cứu thuật tốn ñịnh tuyến gói liệu dựa vào yếu tố ñịa lý mạng VANET, ứng dụng cho hệ thống giao thơng thơng minh ITS Trong đó, mục tiêu cụ thể là: TG_TB_3(dem_nut) = TG_TB; TL_ToiDich_3(dem_nut) = TL_ToiDich; end Doc_file = xlsread('CA_FDGR.xls',1); tonghop_FDGR = tonghop_FDGR + Doc_file(1:5,:); tonghop_CAGR = tonghop_CAGR + Doc_file(6:10,:); Luu_file = xlswrite('CA_FDGR.xls',[tonghop_FDGR; tonghop_CAGR]); P4 Chương trình chạy khởi tạo tham số ban đầu để mơ phỏng, phục vụ cho P3 (khoitao.m) dai_doan1 = (rong - R_cong); dai_doan5 = (rong - R_cong); dai_doan3 = (dai-2*R_cong); dai_doan2 = (R_cong-dorongduong/2)*2*pi/4; dai_doan4 = (R_cong-dorongduong/2)*2*pi/4; dai_tong = 2* dai_doan1 + dai_doan3 + 2* dai_doan2; chuvi_giua = (R_cong-dorongduong/2)*2*pi; dai_tong_trong= 2*(rong - R_cong) + (dai-2*R_cong) + 2*(R_congdorongduong*3/4)*2*pi; chuvi_nho = (R_cong-3*dorongduong/4)*2*pi; dai_tong_ngoai= 2*(rong - R_cong) + (dai-2*R_cong) + 2*(R_congdorongduong/4)*2*pi; chuvi_lon = (R_cong-dorongduong/4)*2*pi; nut = rand(1,sonut)* dai_tong; nut_goc = nut; huong_nut = round(rand(1,sonut)); vantoc_nut = rand(1,sonut)*25; nut_nguon_goc = randi([1 sonut], 1, songuon_goc); nut_dich_goc = randi([1 sonut], 1, songuon_goc); 48 P5 Chương trình tìm nút kế tiếp, phục vụ cho P3 (nut.m) nut = nut_goc; bonho_nut = ones(1, sonut) * bonho; trangthai_nut = ones(1,sonut); TT_nguon = zeros(1,sonut); TT_dich = zeros(1,sonut); nut_hientai = nut_nguon_goc; nut_nguon = nut_nguon_goc; nut_dich = nut_dich_goc; songuon = songuon_goc; TT_goitin = zeros(1,songuon); TT_goitin_goc = TT_goitin; for dem=1:1:songuon_goc TT_nguon(nut_nguon_goc(dem)) = 1; TT_dich(nut_dich_goc(dem)) = 1; bonho_nut(nut_nguon_goc(dem))= bonho_nut(nut_nguon_goc(dem)) - 1; end nut_all = []; tg = 0; tg_clock = clock; tg_batdau = tg_clock(4)*3600 + tg_clock(5)*60 + tg_clock(6); tg_BD_all = ones(1, songuon)*tg_batdau; tg_cu = tg_batdau; tg_bd_hello = tg_batdau; tg_kt_hello = chuky_Hello; chuoi_CT = nut_nguon'; 49 chuoi_TG_CT = zeros(songuon,1); so_nut = ones(1, songuon); tg_CT_goitin = zeros(1,songuon); chuoi_TG_nguon = zeros(1,songuon); vong_lap = 0; x_nut_cu = 10*ones(1, sonut); y_nut_cu = rong*ones(1, sonut)-10; nut_cu = zeros(1,sonut); hello = 0; hello2 = 0; phat_hello = 1; x_nut_all = []; y_nut_all = []; x_nut_H_all = []; y_nut_H_all = []; nut_LC_all = zeros(songuon_goc, 1); KC_LC_all = []; KC_LC_all_old = []; nut_LC_all_old = []; tg_phatgoi = 0.5; ck_phatgoi = 0.5; while tg =0 && nut(dem)=0 && nut(dem)= tg_phatgoi tg_phatgoi = tg_phatgoi + ck_phatgoi; nut_nguon = [nut_nguon nut_nguon_goc]; nut_dich = [nut_dich nut_dich_goc]; nut_hientai = [nut_hientai nut_nguon_goc]; songuon = songuon + songuon_goc; TT_goitin = [TT_goitin TT_goitin_goc]; so_nut = [so_nut ones(1, songuon_goc)]; tg_BD_all = [tg_BD_all ones(1, songuon_goc)*tg_hientai]; [h,c] = size(chuoi_CT); chuoi_CT = [chuoi_CT; nut_nguon_goc' zeros(songuon_goc,c-1)]; chuoi_TG_CT = [chuoi_TG_CT; ones(songuon_goc,1)*tg zeros(songuon_goc,c1)]; 51 tg_CT_goitin = [tg_CT_goitin zeros(1,songuon_goc)]; chuoi_TG_nguon = [chuoi_TG_nguon zeros(1,songuon_goc)]; [h_LC,c_LC] = size(nut_LC_all); nut_LC_all = [nut_LC_all; zeros(songuon_goc,c_LC)]; for dem=1:1:songuon_goc if bonho_nut(nut_nguon_goc(dem)) > bonho_nut(nut_nguon_goc(dem))= bonho_nut(nut_nguon_goc(dem)) - 1; else TT_goitin(h+dem) = -4; end end end lancan; nut_all = [nut_all; nut]; x_nut_all = [x_nut_all; x_nut]; y_nut_all = [y_nut_all; y_nut]; x_nut_H_all = [x_nut_H_all; x_nut_Hello]; y_nut_H_all = [y_nut_H_all; y_nut_Hello]; ketiep; tg_clock = clock; tg_hientai = tg_clock(4)*3600 + tg_clock(5)*60 + tg_clock(6); tg = tg_hientai - tg_batdau; tg_kt_hello = tg_hientai - tg_bd_hello; display ([SoLanLap dem_nut tg]); if tg_kt_hello > chuky_Hello phat_hello = 1; hello = hello + 1; tg_bd_hello = tg_hientai; 52 else phat_hello = 0; end delta_t = tg_cu - tg_hientai; nut = nut - vantoc_nut.*huong_nut*delta_t; vong_lap = vong_lap tg_cu = tg_hientai; + 1; end tonghop = [nut_nguon' chuoi_CT nut_dich' TT_goitin' so_nut' tg_CT_goitin' chuoi_TG_nguon']; [h, c] = size(tonghop); tong_TGCT = 0; TongToiDinh = 0; Tong_TTL = 0; Tong_BO = 0; for kk = 1:1:songuon if chuoi_TG_nguon(kk) > 30 && chuoi_TG_nguon(kk) < tg_mophong - 30 if TT_goitin(kk) == TongToiDinh = TongToiDinh + 1; tong_TGCT = tong_TGCT + tg_CT_goitin(kk); end if TT_goitin(kk) == -1 Tong_TTL = Tong_TTL + 1; end if TT_goitin(kk) == -4 Tong_BO = Tong_BO + 1; end end end 53 TongGoi = TongToiDinh + Tong_TTL + Tong_BO; TG_TB = tong_TGCT / TongToiDinh; TL_ToiDich = TongToiDinh / TongGoi * 100; tonghop_MP = [TongGoi TongToiDinh Tong_TTL Tong_BO tong_TGCT]; P6 Chương trình xác ñịnh tọa ñộ nút, phục vụ cho P5 (toado.m) if nut(dem) dai_doan1) && (nut(dem) dai_doan1 + dai_doan2) && (nut(dem) dai_doan1 + dai_doan2 + dai_doan3) && (nut(dem) dai_doan1 + dai_doan2 + dai_doan3 + dai_doan4 y_nut(dem) = dai_tong - nut(dem); 55 if huong_nut(dem)==1 x_nut(dem) = dai - 3*dorongduong/4; else x_nut(dem) = dai - dorongduong/4; huong_nut(dem)=-1; end end P7 Chương trình xác định nút lân cận, phục vụ cho P5 (lancan.m) nut_LC_all_old = nut_LC_all; KC_LC_all_old = KC_LC_all; nut_LC_all = zeros(songuon, 1); KC_LC_all = []; delta_KC_all = []; [hang_old,cot_old] %nut_LC_all = []; = size(KC_LC_all_old); for k=1:1:songuon if TT_goitin(k) ~= continue; end chiso_HT = nut_hientai(k); x_ht = x_nut(chiso_HT); y_ht = y_nut(chiso_HT); m = 0; for n=1:1:sonut if n ~= chiso_HT x_n = x_nut(n); y_n = y_nut(n); d_n = KC_2nut(x_ht,y_ht,x_n,y_n); 56 if d_n TTL) TT_goitin(kk) = -1; tg_CT_goitin(kk) = 0; chuoi_TG_nguon(kk) = tg; end bonho_nut(ID_HT) = bonho_nut(ID_HT) + 1; 59 if TT_goitin(kk) == bonho_nut(nut_ketiep) = bonho_nut(nut_ketiep) - 1; end if bonho_nut(nut_ketiep) < bonho_nut(nut_ketiep) = bonho_nut(nut_ketiep) + 1; TT_goitin(kk) = -4; chuoi_TG_nguon(kk) = tg; else nut_hientai(kk) = nut_ketiep; end end end P9 Chương trình biểu diễn kết mô (Ve_KQ_34.m) clf; figure (1); plot (Chuoi_sonut,TG_TB_4,'r->'); % FDGR hold on plot (Chuoi_sonut,TG_TB_3,'k-'); % CAGR legend('FDGR','CAGR','Location','Best'); title('Thoi gian toi dich trung binh'); grid on figure (2); plot (Chuoi_sonut,TL_ToiDich_4,'r->'); % FDGR hold on plot (Chuoi_sonut,TL_ToiDich_3,'k-'); % CAGR legend('FDGR','CAGR','Location','Best'); 60 title('Ty le goi tin toi dich'); grid on P10 Hệ mờ FDGR (FC_FDGR.fis) [System] Name='FC_FDGR' Type='mamdani' Version=2.0 NumInputs=3 NumOutputs=1 NumRules=30 AndMethod='min' OrMethod='max' ImpMethod='min' AggMethod='max' DefuzzMethod='centroid' [Input1] Name='VDF' Range=[0 1] NumMFs=4 MF1='Intermediate':'trimf',[0.3 0.5 0.7] MF2='Near':'trimf',[0.0225 0.221 0.42989417989418] MF3='Far':'trimf',[0.578 0.787 0.982804232804233] MF4='Exact':'trimf',[0.98 0.993386243386243 1] [Input2] Name='BO' Range=[0 1] NumMFs=3 MF1='Empty':'trapmf',[-0.36 -0.04 0.2103 0.425] MF2='Half':'trimf',[0.316 0.5 0.6971] MF3='Full':'trapmf',[0.575 0.781746031746032 1.04 1.36] [Input3] Name='DELTA' Range=[-1 1] NumMFs=3 MF1='GanHon':'trimf',[-1.8 -1 0] MF2='KhongDoi':'trimf',[-0.5 0.5] MF3='XaHon':'trimf',[0 1.8] [Output1] Name='FC' Range=[0 1] NumMFs=6 MF1='VeryBad':'trimf',[-0.2 3.469e-18 0.2] MF2='Bad':'trimf',[0 0.2 0.4] MF3='Acceptable':'trimf',[0.2 0.4 0.6] MF4='Good':'trimf',[0.4 0.6 0.8] MF5='VeryGood':'trimf',[0.6 0.8 1] MF6='Perfect':'trimf',[0.8 1.2] [Rules] 3 2, (1) : 2, (1) : 61 1 2 4 3 1 2 3 1 2 3 3 3 3 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4 5 6 3 1 (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1 1 1 1 1 1 1 1 1 1 1 1 1 1 62