Thiết kế chương trình
Trang 1CHƯƠNG 1
THIẾT KẾ CHƯƠNG TRÌNH
1 MÔ PHỎNG ĐƯỜNG TRUYỀN
ột hệ thống thông tin gồm có máy phát, kênh truyền và máy thu Ở máy phát, tín hiệu được điều chế theo phương pháp BPSK, QPSK và qua bộ lọc băng thông, rồi phát đi Tín hiệu đến máy thu sau khi qua kênh truyền có các loại nhiễu : nhiễu trắng, fading, nhiễu đồng kênh Để có được dữ liệu ban đầu, tín hiệu thu phải đi qua bộ giải điều chế, lọc thông thấp, rồi đến bộ quyết định
M
Sơ đồ khối của một hệ thống thông tin :
2 MÔ PHỎNG BỘ CÂN BẰNG SỬ DỤNG NEURAL NETWORKS
Do trên kênh truyền xuất hiện nhiều loại nhiễu gây ảnh hưởng đến tín hiệu thu, nên dữ liệu thu được sẽ bị sai Có rất nhiều kỹ thuật triệt nhiễu đã được đề cập trong phần lý thuyết, nhưng trong luận văn này chỉ đề cập đến kỹ thuật sử dụng bộ cân bằng Thực tế người ta đã áp dụng nhiều loại cân bằng khác nhau để xử lý tín hiệu, tuy nhiên trong phạm vi của đề tài tốt nghiệp chúng em chỉ mô phỏng bộ cân bằng sử dụng Neural Networks Phần lý thuyết trên đã nêu rất rõ các loại mạng có trong Neural Networks :
• Mạng Perceptron : Hàm truyền của các neuron là hàm nấc rất giống như neuron sinh học nhưng thực tế rất ít khi sử dụng trong mạng trí tuệ nhân tạo do khi qua mỗi neuron, tính chất của tín hiệu không còn chính xác
• Mạng tuyến tính : Mạng này giống như Perceptron nhưng hàm truyền là hàm tuyến tính cho ngõ ra có giá trị không giới hạn, chỉ giải quyết những vấn đề độc lập tuyến tính, có
Rx1
Rx1
Trang 2Phần 4_Chương 1 : Thiết kế chương trình
quy luật huấn luyện LMS mạnh hơn quy luật huấn luyện Peceptron Mạng tuyến tính có khả năng đáp ứng sự thay đổi của môi trường, được điều chỉnh theo từng bước dựa trên vector vào mới và vector mong muốn để tìm được các giá trị trọng số và ngưỡng thích hợp sao cho tổng bình phương sai số nhỏ nhất Mạng loại này thường được sử dụng trong những bộ lọc, những hệ thống điều khiển và xử lý tín hiệu số Đây là loại mạng đơn giản nhất có thể áp dụng trong thực tế
• Mạng Backpropagation : Backpropagation thực hiện dựa trên quy luật học Widrow-Hoff tổng quát hóa cho mạng đa lớp và các hàm truyền phi tuyến khác nhau Mạng có ngưỡng, một lớp sigmoid và một lớp tuyến tính ngõ ra có thể mô phỏng bất kỳ hàm nào với số mẫu rời rạc hữu hạn Mạng này được huấn luyện chính xác sẽ cho đáp ứng hợp lý khi đưa ngõ vào chưa từng được huấn luyện Thông thường tín hiệu mới vào có ngõ ra tương tự với ngõ ra chính xác của tín hiệu vào đã được huấn luyện giống với ngõ vào mới này Do tính chất tổng quất hóa này, ta có thể huấn luyện mạng dựa trên các cặp vào/ra đại diện mà vẫn cho kết quả tốt đối với các tín hiệu chưa được huấn luyện
• Mạng Radial Basis : Mạng Radial Basis yêu cầu nhiều neuron hơn mạng Backpropagation feedforward chuẩn, nhưng thường thiết kế ít tốn thời gian hơn mạng feedforward chuẩn Mạng này sẽ hoạt động tốt khi có nhiều vector huấn luyện Chính điều này giới hạn mạng Radial Basis trong việc ứng dụng vào bộ cân bằng Đồng thời số neuron Radial Basis tỉ lệ với kích thước không gian ngõ vào và độ phức tạp của vấn đề nên mạng Radial Basis lớn hơn mạng Backpropagation Mạng Radial Basis hoạt động chậm vì có quá nhiều phép tính, tốn nhiều không gian Do đó, trong luận văn này không mô phỏng mạng Radial Basis Mạng Radial Basis chỉ phù hợp cho vấn đề phân loại
• Mạng hồi tiếp : Mạng hồi tiếp chứa các kết nối ngược trở về các neuron trước đó Mạng này có thể chạy không ổn định và dao động rất phức tạp Mạng hồi tiếp rất được các nhà nghiên cứu quan tâm nhưng không có hiệu quả trong việc giải quyết các vấn đề thực tế
• Mạng Seft-Organnizing : Mạng có khả năng học, tìm ra quy luật và các tương quan ở ngõ vào và đưa ra các đáp ứng có ngõ vào tương ứng Các neuron của mạng học nhận ra các nhóm vector ngõ vào giống nhau, tự sắp xếp để nhận biết tần suất xuất hiện của các vector đầu vào được đưa tới Do đó mạng Seft-Organizing dùng để phân loại các vector trong không gian ngõ nhập, thích hợp cho việc nhận dạng, phân loại các tín hiệu ngõ vào
Ở đây, chúng ta áp chỉ áp dụng các loại mạng tuyến tính và mạng Backpropagation, thiết kế sao cho có thể học được đặc tính của chuỗi dữ liệu nhờ chuỗi huấn luyện được mô tả trước Mạng thay đổi trọng số liện tục để nhận biết chuỗi dữ liệu đúng Chương trình mô phỏng này được thiết kế với nhiều kiểu huấn luyện khác nhau; mỗi mạng, mỗi kiểu huấn luyện có nhiều cấu trúc có thể thay đổi Mô hình mạng Backpropagation áp dụng cho xử lý tín hiệu số là tốt nhất do có khả năng tổng quát quá Kết quả mô phỏng sẽ được trình bày trong phần sau
Rx1
Rx1
Trang 3Sơ đồ khối của một hệ thống thông tin có thêm bộ cân bằng để triệt nhiễu :
Xem xét một mô hình mạng điển hình
Mô hình mạng 2 lớp
R đầu vào
S1 neuron trong lớp 1, hàm truyền tansig
S2 neuron trong lớp 2, hàm truyền purelin
Mô hình mạng 3 lớp
R đầu vào
S1 neuron lớp 1, hàm truyền tansig
S2 neuron lớp 2, hàm truyền logsig
S3 neuron lớp 3, hàm truyền purelin
S2x1
S1x1
a1 n1
S2xS1 S1xR
S1x1
Rx1
S2 S1
S1x1
W 1
b 1
P
a2 n2
S2x1
W 2
b 2
S2x1
Đầu vào
S3
S1x1
a1
n1
S2xS1 S1xR
S1x1
Rx1
S2 S1
S1x1
W 1
b 1
P
a2
n2
S2x1
W 2
b 2
S2x1
a3
n3
S3x1
W 3
b 3
S3x1
S3xS2
1
Trang 4Phaàn 4_Chöông 1 : Thieát keá chöông trình
Trang 5CHƯƠNG 2
KẾT QUẢ MÔ PHỎNG
1 THỰC THI CHƯƠNG TRÌNH
Dùng chương trình Matlab để mô phỏng hệ thống thông tin trên Chương trình mô phỏng thực thi theo các bước sau :
Lưu đồ giải thuật của chương trình mô phỏng
Begin
Chọn chức năng
Nhập thông số môi trường
Chọn loại mạng và các thông số mạng
Chọn loại mạng và các thông số mạng
Thực thi chương trình
End Xuất kết quả
Trang 6Phần 4_Chương 2 : Kết quả mô phỏng
Lưu đồ giải thuật điều chế tín hiệu :
Bộ quyết định
Điều chế Tạo dữ liệu
Lọc BPF
End
RUN
Lọc BPF
Giải điều chế
LPF
Bộ cân bằng Neural Networks
Bộ cân bằng Neural Networks
Bộ quyết định
Tính BER
Xuất kết quả
Trang 7Giải thuật này có tốc độ chạy mô phỏng rất nhanh do không phải lặp lại các phép tính cos, sin (kỹ thuật điều chế) cho toàn bộ chuỗi bit vào, mà chỉ thực hiện trên hai mẫu (BPSK) hoặc bốn mẫu (QPSK)
Điều chế mẫu : BPSK : 2 mẫu QPSK : 4 mẫu
Điều chế mẫu : BPSK : 2 mẫu QPSK : 4 mẫu
Lấy mẫu tín hiệu điều chế tương ứng
Lấy mẫu tín hiệu điều chế tương ứng
End
ĐIỀU CHẾ
Tín hiệu điều chế Tín hiệu điều chế
Trang 8Phần 4_Chương 2 : Kết quả mô phỏng
Lưu đồ giải thuật huấn luyện mạng Neural Networks
Tạo mạng với thông số đã nhập
Tạo mạng với thông số đã nhập
End
HUẤN LUYỆN NEURAL NETWORKS
Sắp xếp tín hiệu huấn luyện mạng đúng với loại mạng
Sắp xếp tín hiệu huấn luyện mạng đúng với loại mạng
Tiền xử lý tín hiệu
Tiền xử lý
Huấn luyện mạng Huấn luyện mạng
Trang 9Lưu đồ giải thuật mô phỏng Neural Networks
End
Mô phỏng NEURAL NETWORKS
Sắp xếp tín hiệu nhập phù hợp với ngõ vào mạng
Sắp xếp tín hiệu nhập phù hợp với ngõ vào mạng
Tiền xử lý tín hiệu
Tiền xử lý tín hiệu
Chạy mô phỏng mạng đã được huấn luyện
Chạy mô phỏng mạng đã được huấn luyện
Hậu xử lý tín hiệu Hậu xử lý tín hiệu
Trang 10Phần 4_Chương 2 : Kết quả mô phỏng
Trang 11Trong cửa sổ giao diện chính có 4 nút nhấn :
Thực thi chương trình, hiện ra cửa sổ để nhập các thông số môi trường truyền như tần số sóng mang (Fc), tốc độ bit (R), loại nhiễu, …
Chạy file word, hiện lên cửa sổ trình bày nội dung của quyển Luận văn tốt nghiệp
Minh họa mạng Neural Networks, hiện lên cửa sổ trình bày một vài ví dụ về mạng
Thoát khỏi chương trình mô phỏng, hiện lên cửa sổ thoát
Khi click chuột vào nút Demo
Trang 12Phần 4_Chương 2 : Kết quả mô phỏng
Trong cửa sổ này người sử dụng có thể chọn một trong các ví dụ sau :
Mạng 1 neuron đầu vào
Mạng 2 neuron đầu vào
Mạng tuyến tính thích ứng
Mạng 2 lớp
Bài toán Phân Loại
Bài toán Tổng quát
Sau đây là một vài giao diện của các chương trình minh họa :
Trang 13Khi click chuột vào nút Mô phỏng, xuất hiện cửa sổ :
Trang 14Phần 4_Chương 2 : Kết quả mô phỏng
Cửa sổ này cho phép nhập :
Tần số sóng mang (Carrier Freq)
Tốc độ bit (Bit Rate)
Chiều dài chuỗi dữ liệu (Length of Data)
Loại dữ liệu (Ngẫu nhiên hay nhập vào)
Biên độ sóng mang (Amplitude)
Phương pháp điều chế (BPSK/QPSK)
Loại nhiễu (White Noise/Fading/Cochannel)
Mức độ nhiễu (SNR/Mean và Variance, số nguồn nhiễu)
Chọn nút Back để quay về cửa sổ chính hay nút Next để qua cửa sổ nhập thông số mạng Trong cửa sổ kế tiếp có thể chọn các thông số sau :
Các loại mạng :
• Bayesian regularization
• Levenberg_Marquardt
• One Step Secant
• Quasi_Newton
• Scale Conjugate Gradient
• Powell_Beal
• Polak_Ribiére
• Fletcher_Reeves
• Resilient Backpropagation
• Adaptive learning rate
• Gradient descent momentum
• Gradient descent
• Adaptive Linear
Loại hàm học : Gradient descent hay Gradient descent momentum
Số ngõ vào
Số lớp
Loại hàm sai số :
• MSE
• MAE
• SSE
Số neuron mỗi lớp
Hàm truyền mỗi lớp
Trang 16Phần 4_Chương 2 : Kết quả mô phỏng
Ví dụ :
Phương pháp điều chế QPSK
x 10-6
-1
0
1
x 10-6
-1
0
1
x 10-6 -6
-4
-2
0
2
4
x 10-6 -2
0
2
(a)
(b)
(c)
(d)
V
V
V
(sec)
V
(a) Tín hiệu điều chế QPSK (b) Tín hiệu phát sau khi lọc (c)Tín hiệu thu (có nhiễu) tại antenna thu (d) Tín hiệu thu sau khi lọc băng thông
Trang 17Màn hình xuất kết quả sau mô phỏng
Trang 18Phần 4_Chương 2 : Kết quả mô phỏng
Đồ thị huấn luyện mạng :