Bộtách sóngđa truycậpdùngmạngneuron (Multi userdetectorsbasedonneural networks) I. Giới thiệu Kỹ thuật đatruycập CDMA đã cho thấy những ưu điểm vượt trội hơn hẳn so với các phương pháp đatruycập khác như FDMA (Frequency Division Multiple Access), TDMA (Time Division Multiple Access). Tuy nhiên, chất lượng và dung lượng của nó vẫn giới hạn bởi can nhiễu đatruycập (MAI). Hệ thống thông tin di động CDMA thông thường không triệt được can nhiễu MAI vì dùng các bộ thu riêng biệt cho từng user (matched filter và mạch quyết định) mà không quan tâm đến tín hiệu của các user khác. Khi số lượng user trong hệ thống tăng lên sẽ làm giảm chất lượng của hệ thống, cụ thể là làm tăng mức can nhiễu đatruy cập, giảm tỉ số tín hiệu trên nhiễu (SNR), dẫn đến tăng tốc độ lỗi bít. Như vậy, để đảm bảo chất lượng của hệ thống thì số lượng user trong hệ thống phải bị giới hạn. Nói cách khác, nhiễu MAI gây ra giới hạn dung lượng của hệ thống CDMA hiện tại. Vì vậy, MAI là nhân tố chính làm giảm chất lượng và dung lượng của hệ thống CDMA thông thường. Bài báo cáo này sẽ đưa ra một phương pháp hủy bỏ MAI xử lý cấp độ cao hơn : ứng dụngmạng neuron, mà không cần biết người sử dụng mã PN để phát hiện. Bộtách dựa trên mạng tuyến tính, mạng Backpropagation và mạng Elman được nghiên cứu theo các đặc điểm và nhược điểm của họ và được mô phỏng trong hệ thống đồng bộ CDMA. II. TÁCHSÓNGĐATRUYCẬPDÙNGMẠNGNEURON Mục tiêu của các phương pháp táchsóngđatruycập là tìm ra vectơ bít truyền x của K user từ tín hiệu thu được y(t) ở đầu vào của các bộ lọc phối hợp. Nhiều tác giả đã trình bày nhiều cấu trúc mạngneuron cho bộtáchsóngđatruycập như: mạng Hopfield, Stochastic Hopfield, Self Organized mà hầu hết đều đạt hiệu quả cao. Trong bài báo này, các mạngneuron khác: Tuyến tính, Backpropagation, Elman được trình bày và mô phỏng kiểm chứng. Mô hình máy thu dùng kỹ thuật táchsóngđatruycập sử dụngmạngneuron được trình bày ở hình 1. Hình 1 Máy thu táchsóngđatruycậpdùngmạngneuron 1. Tổng quan về mạngneuron Hình 2 là sơ đồ khối thể hiện cấu trúc một Neuron. Nó có năm thành phần cơ bản như sau: Vector dữ liệu ngõ vào: p=[ p 1 , p 2 ,…. p R ] T Vector trọng số W =[w 1.1 ,w 1.2 ,…w 1.R ] . Ngưỡng ; Bộ tính tổng; Hàm truyền f. Hình 2 : Cấu trúc một Neuron Đầu ra của một neuron được xác định: a= f ( W p +b ) = f (w 1.1 p 1 +w 1.2 p 2 +…+w 1.R p R +b) Có nhiều dạng hàm truyền được áp dụng trong mạng neuron. Trong bài báo này, hai hàm truyền được dùng là Purelin và Tan-sigmiod: Hai hay nhiều neuron kết hợp thành một lớp mạng neuron. Hình 4 mô tả mạng một lớp neuron với : R : số phần tử của vectơ đầu vào. S : số neuron trong lớp. W = [ w 1,1 w 2,1 ⋮ w S ,1 w 1,2 w 2,2 ⋮ w S , 2 … … ⋮ … w 1, R w 2, R ⋮ w S , R ] : ma trận trọng số p: Vector dữ liệu ngõ vào. b : vectơ ngưỡng. a : vector ngõ ra của lớp neuron, được tính như sau: a = f (Wp + b) (1) Một mạng neuron, có thể có nhiều lớp, có thể được huấn luyện để cập nhật, tính toán lại các vectơ trọng số W và ngưỡng b sao cho mạng có thể mô tả chính xác nhất mối quan hệ dữ liệu vào ra. Hình 3 : Một lớp mạngNeuron Trong báo cáo này, ba loại mạng được sử dụng để táchsóng nhằm triệt can nhiễu đatruycập trong hệ thống CDMA đó là: mạng Tuyến tính, mạng BackPropagation và Elman. Các mạng này đã được xây dựng sẵn thành các tool box trong Matlab. Bài báo thiết lặp lại cấu hình ngõ vào ra trên các mạng này, chọn lựa hàm truyền thích hợp, chọn cách huấn luyện và xây dựng tập dữ liệu huấn luyện thích hợp sao cho các mạngneuron có thể triệt được can nhiễu đatruycập tối đa nhất nhằm nâng cao dung lượng và chất lượng của hệ thống thông tin di động CDMA. 2. Bộtáchsóngdùngmạngneuron tuyến tính Mạngneuron tuyến tính là mạng một lớp có hàm truyền ngõ ra là hàm tuyến tính (purelin()). Hình 4 là mạng tuyến tính gồm S neuron kết nối với R ngõ vào qua ma trận trọng số W. Hình 4 : Mạng tuyến tính Vectơ ngõ ra được tính toán như sau: a = purelin(Wp + b) = Wp + b (2) Mạngneuron tuyến tính được sử dụng để mô tả các mối quan hệ tuyến tính. Bên cạnh đó, từ phương trình Y = GAx + n, ta thấy rằng mối quan hệ của tín hiệu thu được trong hệ thống CDMA cũng phụ thuộc tuyến tính với dữ liệu phát.Từ đó ta suy ra: x = (GA)-1Y – (GA)-1n (3) Như vậy, nếu mạng được huấn luyện sao cho ma trận trọng số W=(GA)-1 và vectơ ngưỡng b=[-(GA)-1n] thì mạngneuron tuyến tính sẽ triệt được hoàn toàn nhiễu đatruy cập. Cấu hình mạngneuron tuyến tính trở thành một bộtáchsóngđatruycập như sau: − Cho số lượng ngõ vào của mạngneuron chính bằng số user K trong hệ thống CDMA, tức K = R. − Đưa tín hiệu thu được của K user vào ngõ vào của mạngneuron : Y = p. − Tạo ra tập dữ liệu huấn luyện thích hợp. Lưu đồ giải thuật như trong hình 6. Trong lưu đồ giải thuật này: − Bước thứ 1 là bước rất quan trọng, nó quyết định tính chính xác của mạng tuyến tính. Ta phải tạo ra dữ liệu nguồn P và đích T sao cho chúng mô tả được đặc trưng, đặc tính của tín hiệu truyền qua hệ thống CDMA. Để đạt được điều đó, tín hiệu nguồn được tạo ra từ 2K khả năng có thể có của các bít truyền và tổ hợp này được lặp lại nhiều lần để mạng có thể thích nghi theo đặc tính của nhiễu nền của môi trường truyền. Cấu hình số ngõ vào ra và khởi tạo mạng tuyến tính được thực hiện ở bước 2. − Ở bước thứ 3, các thông số của mạng có thể thay đổi để thấy được đáp ứng của mạng. Với mỗi bộ thông số, mạng được huấn luyện ở bước 4 với tập dữ liệu nguồn và đích được tạo ra ở bước 1. − Ở bước thứ 5, dữ liệu cần truyền được lấy một cách ngẫu nhiên, hoặc từ một file âm thanh, hình ảnh tùy theo yêu cầu mô phỏng. Kết quả mô phỏng có được thông qua bước 6 và 7. Hình 5 : Lưu đồ giải thuật Sai số trung bình bình phương - Mean Square Error (MSE) Mục tiêu của quá trình huấn luyện là cực tiểu hóa hàm sai số trung bình bình phương. Với tập vector vào và ra mong muốn : {p 1 ,t 1 },{p 2 ,t 2 },…,{p Q ,t Q } với pk là ngõ vào, tk là giá trị ra mong muốn tương ứng của mạng. Sai số được tính là sự khác nhau giữa giá trị ra mong muốn và giá trị ra thực sự của mạng. Mục tiêu cần cực tiểu hoá tổng bình phương những sai số này: MSE= 1 Q ∑ k =1 Q (e ( k ) ) 2 = 1 Q ∑ k =1 Q (t ( k ) −a ( k ) ) 2 (4) Thuật toán huấn luyện Windrow-Hoff dùng để huấn luyện mạng tuyến tính sẽ điều chỉnh trọng số và ngưỡng của mạng để cực tiểu hóa sai số trung bình bình phương theo công thức sau: W(k+1) = W(k) + 2αe(k)p T (k) và b(k+1) = b(k) + 2αe(k) (5) trong đó sai số e, ngưỡng b là những vector và 2α là tốc độ học tập. Nếu tốc độ học lớn, việc học sẽ nhanh, nhưng nếu lớn quá thì hệ thống sẽ không ổn định, thậm chí còn gia tăng lỗi. Giá trị hợp lý của tốc độ học thường được xác định bởi hàm maxlinlr(P,’bias’) của Matlab. Sai số trung bình bình phương là một hàm quadratic, chính vì vậy kết quả quá trình thực thi sẽ là một vị trí mà hàm sai số hoặc thật sự nhỏ nhất hoặc nhỏ nhất cục bộ hoặc không có giá trị nhỏ nhất nào. Điều này tùy thuộc vào việc chọn tập dữ liệu huấn luyện. 3. Bộtáchsóngdùngmạngneuron BackPropagation Mạngneuron BackPropagation được sử dụng trong bài báo này là một mạngneuron nhiều lớp, trong đó có một hay nhiều lớp ẩn gồm các neuron có hàm truyền tansig, lớp ngõ ra gồm các neuron có hàm truyền tuyến tính. Điểm đặc biệt của mạng này là các neuron trong các lớp ẩn có hàm truyền tansig phi tuyến nên mạng có thể học được các mối quan hệ tuyến tính và phi tuyến giữa ngõ vào và ngõ ra. Bên cạnh đó, ta thấy rằng mối liên hệ của tín hiệu thu được trong hệ thống CDMA cũng được xem là phi tuyến với dữ liệu phát vì đại lượng nhiễu nền n là một đại lượng ngẫu nhiên. Do vậy mà, mạngneuron BackPropagation hoàn toàn có thể được sử dụng để táchsóng một cách hiệu quả. Lớp ngõ ra tuyến tính cho phép mạng có ngõ ra có giá trị nằm ngoài khoảng (-1,1). Hình 6: Mạng BackPropagation Hình 6 là một mạng BackPropagation hai lớp, một lớp ẩn và một lớp ra. Trong quá trình huấn luyện, dựa vào giá trị của các dữ liệu vào ra, các trọng số và ngưỡng của mạng được cập nhật sao cho cực tiểu hóa hàm sai số. Hầu hết các giải thuật huấn luyện sử dụng gia số của hàm sai số để xác định cách cập nhật giá trị cho các trọng số và ngưỡng. Một cách phổ biến nhất đó là các trọng số và nguỡng được điều chỉnh sao cho hàm sai số suy giảm nhanh nhất: u k+1 = u k - α k g k (6) với u+ : vector trọng số và ngưỡng hiện tại. g k : gia số hiện tại. α k : tốc độ học. Có nhiều thuật toán huấn luyện mạng BackPropagation khác nhau. Chúng khác nhau về cách tính toán, dung lượng bộ nhớ sử dụng và không có thuật toán nào là tốt nhất đối với mọi trường hợp. Một số hàm huấn luyện thường dùng có trong toolbox của Matlab. Tiền và hậu xử lý Mạngneuron BackPropagation có thể hoạt động tốt hơn nếu chúng ta có một vài bước xử lý trên tập các giá trị vào, giá trị ra, trước khi qua mạng. Trước khi huấn luyện, chúng ta nên chuẩn hóa ngõ vào, ngõ ra trong khoảng [-1,1]. Việc cấu hình mạng BackPropagation cho bộtáchsóng và lưu đồ thực thi giống như đối với mạng tuyến tính. 4. Bộtáchsóngdùngmạngneuron Elman Mạng Elman thông thường là mạng hai lớp có đường hồi tiếp từ ngõ ra lớp thứ nhất về ngõ vào, như hình 7. Đường hồi tiếp này cho phép mạng Elman nhận ra và phát những mẫu dữ liệu thay đổi theo thời gian. Mạng Elman có các neuron tansig trong lớp ẩn và những neuron purelin ở lớp ngõ ra. Sự kết hợp này là rất đặc biệt bởi vì trong mạng hai lớp với những hàm truyền này có thể tạo ra bất kì hàm nào với độ chính xác tùy ý. Yêu cầu duy nhất là lớp ẩn phải có đủ neuron. Số neuron trong lớp ẩn càng nhiều thì mạng càng mô tả chính xác nhưng cũng phức tạp hơn. Việc cấu hình mạng Elman cho bộtáchsóng và lưu đồ thực thi giống như đối với mạng tuyến tính. Các hàm huấn luyện cho mạng Elman cũng giống như của mạng BackPropagation. Hình 7 : Mạng Elman Vì là một dạng mạng có hồi tiếp như mạng Hopfield nên mạng Elman cũng dễ rơi vào trạng thái cực tiểu cục bộ dẫn đến kết quả táchsóng không hiệu quả. Do vậy mà cần phải chạy mô phỏng nhiều lần để tìm ra các thông số tối ưu cho mạng Elman. III. KẾT LUẬN Mạng thông tin di động CDMA bị tác động mạnh bởi can nhiễu đatruycập do các mã ngẫu nhiên không hoàn toàn trực giao với nhau. Bộtáchsóng thong thường chỉ đơn thuần là một bộ lọc phối hợp (matched filter) nên không thể triệt đi can nhiễu đatruycập này. Bên cạnh các bộtáchsóng có khả năng triệt được nhiễu đatruycập mà chúng tôi đã trình bày trong bài báo trước và các bộtáchsóngdùngmạngneuron trong, trong bài báo này chúng tôi trình bàyba bộtáchsóng mới dùng ba loại mạng neuron: Tuyến tính, Backpropagation và Elman. Các bộtáchsóngdùngmạngneuron tỏ ra rất hiệu quả ngay khi hệ thống không được điều khiển công suất hoàn hảo. Ngoài ra, đặc điểm không cần biết trước mã trải phổ của các user trong hệ thống cho phép các bộtáchsóng này triệt được can nhiễu trong và ngoài cell một cách hiệu quả. Tài liệu tham khảo [1] Vũ Đình Thành, Huỳnh Phú Minh Cường, "Tách Sóngđatruycập trong hệ thống thông tin di động DS-CDMA đồng bộ“ ,Tạp chí Khoa Học và Công Nghệ, tập 42, số 1, năm 2004. [2] Florent Carlier, Fabienne Nouvel, Jacques Citerne, “Multi-User Detection for CDMA communications basedon self organized neuralnetworks structures”, Proceedings of the First IEEE International Workshop on Electronic Design, 2002. [3] W. G. Teich, M. Seidl, "Code Division Multiple Access Communications: Multi-user Detection basedon a Recurrent Neural Network Structure" IEEE Tran. Veh. Technol., vol. 46, pp. 979-984, July 1996.