PHÂN BỔ TẦN SỐ CHO MẠNG THÔNG TIN DI ĐỘNG
Một vấn đề đặt ra là làm sao có thể đáp ứng chất lượng phục vụ cho số thuê bao ngày càng tăng lên một cách nhanh chóng trong khi tài nguyên tần số hoàn toàn có giới hạn. Do đó vấn đề cơ bản của các nhà mạng là làm sao để tăng hiệu quả sử dụng băng tần số lên tối đa, đáp ứng nhu cầu về dung lượng cho mạng. Một trong những vần đề quan trọng của quá trình quy hoạch và tái quy hoạch mạng là phân bổ tần số hợp lí. Nó không chỉ có ý nghĩa về mặc chất lượng dịch vụ mà còn có ý nghĩa kinh tế trong việc sử dụng hiệu quả nguồn tài nguyên. Vì vậy trong LVTN này, em sẽ tiến hành một số giải pháp để thực hiện vấn đề trên, cụ thể là:
Tìm hiểu những kiến thức cơ bản về mạng GSM, quá trình quy hoạchmạng thông tin di động, đặc biệt là cách phân bổ tần số tối ưu. Từ đó dựng chương trình mô phỏng.
Đối với việc phân bổ tần số trong quá trình quy hoạch cũng như tái quy hoạch mạng di động, yêu cầu đặt ra là phải sử dụng lại tần số tối đa nhưng vẫn thỏa mãn các điều kiện đặt ra để hạn chế can nhiễu đồng kênh và can nhiễu kênh lân cận. Điều kiện đặt ra ở đây chính là khoảng cách tần số tối thiểu gán cho các cặp cell. Từ đó, em viết chương trình“GÁN KÊNH TẦN SỐ CHO MẠNG THÔNG TIN DI ĐỘNG” bằng ngôn ngữ C# nhẳm tìm ra lời giải tương đối hợp lý cho vấn đề này.
Phân tích, so sánh ưu nhược điểm của 2 cách sector 120o và 60o trong việc tái sử dụng lại tần số dựa trên kết quả mô phỏng có được từ chương trình mô phỏng
Nội Dung
Chương 1: GIỚI THIỆU
1.1 Khái quát tình hình của ngành viễn thông ở Việt Nam
1.2 Mục đích và nội dung của đề tài
Chương 2: LÝ THUYẾT VỀ QUY HOẠCH MẠNG DI ĐỘNG
2.1 Lịch sử phát triển và phân cấp cấu trúc vật lí mạng GSM
2.2 Mô hình hệ thống thông tin di động GSM
2.3 Các nhân tố ảnh hưởng đến quá trình lan truyền
2.4 Tiến trình quy hoạch mạng
Chương 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ
3.1 Đặt vấn đề
3.2 Bài toán phân bổ tần số
3.3 Thuật toàn giải bài toán phân bổ tần số và ví dụ
Chương 4: CHƯƠNG TRÌNH MÔ PHỎNG “GÁN KÊNH TẦN SỐ CHO MẠNG THÔNG TIN DI ĐỘNG”
4.1 Giao diện người dùng, ý nghĩa các thông số
4.2 Trường hợp dung lượng phân bố đều ở các cell
4.3 Trường hợp dung lượng tăng cục bộ ở 1 vùng nhất định trong cluster
Chương 5: KẾT LUẬN VÀ HƯỚNG PHÁ TRIỂN CỦA ĐỀ TÀI
5.1 kết luận
5.2 Hướng phát triển
77 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 3691 | Lượt tải: 4
Bạn đang xem trước 20 trang tài liệu Phân bố tần số cho mạng thông tin di động, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
17 118 119
TCH4 120 121 122 123 124
Ta thấy mỗi cell có thể phân bố cực đại đến 5 sóng mang.
Nhƣ vậy, với công nghệ đa truy cập TDMA của GSM, mổi kênh chứa 8
khe thời gian tƣơng ứng với 8 kênh vật lý, trong đó có 1 kênh dành cho quảng
bá, 1 kênh dành cho điều khiển để truy cập vị trí và thiết lập cuộc gọi.
Vậy số khe thời gian dành cho kênh lƣu lƣợng của mỗi cell còn (5 x 8 – 2) =
38 Tra bảng Erlang-B (Phụ lục), tại GoS 2 % thì một cell có thể cung cấp
dung lƣợng 29,166 Erlang. Giả thiết trung bình mỗi thuê bao trong một giờ
thực hiện 1 cuộc gọi kéo dài 120s tức là trung bình mỗi thuê bao chiếm 0,033
Erlang, thì mỗi cell có thể phục vụ đƣợc 29,166/0,033 = 833 (thuê bao).
CHƯƠNG 2:LÝ THUYẾT VỀ QUY HOẠCH MẠNG
29
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Hình 2.6: Mẫu tái sử dụng tần số 3/9
Theo lý thuyết, cấu trúc mảng 9 cells có tỉ số C/I > 9 dB đảm bảo GSM làm
việc bình thƣờng.
Tỉ số C/A cũng là một tỉ số quan trọng và ngƣời ta cũng dựa vào tỉ số
này để đảm bảo rằng việc ấn định tần số sao cho các sóng mang liền nhau
không nên đƣợc sử dụng ở các cell cạnh nhau về mặt địa lý.
Tuy nhiên, trong hệ thống 3/9 các cell cạnh nhau về mặt địa lý nhƣ A1
& C3, C1 & A2, C2 & A3 lại sử dụng các sóng mang liền nhau. Điều này
chứng tỏ rằng tỉ số C/A đối với các máy di động hoạt động ở biên giới giữa
hai cell A1 và C3 là 0dB, đây là mức nhiễu cao mặc dù tỉ số này là lớn hơn tỉ
số chuẩn của GSM là (- 9 dB). Việc sử dụng các biện pháp nhƣ nhảy tần, điều
khiển công suất động, truyền dẫn gián đoạn là nhằm mục đích giảm tối thiểu
các hiệu ứng này.
Mẫu tái sử dụng tần số 4/12:
CHƯƠNG 2:LÝ THUYẾT VỀ QUY HOẠCH MẠNG
30
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Mẫu sử dụng lại tần số 4/12 có nghĩa là các tần số sử dụng đƣợc chia
thành 12 nhóm tần số ấn định trong 4 vị trí trạm gốc. Khoảng cách giữa các
trạm đồng kênh khi đó là D = 6R.
Lập bảng ấn định tần số nhƣ trên,ta thấy mỗi cell có thể phân bố cực đại là 4
sóng mang. Nhƣ vậy, với khái niệm về kênh nhƣ đã nói ở phần trƣớc, một khe
thời gian dành cho kênh BCH, một khe thời gian dành cho kênh SDCCH/8.
Vậy số khe thời gian dành cho kênh lƣu lƣợng của mỗi cell còn (4 x 8 – 2) =
30 TCH. Tra bảng Erlang-B ( Phụ lục ), tại GoS = 2 % thì mỗi cell có thể
cung cấp dung lƣợng 21,932 Erlang. Giả sử mỗi thuê bao chiếm 0,033 Erlang
thì mỗi cell có thể phục vụ đƣợc 21,932/0,033 = 664 thuê bao.
Trong mẫu 4/12 số lƣợng các cell D sắp xếp theo các cách khác nhau
để nhằm phục vụ cho các cell A,B,C. Hiệu quả của việc điều chỉnh này là để
đảm bảo hai cell cạnh nhau không sử dụng hai sóng mang liền nhau (khác với
mẫu 3/9). Với mẫu này, khoảng cách tái sử dụng tần số là lớn hơn
Hình 2.7: mẫu tái sử dụng tần số 4/12
CHƯƠNG 2:LÝ THUYẾT VỀ QUY HOẠCH MẠNG
31
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Về lý thuyết, cụm 12 cells có tỉ số C/I > 12 dB. Đây là tỉ số thích hợp cho
phép hệ thống GSM hoạt động tốt. Tuy nhiên, mẫu 4/12 có dung lƣợng thấp
hơn so với mẫu 3/9 vì:
Số lƣợng sóng mang trên mỗi cell ít hơn (mỗi cell có 1/12 tổng số song
mang thay vì 1/9).
Hệ số sử dụng lại tần số thấp hơn (đồng nghĩa với khoảng cách sử
dụng lại là lớn hơn).
Mẫu tái sử dụng tần số 7/21:
Mẫu 7/21 có nghĩa là các tần số sử dụng đƣợc chia thành 21 nhóm ấn
định trong 7 trạm gốc. Khoảng cách giữa các trạm đồng kênh là D = 7,9R.
Ta thấy mỗi cell chỉ đƣợc phân bố tối đa 2 sóng mang. Nhƣ vậy với khái
niệm về kênh nhƣ đã nói ở phần trƣớc. Phải có một khe thời gian dành cho
BCH và có ít nhất một khe thời gian dành cho SDCCH, số khe thời gian dành
cho kênh lƣu lƣợng của mỗi cell còn (2 x 8 – 2) = 14 TCH . Tra bảng Erlang-
B (Phụ lục), tại GoS = 2 % thì mỗi cell có thể cung cấp một dung lƣợng phục
vụ đƣợc 8,2003/0,033 = 248 thuê bao.
CHƯƠNG 2:LÝ THUYẾT VỀ QUY HOẠCH MẠNG
32
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Hình 2.8: Mẫu tái sử dụng tần số 7/21
Nhận xét: Khi số nhóm tần số N giảm (21, 12, 9), nghĩa là số kênh tần số
có thể dùng cho mỗi trạm tăng thì khoảng cách giữa các trạm đồng kênh D sẽ
giảm 7,9R; 6R; 5,2R. Điều này nghĩa là số thuê bao đƣợc phục vụ sẽ tăng lên
là: 248; 664 và 883, nhƣng đồng thời nhiễu trong hệ thống cũng tăng lên. Nhƣ
vậy, việc lựa chọn mẫu sử dụng lại tần số phải dựa trên các đặc điểm địa lý
vùng phủ sóng, mật độ thuê bao của vùng phủ và tổng số kênh của mạng.
- Mẫu 3/9: số kênh trong một cell là lớn, tuy nhiên khả năng nhiễu cao.
Mô hình này thƣờng đƣợc áp dụng cho những vùng có mật độ máy di
động cao.
- Mẫu 4/12: sử dụng cho những vùng có mật độ lƣu lƣợng trung bình.
- Mẫu 7/21: sử dụng cho những khu vực mật độ thấp.
2.5 Chia sector: Thay vì sử dụng một anten đẳng hƣớng, trong cell đƣợc
phân sector sẽ sử dụng các anten có hƣớng phát ra góc 60 độ hoặc 120 độ.
Ƣu điểm của phân sector là sẽ giảm đƣợc nhiễu đồng kênh, tăng dung
CHƯƠNG 2:LÝ THUYẾT VỀ QUY HOẠCH MẠNG
33
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
lƣợng thuê bao phục vụ, sử dụng hiệu quả nguồn tài nguyên tần số; nhƣng
handover tăng làm cho hệ thống bận rộn hơn.
Hình 2.9: Chia sector
CHƯƠNG 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ
34
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Chƣơng 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ:[3]
3.1 Đặt vấn đề:
Trong mạng thông tin di động GSM ngày nay, nhu cầu phát triển số thuê
bao nhanh chóng trong khi băng tần GSM là một tài nguyên có giới hạn. Để
giải quyết vấn đề này trong quy hoạch và thiết kế mạng thông tin di động
GSM ngƣời ta đƣa ra giải pháp là sử dụng lại tần số ở những vị trí khác nhau
trong mạng GSM với khoảng cách an toàn để đảm bảo không xảy ra nhiễu.
Khoảng cách an toàn này đƣợc gọi là khoản cách tối thiểu để sử dụng lại tần
số D và tỉ lệ D/R là hệ số an toàn để sử dụng lại tần số nhƣ đã trình bày trong
phần lý thuyết .
Trong Hình 9, giữa cell 17 vỡ các cell lận cận {9, 10, 16, 18, 20, 21} tô
đậm phải luôn duy trì một khoảng cách tần số nhất định để tránh nhiễu.
Trong một số trƣờng hợp thậm trí đối với các cell ở xa hơn nhƣ các cell {2,
3, 4, 8, 11, 19 } cũng vẫn nằm trong khoảng cách có thể bị nhiễu. Nhƣ vậy
khoảng cách vật lý an toàn cho việc sử dụng lại các kênh tần số giống nhau
là thông số rất quan trọng đối với thiết kế mạng vô tuyến di động. Khoảng
cách tần số giữa các cặp cell đƣợc xác định dựa vào các yêu cầu về nhiễu và
đƣợc xây dựng thành ma trận khoảng cách tần số tƣơng ứng trong đó N
là số lƣợng cell nhƣ đã trình bày trên.
CHƯƠNG 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ
35
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Hình 3.1: Ví dụ mạng GSM với N=21cell
Ngoài việc bảo đảm không để nhiễu xảy ra, phân bố tần số còn bị ràng
buộc bởi điều kiện về số lƣợng tần số cần thiết của cell để phục vụ lƣu lƣợng
theo thiết kế. Do phân bố lƣu lƣợng không đều do đó nhu cầu tần số của các
cell là khác nhau. Có 3 phƣơng pháp phân bố tần số nhƣ sau: Phân bố tần số
cố định, Phân bố tần số động và phân bố tần số linh hoạt. Tuy nhiên trong
nội dung luận văn này em sẽ chỉ phân tích trƣờng hợp phân bố tần số cố
định.
Trong điều kiện mạng vô tuyến thông tin di động có băng tần giới hạn, do
đó từ vấn đề hiệu quả sử dụng băng tần đặt ra cho bài toán phân bố tần số là
phải tìm đƣợc phƣơng án phân bố tần số có số lƣợng tần số là tối thiểu trong
khi đó vẫn thoả mãn các điều kiện về nhiễu và số lƣợng tần số cho từng cell.
Hiện nay để giải quyết vấn đề phân bố tần số đa số các nhà khai thác sử dụng
phƣơng pháp phân bố tần số theo một mẫu sử dụng lại tần số cố định ví dụ
3/9, 4/12,7/21. Tuy nhiên phƣơng pháp này có hai hạn chế sau:
- Việc phân bố tần số chƣa căn cứ vào mức độ đánh giá về nhiễu của
các cell trên mạng lƣới (thông qua phƣơng pháp đo hoặc tính toán mô
phỏng) do đó nhiễu vẫn có thể xảy ra.
CHƯƠNG 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ
36
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
- Do việc phân bổ này là chƣa tính đến số lƣợng tần số thực tế cần thiết
cho từng cell do vậy băng tần số sử dụng không thay đổi theo số lƣợng
tần số sử dụng thực tế do đó hiệu quả sử dụng tần số còn thấp.
Mô hình phƣơng pháp phân bố tần số em đƣa ra sau đây là dựa trên hai
phƣơng pháp tiếp cận mới :
Thứ nhất : Việc phân bố tần số dựa trên việc xác định và đánh giá khả
năng nhiễu xẩy ra trên mạng lƣới bằng phƣơng pháp đo hoặc phƣơng pháp
mô phỏng từ đó xây dựng ma trận khoảng cách tần số giữa các cell. Ma
trận khoảng cách tần số giữa các cell bảo đảm việc phân bố tần số loại trừ
đƣợc khả năng nhiễu xẩy ra giữa các cell.
Thứ hai : Trên cơ sở số lƣợng tần số cần thiết thực tế cho từng cell, thuật
toán sẽ tìm phƣơng pháp phân bố tần số với số lƣợng tần số sử dụng là ít
nhất và do đó nâng cao đƣợc hiệu quả sử dụng băng tần số .
3.2 Bài toán phân bổ tần số:
Giả sử ta có:
- Tài nguyên tần số hiện có M tần số, đƣợc kí hiệu bằng , ,…, .
Khoảng cách giữa hai tần số là Δf (với mạng GSM , Δf = 200KHz).
Nhƣ vậy ta có quan hệ :
fi+m= fi + m* Δf
Trong đó , i, m là số nguyên dƣơng. Vậy độ rộng cả băng tần là : M*
Δf
- Một tập hợp C có N cell {C = C1a , C1b,...,CNb/2}
- Vector nhu cầu tần số W= {W1a, W1b, ..., WNb/2}. Trong đó Wix: là số
lƣợng kênh tần số cần thiết cho cell thứ ix vỡ 1≤ i ≤ N/2; x = a; b
- Ma trận nhƣ đã trình bày ở trên là ma trận khoản cách tần số
tƣơng ứng. Phần tử của ma trận là khoảng cách tần số giữa cell i vỡ
CHƯƠNG 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ
37
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
cell j. Tuỳ theo việc bố trớ cell trong mạng ta sẽ xác định các giá trị Sij
sao cho khoảng cách tần số giữa cell i vỡ cell j bảo đảm để không có
nhiễu xảy ra. Các giá trị của đƣợc xác định trên cơ sở các số liệu đo
đạc tình hình nhiễu thực tế trong mạng hoặc sử dụng phƣơng pháp mô
phỏng để xác định giá trị . Dựa vào các tiêu chuẩn về khoảng cách
tần số và phổ tần số GSM theo khuyến nghị ETSI GSM 05.05 và ETSI
GSM 05.08 để tránh nhiễu xẩy ra, các giá trị đƣợc xác định theo
nguyên tắc nhƣ sau:
Sij = 1 : Nếu giữa cell i và j là không đƣợc sử dụng cùng tần số.
Sij = 2 : Trong trƣờng hợp các kênh tần số lân cận nhƣ fi vỡ
fi+1 là không đƣợc phân bố cho các cell i , j một cách
đồng thời.
Sij = 0 : Trƣờng hợp không có nhiễu xảy ra ngay cả khi cell i
vỡ j sử dụng cùng một tần số.
Sii = 5 : Trƣờng hợp tần số sử dụng trong cùng một cell i phải
có khoảng cách tần số là Sii = 5
Trong phạm vi luận văn, em không đƣa ra phƣơng pháp xây dựng ma
trận bằng phƣơng pháp mô phỏng thực tế. Việc tính toán ma trận
khoảng cách tần số đối với các trƣờng hợp đƣợc dƣa ra trong chƣơng
trình mô phỏng. Tuy nhiên, đề minh hoạ, em đƣa ra một ví dụ theo
hình 3.2 bên dƣới và phƣơng pháp xây dựng ma trận cho trƣờng
hợp cell sector 120o .
Trƣờng hợp sector 120o đối với mô hình 9 cell:
CHƯƠNG 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ
38
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Hình 3.2: mô hình cluster 9 cells
Theo nguyên tắc xác định nhƣ trên, ta có các phần tử của ma trận
có các giá trị lần lƣợt nhƣ sau(ứng với trƣờng hợp 2 kênh tần
số và không đƣợc phân bổ một cách đồng thời cho 2 cell kế cận
i và i ):
C1a C1b C2a C2b C3a C3b C4a C4b C5a
C1a 5 1 1 2 0 1 2 0 0
C1b 1 5 1 2 2 2 2 1 0
C2a 1 1 5 1 0 2 2 1 2
C2b 2 2 1 5 1 1 2 1 0
C3a 0 2 0 1 5 1 1 2 0
C3b 1 2 2 1 1 5 2 2 2
CHƯƠNG 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ
39
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
C4a 2 2 2 2 1 2 5 1 1
C4b 0 2 1 1 2 2 1 5 1
C5a 0 1 2 0 0 2 1 1 5
Bảng 3.1: Ma trận khoản cách tần số cho mô hình cluster 9 cells
Nhƣ vậy kết quả bài toán là xác định đƣợc ma trận sử dụng tần số
cho từng cell của mạng, giả sử đƣợc gọi là ma trận , ở đây, M là
số tần số hiện có, còn N là số cell của tập hợp C trong trƣờng hợp
sector 120
o
hoặc 2xN trong trƣờng hợp sector 60o .Phần tử của ma trận
FNN kí hiệu là . Để tìm ma trận trƣớc hết ta định nghĩa các
phần tử của ma trận .Ban đầu đặt = 0, sau đó thực hiện
thuật toán giá trị sẽ đƣợc gán theo nguyên tắc sau:
0: Có nghĩa là cell thứ i (theo cột) là không sử dụng tần
số thứ m (theo hàng).Và nếu tần số này phân bổ cho cell i thì
cũng không gây ra xung đột với các tần số khác hiện đã đƣợc
phân bổ cho các cell khác.
= 1: Điều này có nghĩa là cell thứ i đã sử dụng tần số
fmi = -1: Điều này có nghĩa là cell thứ i không đƣợc sử dụng
tần số vì nếu sử dụng sẽ gây ra nhiễu với các tần số đã đƣợc
phân bố.
Trong đó : 1 ≤ m ≤ M, 1 ≤ i ≤ N. Mục tiêu đặt ra là tìm đƣợc số lƣợng tần số
sử dụng M′ tối thiểu (M′ ≤ M ) đồng thời vẫn thoả mãn 2 điều kiện rỡng
buộc sau:
Điều kiện ràng buộc 1: Điều kiện rỡng buộc về khoảng cách tần số:
Khi = = 1 thì | | ≥ (1)
CHƯƠNG 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ
40
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Trong đó = 1 là tần số đƣợc gán theo cell thứ j
Với tất cả các giá trị m, L, j , i trừ trƣờng hợp m = L và i = j. Với trƣờng hợp i
= j là trƣờng hợp sử dụng tần số cùng trên một cell .
Điều kiện rang buộc 2: Là ràng buộc về thoả mãn nhu cầu số lƣợng
tần số sử dụng cho từng cell, đáp ứng đƣợc dung lƣợng của từng cell
theo thiết kế. Nhƣ đã trình bày ở trên số lƣợng tần số cần thiết cho từng
cell đƣợc biểu diễn bằng vector W= {W1a, W1b,... WNb/2}, do vậy ta có :
∑ =
3.3 Thuật toàn giải bài toán phân bổ tần số và ví dụ:
3.3.1 Thuât toán phân bổ tần số:
Bƣớc 1: khởi tạo
- Xác định tập hợp cell C = {C1a , C1b,...,CNb/2}.
- Xác định số lƣợng tần số F= { , ,…, . }
- Xác định ma trận khoảng cách tần số ;
- Xác định nhu cầ tần số của từng cell : W= {W1a, W1b, ...,
WNb/2};
- Khởi tạo ma trậ sử dụng tần số với các phần tử ban đầu
= 0;
Bƣớc 2 : Xác định cell đầu tiên để gán tần số bằng phƣơng pháp lựa
chọn ngẫu nhiên.(để tối ƣu thì chọn cell mà có nhu cầu tần số lớn
nhất để gán trƣớc).
Bƣớc 3 : Bắt đầu gán tần số cho cell có nhu cầu tần số ;
Gán tần số cho cell : Chuyển giá trị = 0 sang =1.
CHƯƠNG 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ
41
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Bƣớc 4: Theo giá trị của ma trận , kiểm tra Điều kiện ràng
buộc 1 và thay đổi giá trị của = {0,−1,+1 } theo nguyên tắc xác
định giá trị trình bày ở phần 2.
Bƣớc 5: Theo giá trị Wi của cell Ci kiểm tra Điều kiện ràng buộc
2 .
- Nếu thoả mãn thì kết thúc gán tần số cho cell Ci chuyển sang
thực hiện bƣớc tiếp.
- Nếu chƣa thoả mãn quay lại thực hiện bƣớc 3, gán tần số tiếp
theo cho cell ;
Bƣớc 6: Xác định cell gán tần số tiếp theo trong số những cell còn
lại trừ cell :
Gán tần số cho cell Ck bất kỳ: thực hiện tƣơng tự nhƣ cho cell Ci từ bƣớc 3.
Bƣớc 7: Khi tất cả các cell đã đƣợc gán tần số và xác định đƣợc ma
trận sử dụng tần số thì kết thúc thuật toán.
3.3.2 Ví dụ minh hoạ :
Để chứng minh thuật toán giải bài toán phân bổ tần số ta sử dụng một
bài toán ví dụ nhƣ sau:
Bài toán 1: Giả sử ta có một tập hợp cell C gồm 4 cell: C = {C1, C2, C3,
C4}, ma trận khoảng cách tần số tƣơng ứng giữa các cell S là :
S = [
]
- Nhu cầu tần số cho từng cell C1, C2, C3, C4 đƣợc biểu diễn bằng vector
nhu cầu tần số là W = [1 1 1 3].
- Giả sử ta có băng tần số gồm 15 tần số: f = { f1, f2 , f3,...., f15 }.
CHƯƠNG 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ
42
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Yêu cầu : Dựa vào 3 tham số (C, S, W) đã cho ta phải xác định ma trận sử
dụng tần số FMxN sao cho số lƣợng tần số sử dụng M′ là tối thiểu (M′ ≤ M )
đồng thời vẫn thoả mãn 2 điều kiện ràng buộc (1) và (2). Tuy nhiên cũng cần
lƣu ý số lƣợng tần số hiện có M phải đủ lớn để bảo đảm thoả mãn ràng buộc
về số lƣợng tần số yêu cầu cho từng cell.
Để tìm ma trận FMxN trƣớc hết ta định nghĩa các giá trị của phần tử của
ma trận FMxN .Ban đầu đặt = 0, sau đó khi bắt đầu thực hiện thuật toán
giá trị sẽ đƣợc gán
các giá trị = [0, 1, -1 ] theo nguyên tắc nhƣ đã nói ở phần trên.
Kết quả thực hiện thuật toán là:
Sử dụng bài toán 1 với 4 cell và 15 tần số (M=15), đặt các phần tử mi f = 0.
Để chọn cell đầu trên cho việc phân bố tần số ta sử dụng phƣơng pháp hoán vị
ngẫu nhiên giữa vị trí của các cell C1,C2 ,C3,C4 . Gọi σ1, σ2, σ3, σ4 là ký
hiệu thứ tự các cell bắt đầu thực thuật toán. Giả sử ngẫu nhiên ta lựa chọn
đƣợc thứ tự là: C3,C1,C2 ,C4 hay ta có: σ1 = C3 , σ2= C1, σ3 = C2 , σ4 = C4
, nhƣ vậy đầu tiên ta gán tần số cho C3 , tức là cột 3 của Ma trận FMxN ban
đầu đƣợc xác định các phần tử f đều bằng 0.
Nhƣ vậy là hoàn thành bƣớc gán tần số thứ nhất cho cell C3 và xác định
các giá trị tƣơng ứng thoả mãn các điều kiện ràng buộc (1). Tiếp theo thuật
toán sẽ kiểm tra số lƣợng tần số yêu cầu của cell C3 đã thoả mãn chƣa. Nếu
chƣa, thuật toán sẽ tìm dọc theo cộtC3 để tìm giá trị fmi = 0 gần nhất để phân
bố tần số tiếp theo cho cell C3 và lại tiếp tục các bƣớc kiểm tra xác định các
giá trị fmi sau khi gán tần số thứ 2 cho cell C3 . Tuy nhiên theo đầu bài C3 chỉ
có nhu cầu một tần số (W3 1) do đó việc gán thuật toán cho cell C3 hoàn
thành. Tƣơng tự nhƣ vậy ta thực hiện gán tần số cho các cell còn lại và thu
đƣợc kết quả giải pháp 1 theo
bảng 2 .
CHƯƠNG 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ
43
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Qua nhiều lần chạy thuật toán với các hoán vị khác nhau kết quả thu đƣợc với
các hoán vị là : C3,C1,C2 ,C4 và hoán vị C3,C1,C4 ,C2 ; C3,C4 ,C1,C2 ;
C1,C2 ,C3,C4 ; C1,C3,C2 ,C4 ; C1,C3,C4 ,C2 là có kết quả giống nhau và
giống nhƣ giải pháp 1 ở bảng 2. Tức là kết quả phải sử dụng là 13 tần số và
phân bố nhƣ giải pháp 1.
Tuy nhiên đối với các hoán vị bắt đầu bằng cell C4 nhƣ: C4 ,C1,C3,C2 ; C4
,C1,C2 ,C3 ; C4,C1,C2 ,C3 ; C4 ,C3,C2 ,C1 là cho kết quả giống nhau theo
giải pháp 2 ở bảng 2. Cho kết quả số lƣợng tần số phải sử dụng là 11 tần số.
Rõ ràng là giải pháp 2 là giải pháp tối ƣu . Kết quả đƣợc ở bản 3.2 bên dƣới.
Nhận xét:
Nhƣ vậy qua nhiều lần chạy thuật toán ta nhận thấy rằng nếu bắt đầu gán
tần số cho cell có số lƣợng nhu cầu tần số W lớn nhất rồi tiếp theo đến các
cell có số lƣợng tần số nhu cầu thấp hơn sẽ cho kết quả tối ƣu. Nhƣ vậy
thuật toán thay vì phải thực hiện hoán vị ngẫu nhiên với tập hợp cell ban
đầu cần thực hiện (Mx2^N) phép tính xuống chỉ còn thực hiện (MxN) phép
tính là tìm đƣợc kết quả tối ƣu.
CHƯƠNG 3: XÂY DỰNG THUẬT TOÁN PHÂN BỔ TẦN SỐ
44
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Bảng 3.2: Kết quả sử dụng tần số theo ví dụ 1
Tần số Giải pháp 2
C1 C2 C3 C4
f1 +1 -1 -1 +1
f2 -1 -1 -1 -1
f3 -1 -1 +1 -1
f4 -1 -1 -1 -1
f5 -1 +1 -1 -1
f6 -1 -1 -1 +1
f7 -1 -1 -1 -1
f8 -1 -1 -1 -1
f9 0 -1 0 -1
f10 0 0 -1 -1
f11 0 -1 -1 +1
f12 0 0 0 -1
f13 0 0 0 -1
f14 0 0 0 -1
f15 0 0 0 -1
Tần số Giải pháp 1
C1 C2 C3 C4
f1 +1 -1 +1 -1
f2 -1 -1 -1 -1
f3 -1 -1 -1 +1
f4 -1 -1 -1 -1
f5 -1 +1 -1 -1
f6 -1 -1 0 -1
f7 -1 -1 -1 -1
f8 -1 -1 -1 +1
f9 0 -1 -1 -1
f10 0 0 0 -1
f11 0 0 0 -1
f12 0 0 -1 -1
0 0 -1 +1
f14 0 0 -1 -1
f15 0 0 0 -1
CHƯƠNG 4: MÔ PHỎNG
45
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Chƣơng 4: CHƢƠNG TRÌNH MÔ PHỎNG “GÁN KÊNH TẦN SỐ
CHO MẠNG THÔNG TIN DI ĐỘNG”
4.1 Giao diện ngƣời dùng, ý nghĩa các thông số:
4.1.1 Giao diện ngƣời dùng:
Trên màn hình thể hiện các thông số sẽ do ngƣời dùng tự thiết lập hoặc
chƣơng trình thiết lập (mặc định) và hình minh họa cách bố trí cell trên mạng
lƣới. Kết quả tính toán sẽ đƣợc suất ra bên dƣới màn hình, bao gồm ma trận
sử dụng tần số F, băng thông, số tần số đƣợc sử dụng.
Hình 4.1: giao diện ngƣời dùng
4.1.2 Ý nghĩa các thông số:
SỐ CELLS: là tổng số lƣợng cell sẽ đƣợc tính toán phân bổ tần số.
Chƣơng trình hỗ trợ cho 3 trƣờng hợp: cluster 9 cells, 12 cells và 21 cells là
CHƯƠNG 4: MÔ PHỎNG
46
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
3 trƣờng hợp dùng phổ biến nhất trong thực tế mạng GSM, trong 2 trƣờng
hợp là sector 60o và 120o.
SỐ TẦN SỐ TỐI ĐA: là tổng số kênh tài nguyên tần số mà mạng có
thể sử dụng, tối thiểu là 5 tần số. khoảng cách giữa hai tần số là ( với
mạng GSM, 2 ).
VECTO NHU CẦU TẦN SỐ: là nhu cần tần số của từng cell
W={W1a, W1b, ..., WNb/2}, trong đó Wix là số lƣợng kênh tần số cần thiết
cho cell thứ ix. Chế độ MẶC ĐỊNH ở đây là W = {2, 2, …, 2}, tức là mỗi
cell yêu cầu sử dụng 2 tần số đối với trƣờng hợp sector 120o và W =
{1,1,….1} đối với trƣờng hợp sector 60o .
MA TRẬN KHOẢNG CÁCH TẦN SỐ: là ma trận chỉ khoảng cách
tần số SNN tƣơng ứng giữa các cells. Phần tử Sij của ma trận là khoảng cách
tần số giữa cell i và cell j. Chế độ MẶC ĐỊNH ở đây là ma trận khoảng cách
tần số ứng với trƣờng hợp 2 kênh tần số liên tiếp fi và fi + 1 không đƣợc
phân bố cho các cell i, j mộtcách đồng thời.
SỐ TẦN SỐ ĐƢỢC DÙNG: là số M tần số đã dùng sau khi quy
hoạch
BĂNG THÔNG: là độ rộng cả băng tần đã sử dụng, BW = M.
MA TRẬN SỬ DỤNG TẦN SỐ F: là bảng sử dụng tần số FNN
của các cell.
Trong đó M là số lƣợng tần số sử dụng, N là số lƣợng cell
DÙNG: sử dụng tần số
K : không đƣợc sử dụng tần số
“-” : có thể sử dụng mà không làm ảnh hƣởng đến mạng
4.1.3 Sử dụng chƣơng trình:
Khởi động chƣơng trình từ phần mềm C# hoặc từ file
*.exe.
Nhập các thông số đầu vào.
CHƯƠNG 4: MÔ PHỎNG
47
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Chạy chƣơng trình và nhận xét kết quả.
Chú ý:
Khi nhập các thông số đầu vào thiếu, sai, hoặc lỗi thì chƣơng trình sẽ
thông báo lỗi và không chạy.
Quỹ tần số trong mạng GSM thƣờng là 42 kênh tần số.
4.2 Trƣờng hợp dung lƣợng phân bố đều ở các cell:
4.2.1 Mô hình 9 cell:
Sector 120o: xét bài toán với các thông số đầu vào là:
W = {2, 2, 2, 2, 2, 2, 2, 2, 2}; ma trận khoảng cách tần số nhƣ
mặc định.
Kết quả:
- số tần số đƣợc dùng là 18.
- Băng thông sử dụng là 3600 KHz.
CHƯƠNG 4: MÔ PHỎNG
48
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Hình 4.2:mô hình 9 cell, 120
o
, dung lƣợng phân bố đều
Nhƣ vậy: Trong một mạng mà sử dụng mô hình cluster 9 cell, sector 120
thì với nhu cầu của mỗi cell là 2 kênh tần số, số lƣợng tần số đƣợc dùng là 18
tần số. Số lƣợng tần số nhƣ vậy là không giảm so với trƣờng hợp gán kênh tần
số ngẫu nhiên, nhƣng bù lại, với việc phân bố nhƣ trên sẽ giảm đƣợc vấn đề
nhiễm giữa các kênh lân cận ở mức thấp nhất theo một tiêu chuẩn cho trƣớc.
Sector 60o : xét bài toán với các thông số đầu vào nhƣ sau:
W = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1};
Ma trận khoảng cách tần số nhƣ mặc định.
Kết quả:
- Số tần số đƣợc dùng là : 10
CHƯƠNG 4: MÔ PHỎNG
49
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
- Băng thông sử dụng là 2000 KHz
Hình 4.3:mô hình 9 cell, 60
o
, dung lƣợng phân bố đều
Nhƣ vậy: với cùng một mô hình cluster 9 cell, cùng 1 nhu cầu về dung
lƣợng, thì rõ ràng là việc sector 60 làm giảm số lƣợng tần số xuống một
cách đáng kể, từ 18 tần số phải dùng xuống chỉ còn 10 tần số phải dùng.
4.2.2 Mô hình cluster 21 cell:
Sector 120o: xét bài toán với các thông số đầu vào:
W = {2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2};
Ma trận khoảng cách tần số nhƣ mặc định
Kết quả:
- Số tần số đƣợc dùng: 24 tần số.
CHƯƠNG 4: MÔ PHỎNG
50
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
- Băng thông sử dụng: 4800 KHz
Hình 4.4:mô hình 12 cell, 120
o
, dung lƣợng phân bố đều
Sector 60o: xét bài toán với dung lƣợng phân bố đều trong
mạng:
W = {1, 1, . . . 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},ma trận khoảng cách tần số là
mặc định.
Kết quả:
- Số tần số đƣợc dùng là 10 tần số.
- Băng thông là 2000 KHz
CHƯƠNG 4: MÔ PHỎNG
51
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Hình 4.5:mô hình 12 cell, 60
o
, dung lƣợng phân bố đều
Nhận xét:
Số lƣợng tần số và băng thông giảm đi rõ rệt so với trƣờng hợp
sử dụng phƣơng pháp ấn định tần số nhƣ phần lý thuyêt.
Với cùng điều kiện về khoảng cách tần số, khi thực hiện sector
60
o
thì kết quả số lƣợng tần số cũng nhƣ băng thông phải dùng
giảm đi nhiều so với trƣờng hợp sector 120o và khi không chia
sector.
4.3 Trƣờng hợp dung lƣợng tăng cục bộ ở 1 vùng nhất định trong
cluster:
4.3.1 Mô hình cluster 9 cell:
Trƣờng hợp sector 120o :
Xét bài toán với các thông số đầu vào nhƣ sau:
CHƯƠNG 4: MÔ PHỎNG
52
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
W = {2, 2, 2, 2, 2, 2, 2, 5, 2}; ma trận khoảng cách tần số là
mặc định.
Kết quả:
- Số tần số đƣợc dùng: 28
- Băng thông sử dụng: 5600 KHz
Hình 4.6:mô hình 9 cell, 120
o
, dung lƣợng phân bố không đều
Trong bài toán trên, với giả sử là nhu cầu về dung lƣợng ở 1 cell thứ 4b tăng
đột biến, nên số tần số phải dùng ở cell này là 5 tần số, trong khi những cell
khác chỉ cần 2 tần số là đủ. Khi đó ta thấy số lƣợng tần số phải tăng lên 1 cách
rất đáng kể.
Trƣờng hợp sector 60o : xét bài toàn nhƣ trên với các thông
số:
CHƯƠNG 4: MÔ PHỎNG
53
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
W={1,1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 5, 5, 1, 1}
, ma trận khoảng cách tần số vẫn nhƣ cũ.
Kết quả:
- Số tần số đƣợc dùng là : 23
- Băng thông cần dùng: 4600 KHz
Hình 4.7:mô hình 9 cell, 60
o
, dung lƣợng phân bố không đều
Nhƣ vậy: Rõ ràng khi chia nhỏ sector từ 120o thành 60o thì số lƣợng tần số
phải dùng giảm đáng kể. Ta thấy phƣơng pháp chia nhỏ sector sẽ là 1 phƣơng
án hữu hiệu để giải quyết vấn đề tài nguyên tần số trong trƣờng hợp dung
lƣợng tăng đột biến ở 1 hay một số vị trí cell nào đó.
CHƯƠNG 4: MÔ PHỎNG
54
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
4.3.2 Mô hình cluster 21 cell:
Trƣờng hợp sector 120o : xét bài toán với các thông số:
W = {2, 2, 5, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2}; ma trận khoảng
cách tần số nhƣ mặc định.
Kết quả:
- Số tần số đƣợc dùng: 28
- Băng thông đƣợc dùng là: 5600 Khz
Hình 4.8:mô hình 21cell, 120
o
, dung lƣợng phân bố không đều
CHƯƠNG 4: MÔ PHỎNG
55
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Trƣờng hợp sector 60o : xét bài toán với các thông số: dung lƣợng
của mỗi cell tăng không đều nhau, cell 3a, 3b có dung lƣợng tăng đột
biến so với các cell khác trong mô hình.
W = { 1, 1, 1, 1, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1};
ma trận khoảng cách tần số nhƣ mặc định.
Kết quả:
- Số tần số đƣợc dùng: 23
- Băng thông đƣợc dùng là: 4600 Khz
Hình 4.6:mô hình 21 cell, 60
o
, dung lƣợng phân bố không đều
Nhận xét:
CHƯƠNG 4: MÔ PHỎNG
56
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
- Khi dung lƣợng tăng lên cục bộ thì việc sector 60o cũng làm cho số tần
số sử dụng giảm đáng kể với cùng 1 khoảng cách tần số nhƣ trong
trƣờng hợp sector 120o .
- Từ đó ta thấy phƣơng pháp chia nhỏ sector cho thấy việc giảm số tần
số rõ rệt với cùng một nhu cầu dung lƣợng nhƣ nhau, qua đó tiết kiệm
đƣợc tài nguyên tần số.
CHƯƠNG 5: KẾT LUẬN
57
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Chƣơng 5: KẾT LUẬN VÀ HƢỚNG PHÁ TRIỂN CỦA ĐỀ TÀI:
5.1 kết luận:
Nhƣ đã nói ở phần trƣớc, nhu cầu phát triển số thuê bao trong mạng
GSM nhanh chóng trong khi băng tần GSM là một tài nguyên có giới hạn.
Bài toán đặt ra cho các nhà quy hoạch mạng là phải sử dụng lại tần số đã
đƣợc sử dụng ở nơi khác với khoảng cách an toàn sao cho không xảy ra
nhiễu.
Mô hình phƣơng pháp phân bố tần số em đƣa đƣa ra trên đây đã dựa
trên hai phƣơng pháp tiếp cận mới :
Thứ nhất : Việc phân bố tần số dựa trên việc xác định và đánh giá khả
năng nhiễu xẩy ra trên mạng lƣới bằng phƣơng pháp đo hoặc phƣơng pháp
mô phỏng từ đó xây dựng ma trận khoảng cách tần số giữa các cell. Ma
trận khoảng cách tần số giữa các cell bảo đảm việc phân bố tần số loại trừ
đƣợc khả năng nhiễu xảy ra giữa các cell.
Thứ hai : Trên cơ sở số lƣợng tần số cần thiết thực tế cho từng cell, thuật
toán sẽ tìm phƣơng pháp phân bố tần số với số lƣợng tần số sử dụng là ít
nhất và do đó nâng cao đƣợc hiệu quả sử dụng băng tần số .
- Do đó, khả năng sử dụng lại tần số là tƣơng đối tối ƣu, đảm bảo vấn đề
tăng dung lƣợng nhƣng vẫn bảo đảm chất lƣợng dịch vụ. Qua từng bƣớc
thực hiện cụ thể của chƣơng trình “ GÁN KÊNH TẦN SỐ CHO MẠNG
THÔNG TIN DI ĐỘNG” cho kết quả tối ƣu về việc phân bổ tần số trong
các mô hình cluster 9cell, 12cell và 21cell trong 2 trƣờng hợp anten sector
120
o
và 60
o. Nhƣ vậy có thể nói nhiệm vụ của Luận văn đã thực hiện
xong, ở đây em muốn đƣa ra nhựng đánh giá cụ thể về chƣơng trình:
Chƣơng trình”GÁN KÊNH TẦN SỐ CHO MẠNG THÔNG
TIN DI ĐỘNG” đƣa ra kết quả tính toán tối ƣu về việc sử dụng
nguồn tài nguyên tần số. Ở đây, các tần số đƣợc phân bổ trên
từng cell không những thỏa mãn nhu cầu về dung lƣợng, mà còn
CHƯƠNG 5: KẾT LUẬN
58
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
đảm bảo các khoảng cách an toàn về tần số để tránh can nhiễu
đồng kênh và can nhiễu kênh lân cận. Đó là yêu cầu bắt buộc
trong quá trình quy hoạch và tái quy hoạch mạng.
Chƣơng trình “GÁN KÊNH TẦN SỐ CHO MẠNG THÔNG
TIN DI ĐỘNG”tƣơng đối dễ sử dụng. Ngƣời dùng có thể chọn
chế độ MẶC ĐỊNH để làm quen ban đầu với chƣơng trình, hoặc
tùy chỉnh lại các thông số theo ý riêng của mình. Hình minh họa
cho từng trƣờng hợp giúp ngƣời dùng có thể hình dung dễ dàng
cách bố trí từng cell trên mạng. Kết quả hiển thị tƣơng đối
nhanh, chính xác và rõ ràng.
Với những chức năng hiện tại, các chƣơng trình phần nào giải quyết
đƣợc những yêu cầu cơ bản về phân bổ tần số cho quá trình quy hoạch
mạng.
Chƣơng trình đƣợc viết bằng ngôn ngữ C#,có thể tự chạy trên nền
Window mà không cần chƣơng trình biên dịch, do đó có khả năng thƣơng
mại rất cao nếu đƣợc đầu tƣ nâng cấp những hạn chế. Nếu đƣợc cung cấp
đủ dữ liệu và thời gian phát triển, em tin có thể xây dựng chƣơng trình này
thành ứng dụng mạnh và hiệu quả, đáp ứng nhu cầu thực tế
Qua kết quả mô phỏng ở trên, ta thấy đƣợc việc chia nhỏ sector là một
phƣơng pháp khá tốt để giải quyết bài toán tiết kiệm băng thông tần số,
tăng dung lƣợng phục vụ và góp phần giảm nhiễu xuyên kênh.
Việc chia sector 60 làm cho số lƣợng tần số phải dùng giảm đi một
cách rất đáng kể, qua đó tiết kiệm đƣợc băng tần phải sử dụng, nâng cao
hiệu quả sử dụng băng tần số, hạn chế vấn đề nhiễu xuyên kênh và kênh
lân cận.
Tuy nhiên, việc chia sector sẽ làm cho thuê bao đang đi chuyển hoạt
động liên tục chuyển từ cell này qua cell khác, làm cho quá trình xử lí
chuyển vùng gặp khó khăn. Hơn nữa, chi phí cho các thiết bị cũng tăng lên
khi thực hiện việc sector.
CHƯƠNG 5: KẾT LUẬN
59
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
5.2 Hƣớng phát triển:
- Với khả năng lập trình còn hạn hẹp, kiến thức chƣa sâu nên em biết rằng
chƣơng trình “CHƢƠNG TRÌNH PHÂN BỔ TẦN SỐ CHO MẠNG
GSM” cần phải có sự cải thiện và phát triển hơn nữa mới mang nhiều ý
nghĩa và thực sự có giá trị sử dụng. Các khuyết điểm của chƣơng trình
cũng nhƣ nhƣ rất nhiều ý tƣởng mà em chƣa đủ thời gian và khả năng để
cải thiện và thực hiện. Em hi vọng có thể phát triển chƣơng trình này
trong tƣơng lai với một số hƣớng phát triển và cải thiện mà em rút ra đƣợc
trong quá trình thực hiện:
Chƣơng trình nên tăng tính tƣơng thích cho ngƣời sử
dụng bằng cách sử dụng thêm tính năng đồ họa để import
từ bản đồ thực tế của các cell. Ngƣời dùng có thể click và
chọn trực tiếp các thông số từ bản đồ mạng thay vì nhập
bằng bảng ma trận nhƣ trên. Kết quả xuất ra đồng thời ma
trận phân bố và các thông số của từng cell. Ngƣời dùng khi
qua tâm đến cell nào có thể chọn trực tiếp cell đó và lấy
kết quả
Cơ sở phát triển của chƣơng trình trên là dựa trên việc
chia anten sector 120
o
và 60
o, do đó việc dùng lại tần số bị
hạn chế do nhiễu xuyên kênh nhiều. Nếu sử dụng anten
sector 30
o
thì hiệu quả sử dụng tần số sẽ cao hơn nhƣng
quá trình tính toán lại phức tạp hơn.
Chƣơng trình nên cho chế độ tuỳ chọn số lƣợng cell
thay vì chỉ mặc định là 9cells, 12cells, 21cells vì tuy 3 mô
hình trên là phổ biến và dùng nhiều, nhƣng cũng có khi
nhà quy hoạch mạng có thể sử dụng các mô hình khác tuỳ
vào điều kiện thực tế. chƣơng trình nên cho phép tùy nhập
CHƯƠNG 5: KẾT LUẬN
60
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
số lƣợng cell tác động cũng nhƣ vị trí từng cell trong bản
đồ thực.
Việc lựa chọn dải tần số trong chƣơng trình là 1 dải tần
liên tục. Thực tế tài nguyên tần số có thể trên các dãy tần
khác nhau. Do đó chƣơng trình nên có thêm chức năng
nhập vào từng dãy tần số không liên tục thì khả năng ứng
dụng cao hơn.
Với những hạn chế trên, hi vọng trong trƣơng lai em sẽ có cơ hội khắc
phục và phát triển phần nào chƣơng trình, mang lại giá trị ứng dụng thực
tế cho nó.
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
Phụ lục:
1. Tài liệu tham khảo:
[1] Jukka Lempiainen,Matti Manninen : “Radio Interface System
Planning for Gsm/Gprs/Umts”, chƣơng 1,2,4,5.
[2]Nguyễn Tuấn Anh, Dƣơng Văn Trọng : LVTN “Tái Quy Hoạch Mạng” ,
tháng 7/2009
[3] Nguyễn Mạnh Hùng :“Xây dựng thuật toán phân bố tần số trong qui
hoạch mạng thông tin di động GSM”, Tạp chí bƣu chính viễn thông số
243.
[4] Vũ Đức Thọ, “Tính toán mạng thông tin di động số CELLULAR”, Nhà
xuất bản giáo dục, Hà Nội 1999., chƣơng 3.
2. Code thực hiện chƣơng trình:
3. using System;
4. using System.Collections.Generic;
5. using System.ComponentModel;
6. using System.Data;
7. using System.Drawing;
8. using System.Text;
9. using System.Windows.Forms;
10. using Thesis;
11.
12. namespace Thesis
13. {
14. public partial class Channel_Assighnment : Form
15. {
16. private Balloons.BalloonToolTip balError = new
Balloons.BalloonToolTip();
17. public Channel_Assighnment()
18. {
19. balError.TipText = " ";
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
20. balError.Icon =
Balloons.BalloonToolTip.TooltipIcon.Error;
21. balError.VisibleTime = 2000;
22. InitializeComponent();
23. }
24.
25. private bool CheckData()
26. {
27. bool ketqua = false;
28. if (Ndata.Text == "")
29. {
30. balError.Title = "NHẬP VÀO N";
31. balError.CreateToolTip(Ndata.Handle.ToInt32());
32.
balError.Show(Balloons.BalloonToolTip.BalloonAlignment.BottomMiddle)
;
33. Ndata.Focus();
34. return ketqua;
35. }
36. if (MMax.Text == "")
37. {
38. balError.Title = "NHẬP QUỸ TẦN SỐ";
39. balError.CreateToolTip(MMax.Handle.ToInt32());
40.
balError.Show(Balloons.BalloonToolTip.BalloonAlignment.BottomMiddle)
;
41. MMax.Focus();
42. return ketqua;
43. }
44. ketqua = true;
45. return ketqua;
46. }
47. // chương trình tính toán:
48. private void Caculate_Click(object sender, EventArgs e)
49. {
50. bool ketqua = CheckData();
51. if (ketqua == false)
52. return;
53. dgvF.Rows.Clear();
54. int N;
55. if (Ndata.Text == "9ab") N = 18;
56. else if (Ndata.Text == "12ab") N = 24;
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
57. else if (Ndata.Text == "9") N = 9;
58. else if (Ndata.Text == "12") N = 12;
59. else if (Ndata.Text == "21") N = 21;
60. else N = 42;
61. int k, l, i, j, M, count, max_w;
62. Boolean Done = false;
63. int[] Matrix_C = new int[N];
64. int[,] Matrix_S = new int[N, N];
65. int[] Matrix_W = new int[N];
66.
67. for (i = 0; i < N; i++)
68. {
69. Matrix_W[i] = int.Parse(dgvW.Rows[0].Cells[i].Value.ToString());
70. }
71.
72. for (i = 0; i < N; i++)
73. for (j = 0; j < N; j++)
74. {
75. Matrix_S[i, j] = int.Parse(dgvS.Rows[i].Cells[j].Value.ToString());
76. }
77.
78. for (i = 0; i < N; i++)
79. Matrix_C[i] = 0;
80.
81. M = int.Parse(MMax.Text);
82.
83. string[,] Matrix_F = new string[M, N];
84.
85. for (i = 0; i < N; i++)
86. for (j = 0; j < M; j++)
87. Matrix_F[j, i] = "-";
88.
89. while (!Done)
90. {
91. max_w = 0;
92. k = -1;
93. for (i = 0; i < N; i++)
94. if (Matrix_C[i] == 0)
95. {
96. if (Matrix_W[i] >= max_w)
97. {
98. k = i;
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
99. max_w = Matrix_W[i];
100. }
101. }
102. if (k > -1)
103. {
104. count = 0;
105. while (count < Matrix_W[k])
106. {
107. for (l = 0; l < M; l++)
108. if (Matrix_F[l, k] == "-")
109. break;
110. if(l<M)
111. Matrix_F[l, k] = "DÙNG";
112. for (i = 0; i < N; i++)
113. if ((Matrix_C[i] == 0) && (i != k))
114. for (j = 0; j < M; j++)
115. if (Math.Abs(j - l) < Matrix_S[i, k])
116. Matrix_F[j, i] = "K";
117. for (i = l + 1; i < (l + Matrix_S[k, k]); i++)
118. if (i<M)
119. Matrix_F[i, k] = "K";
120. count += 1;
121. }
122. Matrix_C[k] = 1;
123. }
124. else
125. Done = true;
126. }
127.
128. int max=1;
129. l = 1; count = 1;
130. for (j = 0; j < N; j++)
131. {
132. k = 0;
133. for (i = 0; i < M; i++)
134. {
135. if (Matrix_F[i, j] == "DÙNG")
136. {
137. k += 1;
138. count = i+1;
139. }
140. }
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
141. if (k != Matrix_W[j])
142. l = 0;
143. if (max < count)
144. max = count;
145. }
146. if (l == 0)
147. {
148. MUse.Text = "THÔNG SỐ NHẬP KHÔNG HỢP LỆ";
149. Bandwidth.Text = "THÔNG SỐ NHẬP KHÔNG HỢP LỆ";
150. }
151. else
152. {
153. MUse.Text = max.ToString();
154. max = max * 200;
155. Bandwidth.Text = max.ToString();
156. }
157.
158. for (j = 0; j < M; j++)
159. {
160. string[] currentColumn = new string[N+1];
161. currentColumn[0] = "F " + (j+1).ToString();
162. for (i = 0; i < N; i++)
163. currentColumn[i+1] = Matrix_F[j, i];
164. dgvF.Rows.Add(currentColumn);
165. }
166. }
167. // các thông số mặc định:
168. private void WDefault_Click(object sender, EventArgs
e)
169. {
170. dgvW.Rows.Clear();
171. if (Ndata.Text == "9ab")
172. {
173. dgvW.Rows.Add(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1);
174. }
175. else if (Ndata.Text == "12ab")
176. {
177.
dgvW.Rows.Add(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1);
178. }
179. else if (Ndata.Text == "21ab")
180. {
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
181. dgvW.Rows.Add(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);
182. }
183. else if (Ndata.Text == "9")
184. {
185. dgvW.Rows.Add(2, 2, 2, 2, 2, 2, 2, 2, 2);
186. }
187. else if (Ndata.Text == "12")
188. {
189. dgvW.Rows.Add(2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2);
190. }
191. else if (Ndata.Text == "21")
192. {
193.
dgvW.Rows.Add(2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2);
194. }
195. }
196.
197.
198.
199.
200. private void macdinh_Click(object sender, EventArgs e)
201. {
202. dgvS.Rows.Clear();
203. if (Ndata.Text == "9ab")
204. {
205.
dgvS.Rows.Add(5,2,1,1,0,1,1,0,0,0,0,0,1,2,0,0,0,0);
206.
dgvS.Rows.Add(2,5,0,1,0,0,2,1,0,0,0,0,1,1,0,0,0,0);
207.
dgvS.Rows.Add(0,0,5,2,0,0,0,2,1,0,2,1,2,1,1,2,0,0);
208.
dgvS.Rows.Add(0,0,2,5,0,0,1,2,2,1,1,0,1,0,1,0,0,0);
209.
dgvS.Rows.Add(0,0,0,0,5,2,0,0,0,0,1,0,0,1,0,0,1,2);
210.
dgvS.Rows.Add(1,0,0,0,2,5,0,0,0,0,2,1,1,2,0,0,1,0);
211.
dgvS.Rows.Add(1,2,0,1,0,0,5,2,0,0,0,0,1,0,0,0,0,0);
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
212.
dgvS.Rows.Add(0,1,1,2,0,0,2,5,1,0,1,0,2,1,0,0,0,0);
213.
dgvS.Rows.Add(0,0,1,2,0,0,0,1,5,2,0,0,0,0,1,0,0,0);
214.
dgvS.Rows.Add(0,0,1,0,0,0,0,0,2,5,0,0,0,0,2,1,0,0);
215.
dgvS.Rows.Add(0,0,2,1,1,2,0,1,0,0,5,2,2,1,2,1,1,0);
216.
dgvS.Rows.Add(0,0,1,0,0,1,0,0,0,0,2,5,1,0,1,2,2,1);
217.
dgvS.Rows.Add(1,0,2,1,0,1,1,2,0,0,2,0,5,2,0,0,0,0);
218.
dgvS.Rows.Add(2,1,1,0,1,2,0,1,0,0,1,0,2,5,0,0,0,0);
219.
dgvS.Rows.Add(0,0,0,0,0,0,0,0,1,2,0,1,0,0,5,2,0,0);
220.
dgvS.Rows.Add(0,0,2,1,0,0,0,0,0,1,1,2,1,0,2,5,1,0);
221.
dgvS.Rows.Add(0,0,0,0,1,0,0,0,0,0,1,2,0,0,0,1,5,2);
222.
dgvS.Rows.Add(0,0,0,0,2,1,0,0,0,0,0,1,0,0,0,0,2,5);
223.
224. }
225. else if (Ndata.Text == "12ab")
226. {
227.
dgvS.Rows.Add(5,2,0,0,0,0,0,1,1,0,0,0,0,0,0,0,2,1,0,0,0,0,0,0);
228.
dgvS.Rows.Add(2,5,0,0,0,0,0,0,2,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0);
229.
dgvS.Rows.Add(0,0,5,2,0,0,0,0,0,1,1,0,0,0,2,1,1,2,2,1,0,0,0,0);
230.
dgvS.Rows.Add(0,0,2,5,0,0,0,0,1,2,2,1,0,0,1,0,0,1,1,0,0,0,0,0);
231.
dgvS.Rows.Add(0,0,0,0,5,2,0,0,0,0,0,0,1,0,0,1,0,0,1,0,2,1,1,2);
232.
dgvS.Rows.Add(0,0,1,0,2,5,0,0,0,0,0,0,2,1,1,2,0,0,2,1,1,0,0,1);
233.
dgvS.Rows.Add(0,0,0,0,0,0,5,2,0,0,0,0,0,0,1,0,1,0,0,0,0,0,2,1);
234.
dgvS.Rows.Add(1,0,1,0,0,0,2,5,0,0,0,0,0,0,2,1,2,1,0,0,0,0,1,0);
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
235.
dgvS.Rows.Add(1,2,1,1,0,0,0,0,5,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0);
236.
dgvS.Rows.Add(0,1,1,2,0,0,0,0,2,5,0,0,0,0,1,0,1,2,0,0,0,0,0,0);
237.
dgvS.Rows.Add(0,0,1,2,0,0,0,0,0,1,5,2,0,0,0,0,0,0,0,1,0,0,0,0);
238.
dgvS.Rows.Add(0,0,0,1,0,0,0,0,0,0,2,5,1,0,0,0,0,0,0,1,0,0,0,0);
239.
dgvS.Rows.Add(0,0,0,0,1,2,0,0,0,0,0,0,5,2,0,1,0,0,1,2,0,1,0,0);
240.
dgvS.Rows.Add(0,0,0,0,0,1,0,0,0,0,0,0,2,5,0,0,0,0,0,1,1,2,0,0);
241.
dgvS.Rows.Add(0,0,2,1,0,1,1,2,0,1,0,0,0,0,5,2,1,2,1,0,0,0,0,1);
242.
dgvS.Rows.Add(0,0,1,0,1,2,0,1,0,0,0,0,1,0,2,5,0,1,2,1,0,0,1,2);
243.
dgvS.Rows.Add(2,1,1,0,0,0,1,2,0,1,0,0,0,0,1,0,5,2,0,0,0,0,0,0);
244.
dgvS.Rows.Add(1,0,2,1,0,0,0,1,1,2,0,0,0,0,2,1,2,5,1,0,0,0,0,0);
245.
dgvS.Rows.Add(0,0,1,2,1,2,0,0,0,0,0,1,1,0,1,2,0,1,5,2,0,0,0,0);
246.
dgvS.Rows.Add(0,0,1,0,0,1,0,0,0,0,1,2,2,1,0,1,0,0,2,5,0,0,0,0);
247.
dgvS.Rows.Add(0,0,0,0,2,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,5,2,0,1);
248.
dgvS.Rows.Add(0,0,0,0,1,0,0,0,0,0,0,0,1,2,0,0,0,0,0,0,2,5,0,0);
249.
dgvS.Rows.Add(0,0,0,0,1,0,2,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,5,2);
250.
dgvS.Rows.Add(0,0,0,0,2,1,1,0,0,0,0,0,0,0,1,2,0,0,1,0,1,0,2,5);
251. }
252. else if (Ndata.Text == "21ab")
253. {
254.
dgvS.Rows.Add(5,2,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,0,0
,0,0,0,0,0,0,0,0,0,0);
255.
dgvS.Rows.Add(2,5,1,0,0,0,0,0,0,0,0,0,0,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0
,0,0,0,0,0,0,0,0,0,0);
256.
dgvS.Rows.Add(0,1,5,2,0,0,0,0,0,0,0,0,0,1,2,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1
,0,0,0,0,0,0,0,0,0,0);
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
257.
dgvS.Rows.Add(0,0,2,5,0,0,0,0,0,0,0,0,0,0,1,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0
,0,0,0,0,0,0,0,0,0,0);
258.
dgvS.Rows.Add(0,0,0,0,5,2,0,1,0,0,0,0,0,1,0,0,0,1,1,0,0,0,0,0,0,0,2,1,0,0,1,2
,2,1,0,0,0,0,0,0,0,0);
259.
dgvS.Rows.Add(0,0,0,0,2,5,0,0,0,0,0,0,0,0,0,0,1,2,2,1,0,0,0,0,0,0,1,0,0,0,0,1
,1,0,0,0,0,0,0,0,0,0);
260.
dgvS.Rows.Add(0,0,0,0,0,0,5,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,1,0,0,0,1,0,0,0,0
,1,0,2,1,0,0,0,0,2,1);
261.
dgvS.Rows.Add(0,0,0,0,1,0,2,5,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,0,0,0,1,2,0,0,0,0
,0,0,0,1,0,0,0,0,0,1);
262.
dgvS.Rows.Add(0,0,0,0,0,0,0,0,5,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0
,0,0,0,0,2,1,1,2,1,0);
263.
dgvS.Rows.Add(0,0,0,0,0,0,1,0,2,5,0,0,1,0,0,0,0,0,0,0,0,0,2,1,1,2,0,0,0,0,0,0
,0,0,0,0,1,0,0,1,2,1);
264.
dgvS.Rows.Add(0,0,0,0,0,0,0,0,0,0,5,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0
,0,0,0,0,0,0,2,1,0,0);
265.
dgvS.Rows.Add(1,0,0,0,0,0,0,0,0,0,2,5,1,0,0,0,0,0,0,0,0,0,0,0,2,1,0,0,2,1,0,0
,0,0,0,0,0,0,1,0,0,0);
266.
dgvS.Rows.Add(0,0,0,0,0,0,0,0,0,1,0,1,5,2,0,1,0,0,0,0,0,0,0,0,2,1,1,0,1,2,1,0
,0,0,0,0,0,0,0,0,2,1);
267.
dgvS.Rows.Add(0,0,1,0,0,0,0,0,0,0,0,0,2,5,1,2,0,0,0,0,0,0,0,0,1,0,2,1,0,1,2,1
,0,0,0,0,0,0,0,0,1,0);
268.
dgvS.Rows.Add(1,2,2,1,0,0,0,0,0,0,0,0,0,1,5,2,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0
,0,0,0,0,0,0,0,0,0,0);
269.
dgvS.Rows.Add(0,1,1,0,0,0,0,0,0,0,0,0,1,2,2,5,0,0,0,0,0,0,0,0,1,0,1,0,0,1,2,1
,0,0,0,0,0,0,0,0,0,0);
270.
dgvS.Rows.Add(0,0,1,2,0,1,0,0,0,0,0,0,0,0,1,0,5,2,0,0,0,0,0,0,0,0,0,0,0,0,0,1
,0,0,0,0,0,0,0,0,0,0);
271.
dgvS.Rows.Add(0,0,0,1,1,2,0,0,0,0,0,0,0,0,0,0,2,5,1,0,0,0,0,0,0,0,1,0,0,0,1,2
,0,0,0,0,0,0,0,0,0,0);
272.
dgvS.Rows.Add(0,0,0,0,1,2,0,0,0,0,0,0,0,0,0,0,0,1,5,2,0,0,0,0,0,0,0,0,0,0,0,0
,0,1,0,0,0,0,0,0,0,0);
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
273.
dgvS.Rows.Add(0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,2,5,1,0,0,0,0,0,0,0,0,0,0,0
,1,2,0,0,0,0,0,0,0,0);
274.
dgvS.Rows.Add(0,0,0,0,0,0,1,2,0,0,0,0,0,0,0,0,0,0,0,1,5,2,0,0,0,0,0,1,0,0,0,0
,1,2,0,1,0,0,0,0,0,0);
275.
dgvS.Rows.Add(0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,2,5,0,0,0,0,0,0,0,0,0,0
,0,1,2,1,0,0,0,0,0,0);
276.
dgvS.Rows.Add(0,0,0,0,0,0,2,1,1,2,0,0,0,0,0,0,0,0,0,0,0,0,5,2,0,1,0,1,0,0,0,0
,0,0,0,1,0,1,0,0,1,2);
277.
dgvS.Rows.Add(0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,2,5,0,0,0,0,0,0,0,0
,0,0,1,2,1,2,0,0,0,1);
278.
dgvS.Rows.Add(0,0,0,0,0,0,0,0,0,1,1,2,2,1,0,1,0,0,0,0,0,0,0,0,5,2,1,0,1,2,0,0
,0,0,0,0,0,0,0,1,1,0);
279.
dgvS.Rows.Add(0,0,0,0,0,0,0,0,1,2,0,1,1,0,0,0,0,0,0,0,0,0,1,0,2,5,0,0,0,1,0,0
,0,0,0,0,0,0,1,2,2,1);
280.
dgvS.Rows.Add(0,0,0,0,2,1,0,1,0,0,0,0,1,2,0,1,0,1,0,0,0,0,0,0,0,0,5,2,0,0,1,2
,1,0,0,0,0,0,0,0,0,1);
281.
dgvS.Rows.Add(0,0,0,0,1,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,1,0,1,0,0,0,2,5,0,0,0,1
,2,1,0,0,0,0,0,0,1,2);
282.
dgvS.Rows.Add(2,1,0,0,0,0,0,0,0,0,1,2,1,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,5,2,0,0
,0,0,0,0,0,0,0,0,0,0);
283.
dgvS.Rows.Add(1,0,0,0,0,0,0,0,0,0,0,1,2,1,1,2,0,0,0,0,0,0,0,0,2,1,0,0,2,5,0,0
,0,0,0,0,0,0,0,0,1,0);
284.
dgvS.Rows.Add(0,0,2,1,1,0,0,0,0,0,0,0,1,2,1,2,0,1,0,0,0,0,0,0,0,0,2,1,0,1,5,2
,0,0,0,0,0,0,0,0,0,0);
285.
dgvS.Rows.Add(0,0,1,0,2,1,0,0,0,0,0,0,0,1,0,1,1,2,0,0,0,0,0,0,0,0,2,1,0,0,2,5
,1,0,0,0,0,0,0,0,0,0);
286.
dgvS.Rows.Add(0,0,0,0,2,1,1,2,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,1,2,0,0,0,1
,5,2,0,0,0,0,0,0,0,1);
287.
dgvS.Rows.Add(0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,1,2,2,1,0,0,0,0,0,1,0,0,0,0
,2,5,0,0,0,0,0,0,0,0);
288.
dgvS.Rows.Add(0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,1,0,0,0,0,0,0,0,0
,0,0,5,2,0,0,0,0,0,0);
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
289.
dgvS.Rows.Add(0,0,0,0,0,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,2,0,0,0,0,0,0,0,0
,0,0,2,5,0,1,0,0,0,1);
290.
dgvS.Rows.Add(0,0,0,0,0,0,0,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0
,0,0,0,0,5,2,0,1,0,0);
291.
dgvS.Rows.Add(0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,0,0,0,0,0,0
,0,0,0,1,2,5,0,0,0,0);
292.
dgvS.Rows.Add(0,0,0,0,0,0,0,0,1,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0
,0,0,0,0,0,0,5,2,0,0);
293.
dgvS.Rows.Add(0,0,0,0,0,0,0,0,2,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,0,0,0,0
,0,0,0,0,1,0,2,5,1,0);
294.
dgvS.Rows.Add(0,0,0,0,0,0,1,0,1,2,0,0,2,1,0,0,0,0,0,0,0,0,1,0,1,2,0,1,0,0,0,0
,0,0,0,0,0,0,0,1,5,2);
295.
dgvS.Rows.Add(0,0,0,0,0,0,2,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,2,1,0,1,1,2,0,0,0,0
,1,0,0,1,0,0,0,0,2,5);
296.
297. }
298. else if (Ndata.Text == "9")
299. {
300. dgvS.Rows.Add(5, 1, 1, 2, 0, 1, 2, 0,
0);
301. dgvS.Rows.Add(1, 5, 1, 2, 2, 2, 2, 2,
1);
302. dgvS.Rows.Add(1, 1, 5, 1, 0, 2, 2, 1,
2);
303. dgvS.Rows.Add(2, 2, 1, 5, 1, 1, 2, 1,
0);
304. dgvS.Rows.Add(0, 2, 0, 1, 5, 1, 1, 2,
0);
305. dgvS.Rows.Add(1, 2, 2, 1, 1, 5, 2, 2,
2);
306. dgvS.Rows.Add(2, 2, 2, 2, 1, 2, 5, 1,
1);
307. dgvS.Rows.Add(0, 2, 1, 1, 2, 2, 1, 5,
1);
308. dgvS.Rows.Add(0, 1, 2, 0, 0, 2, 1, 1,
5);
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
309. }
310. else if (Ndata.Text == "12")
311. {
312. dgvS.Rows.Add(5,1,0,1,2,0,0,1,2,0,0,0);
313. dgvS.Rows.Add(1,5,1,1,2,2,1,2,2,2,0,1);
314. dgvS.Rows.Add(0,1,5,1,0,1,2,2,1,2,2,2);
315. dgvS.Rows.Add(1,1,1,5,1,0,0,2,2,1,1,2);
316. dgvS.Rows.Add(2,2,0,1,5,1,0,1,2,1,0,0);
317. dgvS.Rows.Add(0,2,1,0,1,5,1,1,0,2,1,0);
318. dgvS.Rows.Add(0,1,2,0,0,1,5,1,0,2,2,1);
319. dgvS.Rows.Add(1,2,2,2,1,1,1,5,2,2,1,2);
320. dgvS.Rows.Add(2,2,1,2,2,0,0,2,5,1,0,1);
321. dgvS.Rows.Add(0,2,2,1,1,2,2,2,1,5,1,1);
322. dgvS.Rows.Add(0,0,2,1,0,1,2,1,0,1,5,1);
323. dgvS.Rows.Add(0,1,2,2,0,0,1,2,1,1,1,5);
324. }
325. else if (Ndata.Text == "21")
326. {
327. dgvS.Rows.Add(5,1,0,0,0,1,1,2,0,0,0,0,1,0,2,1,0,0,0,0,0);
328. dgvS.Rows.Add(1,5,1,0,0,0,1,2,2,0,0,0,0,1,1,2,0,0,0,0,0);
329. dgvS.Rows.Add(0,1,5,1,0,0,1,1,2,2,1,0,0,2,0,2,2,0,0,0,1);
330. dgvS.Rows.Add(0,0,1,5,1,0,1,0,0,1,2,2,1,2,0,1,2,2,1,0,2);
331. dgvS.Rows.Add(0,0,0,1,5,1,1,0,0,0,0,2,2,1,1,0,0,1,2,2,2);
332. dgvS.Rows.Add(1,0,0,0,1,5,1,1,0,0,0,0,2,0,2,0,0,0,0,2,1);
333. dgvS.Rows.Add(1,1,1,1,1,1,5,2,1,0,0,1,2,2,2,2,1,0,0,1,2);
334. dgvS.Rows.Add(2,2,1,0,0,1,2,5,0,0,0,0,1,1,2,2,0,0,0,0,1);
335. dgvS.Rows.Add(0,2,2,0,0,0,1,0,5,1,0,0,0,1,0,2,1,0,0,0,0);
336. dgvS.Rows.Add(0,0,2,1,0,0,0,0,1,5,1,0,0,1,0,1,2,0,0,0,0);
337. dgvS.Rows.Add(0,0,1,2,0,0,0,0,0,1,5,1,0,1,0,0,2,2,0,0,1);
338. dgvS.Rows.Add(0,0,0,2,2,0,1,0,0,0,1,5,1,1,0,0,1,2,2,1,2);
339. dgvS.Rows.Add(1,0,0,1,2,2,2,1,0,0,0,1,5,1,2,1,0,0,1,2,2);
340. dgvS.Rows.Add(0,1,2,2,1,0,2,1,1,1,1,1,1,5,1,2,2,0,0,0,2);
341. dgvS.Rows.Add(2,1,0,0,1,2,2,2,0,0,0,0,2,1,5,1,0,0,0,1,1);
342. dgvS.Rows.Add(1,2,2,1,0,0,2,2,2,1,0,0,1,2,1,5,0,0,0,0,1);
343. dgvS.Rows.Add(0,0,2,2,0,0,1,0,1,2,2,1,0,2,0,0,5,0,0,0,1);
344. dgvS.Rows.Add(0,0,0,2,1,0,0,0,0,0,2,2,0,0,0,0,0,5,1,0,1);
345. dgvS.Rows.Add(0,0,0,1,2,0,0,0,0,0,0,2,1,0,0,0,0,1,5,1,1);
346. dgvS.Rows.Add(0,0,0,0,2,2,1,0,0,0,0,1,2,0,1,0,0,0,1,5,1);
347. dgvS.Rows.Add(0,0,1,2,2,1,2,1,0,0,1,2,2,2,1,1,1,1,1,1,5);
348.
GVDH: TS. ĐỖ HỒNG TUẤN SVTH: PHẠM MINH VƢƠNG
349. };
350. }
351. //hiển thị hình ảnh:
352. private void Ndata_SelectedIndexChanged(object sender, EventArgs
e)
353. {
354. if (Ndata.Text == "9ab")
355. {
356.
357. cell9m.BringToFront();
358. }
359. else if (Ndata.Text == "12ab")
360. {
361.
362. cell12m.BringToFront();
363. }
364. else if (Ndata.Text == "21ab")
365. {
366.
367. cell21m.BringToFront();
368. }
369. else if (Ndata.Text == "9")
370. {
371.
372. cell9.BringToFront();
373. }
374. else if (Ndata.Text == "12")
375. {
376. cell12.BringToFront();
377. }
378. else if (Ndata.Text == "21")
379. {
380. cell21.BringToFront();
381. };
382.
383. }
384.
385. }
386. }
387.
Các file đính kèm theo tài liệu này:
- Phân Bố Tần Số Cho Mạng Thông Tin Di Động.pdf