You are on page 1of 203

Đồ án tốt nghiệp

------------------------------------------------------------------------------------------------------------------
MỤC LỤC
PHẦN I: TÍNH TOÁN CĐXL CỦA
HỆ THỐNG ĐIỆN CÓ TỒN TẠI PHẦN TỬ SVC…………………….....................1
ĐẶT VẤN ĐỀ…………………………………………………................…………......2
CHƯƠNG 1:LÝ THUYẾT CHUNG VỀ BÀI TOÁN TÍNH TOÁN
CHẾ ĐỘ XÁC LẬP CỦA HỆ THỐNG ĐIỆN……………………...........……......…4
1.1 ĐẶC ĐIỂM CỦA BÀI TOÁN TÍNH TOÁN CHẾ ĐỘ XÁC LẬP……...............…4
1.2 CÁC PHƯƠNG LẶP GIẢI HPT PHI TUYẾN CỦA CĐXL…..….................….....5
1.2.1 PHƯƠNG PHÁP LẶP GAUSS – SEIDEL…………………………………….....5
1.2.2 PHƯƠNG PHÁP LẶP NEWTON – RAPHSON………………………................9
CHƯƠNG 2:MÔ HÌNH HOÁ CÁC PHẦN TỬ CƠ BẢN CỦA
HỆ THỐNG ĐIỆN …………………………….......……………..………………..….17
2.1 ĐƯỜNG DÂY TẢI ĐIỆN………………………………………............................17
2.2 MÔ HÌNH MÁY BIẾN ÁP………………………………………….......................22
2.3 MÔ HÌNH MÁY PHÁT ĐIỆN…………………………………………….............30
2.4 MÔ HÌNH PHỤ TẢI HỆ THỐNG…………………………………………...........31
CHƯƠNG 3: MÔ HÌNH HOÁ THIẾT BỊ SVC………………….............................33
3.1 VÀI NÉT KHÁI QUÁT VỀ FACTS…………………………………....................33
3.1.1 Vai trò của FACTS trong sự phát triển của hệ thống điện…….............................33
3.1.2 Khái niệm về FACTS……………………………………………….....................34
3.1.3 Khái niệm về SVC…………………….………….......................……………….35
3.2 MÔ HÌNH HÓA THIẾT BỊ SVC…………………...............................…………..36
3.2.1 Kháng điện điều khiển bằng thyristor…………..…………..................................37
3.2.2 Thiết bị bù công suất phản kháng tĩnh…………...……………............................43
3.3 SƠ ĐỒ THAY THẾ THIẾT BỊ SVC TRONG BÀI TOÁN CĐXL.........................47
3.3.1 Các mô hình thông dụng của SVC trong chế độ xác lập………….......................47
3.3.2 Mô hình điện dẫn phản kháng song song biến thiên………………......................51
3.3.3 Mô hình góc dẫn……………………………………………………….........……52
3.3.4 Mô hình góc dẫn kết hợp với máy biến áp……………………………........…….53
3.3.5 Điều khiển biên độ điện áp nút dùng SVC…………………………………….....55

------------------------------------------------------------------------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------------
CHƯƠNG 4: TÍNH TOÁN CĐXL CỦA HỆ THỐNG ĐIỆN
BẰNG PHƯƠNG PHÁP GS VÀ NR CÓ XÉT TỚI THIẾT BỊ SVC…..........……56
4.1 XÂY DỰNG SƠ ĐỒ KHỐI VÀ CODE CHƯƠNG TRÌNH…………...................56
4.1.2 Thuật toán Gauss – Seidel…………………………………………......................56
4.2.2 Thuật toán Newton – Raphson…………………………………………………...66
4.1.3 Thuật toán Newton – Raphson tính toán CĐXL của hệ thống điện có thiết bị SVC.....74
4.1.3.1 Xây dựng thuật toán………......………………………......……………………74
4.1.3.2 Sơ đồ khối thuật toán………………………….....………....………………….77
4.1.3.3 Module chương trình………………………………………………..………….79
4.2 VÍ DỤ MINH HỌA…………………………………………………………..........88
4.2.1 Tính toán chế độ xác lập khi chưa có thiết bị SVC……….........…………….......88
4.2.2 Tính toán chế độ xác lập khi có thiết bị SVC…………………………………..100
TỔNG KẾT……………............................................................................………….105
PHẦN II: NGHIÊN CỨU LÝ THUYẾT VÀ ÁP DỤNG MỘT SỐ KỸ THUẬT
XỬ LÝ MA TRẬN THƯA TRONG BÀI TOÁN TÍNH TOÁN CĐXL CỦA HTĐ.....107
ĐẶT VẤN ĐỀ..............................................................................................................107
CHƯƠNG 5: LÝ THUYẾT CHUNG VỀ MA TRẬN THƯA VÀ MỘT SỐ
KỸ THUẬT XỬ LÝ MA TRẬN THƯA...................................................................109
A. LÝ THUYẾT CHUNG VỀ MA TRẬN THƯA, CÁC PHƯƠNG PHÁP
LƯU TRỮ VÀ TÍNH TOÁN TRÊN MA TRẬN THƯA.........................................110
5.1 ĐỊNH NGHĨA VÀ ĐẶC ĐIỂM CỦA MA TRẬN THƯA....................................110
5.2 CÁCH BIỂU DIỄN MA TRẬN THƯA BẰNG BIỂU ĐỒ KỀ.............................112
5.3 HOÁN VỊ MA TRẬN.............................................................................................114
5.3.1 Các khái niệm cơ bản...........................................................................................114
5.3.2 Mối quan hệ với biểu đồ kề..................................................................................118
5.4 CÁC PHƯƠNG PHÁP CƠ BẢN SẮP XẾP BIỂU ĐỒ KỀ ĐỂ ĐƯA RA
THỨ TỰ HOÁN VỊ MA TRẬN...................................................................................119
5.4.1 Phương pháp sắp xếp dựa trên việc xây dựng tập mức (Level-set).....................119
5.4.2 Phương pháp đa màu (multi – colour).................................................................124
5.5 PHƯƠNG PHÁP TỔ CHỨC DỮ LIỆU ĐỂ LƯU TRỮ MA TRẬN THƯA
VÀ CÁC PHÉP TOÁN CƠ BẢN.................................................................................126
5.5.1 Tổ chức dữ liệu....................................................................................................126
5.5.2 Các phép toán cơ bản trên ma trận lưu trữ theo dạng thưa..................................132

------------------------------------------------------------------------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------------
B. MỘT SỐ PHƯƠNG PHÁP LẶP TÌM NGHIỆM CỦA HỆ PHƯƠNG TRÌNH
TUYẾN TÍNH.............................................................................................................136
5.6 CÁC PHƯƠNG PHÁP LẶP CƠ BẢN...................................................................137
5.6.1 Phương pháp lặp Jacobi, Gauss-Seidel, SOR......................................................138
5.6.2 Sơ đồ giảm dư theo khối (Block relaxation)........................................................141
5.6.3 Điều kiện hội tụ của các phương pháp lặp cơ bản...............................................146
5.7 PHƯƠNG PHÁP LẶP DỰA TRÊN PHÉP CHIẾU...............................................147
5.7.1 Phép chiếu............................................................................................................147
5.7.2 Các thuật toán lặp dựa trên phép chiếu................................................................155
5.8 PHƯƠNG PHÁP LẶP DỰA TRÊN HỆ PHƯƠNG TRÌNH CHÍNH TẮC
(NORMAL EQUATIONS)...........................................................................................159
5.8.1 Hệ phương trình chính tắc....................................................................................159
5.8.2 Phương pháp chiếu hàng......................................................................................160
5.8.3 Phương pháp thành phần liên hợp trên hệ phương trình chính tắc......................164
CHƯƠNG 6: ÁP DỤNG KỸ THUẬT XỬ LÝ MA TRẬN THƯA TRONG
BÀI TOÁN TÍNH TOÁN CĐXL CỦA HTĐ BẰNG PHƯƠNG PHÁP LẶP.......165
6.1 THUẬT TOÁN LƯU TRỮ THƯA THEO HÀNG (CSR).....................................168
6.2 THUẬT TOÁN LƯU TRỮ GRAPH VÀ TÔ MÀU GRAPH...............................172
6.3 THUẬT TOÁN LẶP GAUSS – SEIDEL KHỐI…................................................177
6.4 THUẬT TOÁN LẶP CGNR VÀ CGNE................................................................179
6.5 PHƯƠNG PHÁP LẶP GAUSS – SEIDEL SỬ DỤNG LƯU TRỮ THƯA..........183
6.6 PHƯƠNG PHÁP LẶP GAUSS – SEIDEL KHỐI.................................................185
6.7 PHƯƠNG PHÁP LẶP CGNR VÀ CGNE TRONG BÀI TOÁN TÍNH TOÁN
CĐXL CỦA HTĐ BẰNG PHƯƠNG PHÁP NEWTON –RAPHSON........................186
6.8 KIỂM ĐỊNH VÀ ĐÁNH GIÁ HIỆU QUẢ CHƯƠNG TRÌNH............................189
6.8.1 Kiểm định tính chính xác.....................................................................................189
6.8.2 Đánh giá hiệu quả chương trình ....................................................................194
TỔNG KẾT.................................................................................................................199

------------------------------------------------------------------------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

PHẦN I
TÍNH TOÁN CĐXL CỦA HỆ THỐNG ĐIỆN
CÓ TỒN TẠI PHẦN TỬ SVC

---------------------------------------------------- 1 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

ĐẶT VẤN ĐỀ
Hệ thống điện là một hệ thống bao gồm các phần tử nhà máy điện,
trạm biến áp, các đường đây tải điện và một số phần tử khác như thiết bị
điều khiển, thiết bị bù, thiết bị bảo vệ… được nối liền với nhau thành hệ
thống làm nhiệm vụ sản xuất, truyền tải và phân phối điện năng
Một trong những yêu cầu đặt ra cho một hệ thống điện xác định bất kì
là phải biết được các thông số chế độ của nó nói chung và chế độ xác lập nói
riêng, điều này đồng nghĩa với việc phải tính toán được các thông số đó dựa
trên các thông số cho trước. Chế độ xác lập(CĐXL) của hệ thống điện là chế
độ trong đó các thông số hệ thống không thay đổi , hoặc thay đổi rất ít xung
quanh các trị số định mức. Chế độ làm việc bình thường lâu dài của hệ thống
điện thuộc về chế độ xác lập. Tính toán chế độ xác lập của hệ thống điện là
xác định điện áp các nút, tổn thất điện áp, tổn thất công suất, dòng điện và
dòng công suất trên từng nhánh của hệ thống điện để phục vụ công tác quy
hoạch , thiết kế và vận hành . Thực tế, tính toán chế độ xác lập đóng vai trò
là lõi chính cho các phân tích về hệ thống điện. Nó là điểm mấu chốt để đưa
ra các kế hoạch mở rộng, phát triển hệ thống cả về số lượng đường dây tryền
tải và các nhà máy điện. Chế độ xác lập của hệ thống điện thường là điểm
bắt đầu của nhiều phân tích hệ thống khác như ngắn mạch, ổn định động
vv.... Ngoài ra, việc tính toán chế độ xác lập và các phân tích mở rộng của
nó là thành phần thiết yếu trong các nghiên cứu nhằm đưa ra phương thức
vận hành hợp lý của hệ thống điện.
Ngày nay, nhu cầu điện năng không ngừng tăng lên kéo theo sự phát
triển rộng khắp về số lượng của các nhà máy điện, các đường dây truyền tải
và các trung tâm phụ tải. Điều này gia tăng tính chất phức tạp của hệ thống,
tạo áp lực cho việc lựa chọn các phương thức vận hành nhằm đảm bảo ổn
định của hệ thống, đảm bảo chất lượng điện năng (điện áp, tấn số) tốt nhất

---------------------------------------------------- 2 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

đưa đến hộ tiêu thụ. Vấn đề đặt ra là không thể duy trì được các yêu cầu đó
bằng cách cải tạo liên tục lưới điện hay bằng các phần tử kinh điển của hệ
thống điện. Nói cách khác, cần phải có các thiết bị mới đáp ứng được các
yêu cầu này. Cùng với sự phát triển của công nghệ điện tử công suất mà cụ
thể là các van bán dẫn, thiết bị FACTS ra đời đã tạo ra những đột biến quan
trọng trong nghành công nghiệp điện năng, nhanh chóng đáp ứng được các
yêu cầu vận hành của hệ thống. Như vậy, xu hướng tất yếu trong phân tích
hệ thống là phải tìm ra mô hình toán học chính xác dựa trên các hiện tượng
vật lý của thiết bị FACTS để đưa thêm vào bài toán tính toán CĐXL. Phần
trình bày dưới đây cũng không nằm ngoài mục đích này, trong đó sẽ xem xét
cụ thể với thiết vị SVC.

---------------------------------------------------- 3 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

CHƯƠNG 1
LÝ THUYẾT CHUNG VỀ BÀI TOÁN TÍNH TOÁN
CHẾ ĐỘ XÁC LẬP CỦA HỆ THỐNG ĐIỆN

1.1 ĐẶC ĐIỂM CỦA BÀI TOÁN TÍNH TOÁN CHẾ ĐỘ XÁC LẬP.
Xuất phát từ hệ phương trình tổng dẫn nút của hệ thống ta có :
Y.U = J
trong đó J là nguồn dòng kích thích được tính toán bởi công thức S* = U*.J,
dấu (*) kí hiệu cho thành phần liên hợp của phần tử, vậy ta có :
Y.U = [U*]-1.S*
hay S* = U*.Y.U
viết dưới dạng khai triển ta có :
* * n
S i = Pi − jQi = U i ∑ YijU j với i = 1, 2, .., n.
j =1

Đây được gọi là hệ phương trình cân bằng công suất nút – là hệ
phương trình đặc trưng cho chế độ lưới. Chú ý rằng ta qui ước Ji = Si*/Ui*
nếu công suất đi vào nút (i) và Ji = - Si*/Ui* nếu công suất đi ra khỏi nút (i).
Trong thực tế các thông tin cho trước thường là công suất (tác dụng và
phản kháng) các nút và thông số cơ bản cần tìm là điện áp các nút (cả
module và góc). Có thể nhận thấy ngay rằng hệ phương trình cân bằng công
suất nút mang tính chất phi tuyến do chứa đựng các phần tử Ui2 và Ui*Uj.
Mặt khác, trong nội tại hệ thống cũng chứa đựng các phần tử có tính chất phi
tuyến như máy biến áp (khi bão hoà từ) , các tải phi tuyến phụ thuộc phức
tạp theo điện áp và tần số. Vì vậy, cần phải có các phương pháp tính thích
hợp để xác định nhanh nghiệm của hệ phương trình CĐXL khi không thể
giải trực tiếp. Các phương pháp tính hiện nay đều dựa trên cơ sở các thuật
toán lặp để giải quyết đặc điểm phi tuyến này của bài toán.

---------------------------------------------------- 4 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

1.2 CÁC PHƯƠNG PHÁP LẶP GIẢI HPT PHI TUYẾN CỦA CĐXL.

Như đã phân tích ở trên, hệ phương trình mô tả chế độ xác lập của hệ
thống điện chứa đựng trong nội tại bản thân nó tính chất phi tuyến. Do vậy,
đường lối chung nhất để giải các hệ như vậy là phương pháp lặp. Có hai
phương pháp lặp kinh điển là Gauss – Seidel và Newton – Raphson. Ta sẽ
lần lượt đi trình bày hai phương pháp này.

1.2.1 PHƯƠNG PHÁP LẶP GAUSS – SEIDEL

Cơ sở toán học của phương pháp:

Tinh thần chủ yếu của phương pháp là sử dụng ngay các biến vừa
được xấp xỉ tại bước trước để tính xấp xỉ ở bước tiếp sau.
Ví dụ 1 ( Hệ phương trình 2 biến )
Chúng ta nghiên cứu hệ phương trình 2 biến sau :
⎧a11. x1 + a12 . x2 = b1

⎩a21. x1 + a22 . x2 = b2
- Trong đó : a11  a12 và a22  a21 : Các phần tử trên đường chéo chính
lớn hơn hẳn các phần tử nằm ngoài đường chéo (dominant)
- Giả sử ta có xấp xỉ đầu : x1(1) và x2(1)
- Với biến x1 ta có xấp xỉ thứ 2 :
b1 a12 (1)
x1(2) = − . x2
a11 a11
- Với biến x2 ở bước xấp xỉ thứ 2 ta có :
b2 a21 (2)
x2(2) = − . x1
a22 a22
Trong đó :
x1(2) : giá trị của x1 vừa tính ở bước 2

---------------------------------------------------- 5 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Tổng quát, ở bước lặp thứ (k+1) :


b1 a12 ( k )
x1( k +1) = − . x2
a11 a11
b2 a21 ( k +1)
x2( k +1) = − . x1
a22 a22
Phương pháp lặp hội tụ nếu thoả mãn điều kiện :
a12 a
< 1 và 21 < 1
a11 a22
nghĩa là các hệ số nằm trên đường chéo chính trội (át) các hệ số nằm ngoài .

Ví dụ 2 (Hệ phương trình nhiều biến)


- Ta xét hệ : A.x = b (1)
- Hệ phương trình tuyến tính (1) có thể mô tả ở dạng sau :
[ E + F + L ].x = c (2)
Trong đó :
E là ma trận đơn vị (các phần tử nằm trên đường chéo bằng 1)
F là ma trận tam giác trên
L là ma trận tam giác dưới
⎡0 f12 f13 ... f1n ⎤ ⎡ 0 ... ... ... 0 ⎤
⎢0 ⎢l ... ... 0 ⎥⎥
⎢ 0 f23 ... f2 n ⎥⎥ ⎢ 21 0
F = ⎢... ... ... ... ... ⎥ ; L = ⎢ l31 l32 0 ... 0 ⎥
⎢ ⎥ ⎢ ⎥
⎢... ... ... ... fn−1,n ⎥ ⎢ ... ... ... ... ...⎥
⎢⎣ 0 0 0 ... 0 ⎥⎦ ⎢⎣ln1 ln 2 ... ln,n−1 0 ⎥⎦

- Để chuyển từ (1) sang (2) chỉ cần chia 2 vế của phương trình (1) cho
phần tử nằm trên đường chéo chính của (1) .
a12 a b
f12 = ; l21 = 21 ; c1 = 1 v..v
a11 a22 a11

---------------------------------------------------- 6 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

- Dựa vào (2) phương trình lặp có dạng :

x
(k +1) = − L.x(k +1) − F.x(k ) + c (3)
Nhận xét :
(3) có nghĩa là chúng ta thay thế các giá trị x ( k ) đã được tính ở bước lặp
thứ (k) bằng giá trị x ( k +1) của các biến trước biến trội .
Biến trội tương ứng các phương trình trội, xuất hiện theo thứ tự
(i = 1,2..n)

Phương trình lặp Gauss – Seidel giải hệ phương trình phi tuyến của CĐXL

Trong mỗi bước, G-S tuyến tính hoá hệ phương trình nút có dạng :

Y.ΔU = J (*)
Với lý luận rằng, trong thực tế, các nguồn phát và các nút phụ tải được
cho trước ở dạng công suất S và như vậy nguồn kích thích chính quy trong
sơ đồ thay thế là nguồn dòng J được tính từ công suất nút đã cho.
Gọi Yy là ma trận đường chéo được hình thành từ các phần tử nằm
trên đường chéo chính của Y.
⎡ y11 0 ... 0⎤
⎢0 y22 ... 0 ⎥⎥
Yy = ⎢
⎢ ... ... ... ... ⎥
⎢ ⎥
⎣0 0 ... ynn ⎦

Sau khi nhân 2 vế của phương trình (*) với ma trận đường chéo Yy ta có :
Yy −1.Y .ΔU = Yy −1. J (**)

Bước này tương đương với việc chia cho các phần tử nằm trên đường chéo chính.
Vế trái của phương trình (**) chính là :
Yy −1.Y .ΔU = ( E + F + L).ΔU

---------------------------------------------------- 7 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

trong đó E là ma trận đơn vị, F là ma trận tam giác trên và L là ma trận tam
giác dưới.
Có thể viết về dạng : ( E + F + L).ΔU = Yy −1. J

⎡ 0 ... ... ... 0⎤


⎢y ⎥
⎢ 21 0 ... ... 0⎥
⎢ y22 ⎥
⎢ ⎥
y y32
Trong đó: L = ⎢ 31 0 ... 0⎥
⎢ y33 y33 ⎥
⎢ ⎥
⎢ ... ... ... ... ...⎥
⎢y yn,n−1 ⎥
⎢ n1 ... ... 0⎥
⎣ ynn ynn ⎦
⎡ y12 y13 y1n ⎤
⎢0 y11 y11
...
y11 ⎥
⎢ ⎥
⎢ y23 y2 n ⎥
⎢0 0
y22
...
y22 ⎥
F=⎢ ⎥
⎢... ... ... ... ... ⎥
⎢ ⎥
⎢... yn−1,n ⎥
... ... ...
⎢ yn−1,n−1 ⎥
⎢ ⎥
⎣⎢ 0 0 0 ... 0 ⎦⎥
Với các ký hiệu này, phương trình lặp được viết như sau:

ΔU ( k +1) = − F.ΔU (k ) − L.ΔU (k +1) + Yy −1.J


Ta có liên hệ giữa dòng J và công suất “phát” đã cho tại các nút theo
công thức :
* *
S f = U .J
−1
⎡*⎤ *
hay : J = ⎢U ⎥ . S f
⎣ ⎦

---------------------------------------------------- 8 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
*
Với quy ước Sf là nguồn đi vào nút mang dấu (+) và tải đi ra khỏi nút
mang dấu (-) .
Với chú ý dòng J được tính qua công suất nút đã cho , xuất phát từ
phương trình dạng ma trận, ta có phương trình lặp đối với phần tử thứ i của
vectơ điện áp nút ∆U :

⎧ ⎫
1 ⎪ Pi − jQi i −1 n
(k ) ⎪
ΔU ( k +1)
i = .⎨ − ∑ yij .ΔU j − ∑ yij .ΔU j ⎬
( k +1)

yii ⎪ * ( k ) j =1 j =i +1 ⎪⎭
⎩ ΔU i
1.2.2 PHƯƠNG PHÁP LẶP NEWTON - RAPHSON

Cơ sở toán học của phương pháp


Phương pháp Newton-Raphson dùng để xác định điểm “zero” của
hàm y = f ( x ) sao cho f ( x ) = 0 .
Phương pháp này thay thế đường cong y = f ( x ) ở lân cận điểm “zero”
bằng tiếp tuyến tại một trong những điểm lân cận điểm “zero”của đường
cong (→ Tuyến tính hoá ) và coi điểm cắt của tuyếp tuyến này với trục 0x là
giá trị gần đúng của nghiệm .
Xét hình vẽ, ta có phương trình tiếp tuyến của y = f ( x ) ở điểm ( x1 , y1 ) :
y − f ( x1 ) = f '( x1 ).( x − x1 ) (1)
y

(1)
y1

(2)

zero (3) x
x3 x2 x1

---------------------------------------------------- 9 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Nếu tiếp tuyến không song song với trục Ox thì f ' ( x1 ) ≠ 0 . Khi đó điểm
cắt của tiếp tuyến với trục Ox là :
f ( x1 )
x2 = x1 −
f '( x1 )
Cứ tiếp tục xấp xỉ như vậy , tổng quát có thể viết cho xấp xỉ thứ (k+1) :
f ( xk )
xk +1 = xk −
f '( xk )
Ký hiệu Δxk = x k +1 − xk , ta có phương trình lặp :

f '( x k ).Δxk = − f ( xk ) (*)


Ta sẽ đi thành lập phương trình lặp tổng quát hoá đối với hệ nhiều biến.
Giả sử hệ phương trình :
⎧ f ( x, y) = 0

⎩g ( x, y) = 0
Có 1 nghiệm gần đúng là ( x k , yk ) ; và tại lân cận điểm ( x k , yk ) có các đạo
hàm riêng phần thoả mãn điều kiện :
∂f ( x, y) ∂f ( x, y)
∂x ∂y
≠0
∂g ( x, y) ∂g ( x, y)
∂x ∂y
Khi đó , trên cơ sở khai triển Taylor tại (a,b) có dạng :
1 ∂ ∂
f ( x, y ) = f (a, b) +
.[(x-a). + ( y − b). ].f(x,y)
1! ∂x ∂y
1 ∂ ∂
+ .[(x-a). + ( y − b). ]2 .f(x,y)+...
2! ∂x ∂y
1 ∂ ∂
+ .[(x-a). + ( y − b). ]n .f(x,y)+...
n! ∂x ∂y

Cho (a,b) ≡ ( x k , yk ) và chỉ lấy thành phần bậc nhất, bỏ qua các thành
phần bâc cao, một cách gần đúng ta có :

---------------------------------------------------- 10 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

⎧ ∂fk ∂fk
⎪ ∂x . Δx + .Δyk = − f ( xk , yk )
∂y
k


⎪ ∂gk .Δx + ∂gk .Δy = − g ( x , y ) (2)
⎪⎩ ∂x k
∂y
k k k

Trong đó :
∂fk ∂fk ∂gk ∂gk
; ; ; là các đạo hàm riêng phần của các hàm
∂x ∂y ∂x ∂y
f ( x, y); g ( x, y) tại các điểm ( xk , yk ) .
Δxk ; Δyk : Độ lệch giữa các bước lặp
Từ (2) chúng ta có thể xác định được Δxk vµ Δyk , và như vậy xấp xỉ của
bước lặp kế tiếp được tính từ :
⎧ xk +1 = xk + Δxk
⎨ (3)
⎩ yk +1 = yk + Δyk
Tổng quát, ta có thể viết các phương trình lặp ở dạng ma trận như sau :
Fd ( xk ).Δxk = − F( xk ) (4)

Trong đó :
x ( k ) = [x1(k) , x (k) (k)
2 ,.., x n ] Vectơ hàng.

⎡ f1 ( x ( k ) ) ⎤
⎢ (k)

F( x ( k ) ) = ⎢⎢ 2 ⎥
f ( x )
Vectơ cột
........... ⎥
⎢ ⎥
⎢⎣ fn ( x ( k ) ) ⎥⎦

---------------------------------------------------- 11 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

⎡ ∂fk ∂fk ∂fk ⎤


⎢ ∂x .... ....⎥
∂y ∂z
⎢ ⎥
⎢ ∂gk ∂gk ∂gk ⎥
.... ....⎥
Fd ( xk ) = ⎢ ∂x ∂y ∂z Ma trận Jacobi được thành lập từ
⎢ ⎥
⎢ . .⎥
⎢ . . ⎥⎥

⎢⎣ . . ⎥⎦
các đạo hàm riêng phần.

Phương trình lặp của phương pháp Newton – Raphson tính CĐXL của HTĐ

Để sử dụng phương pháp lặp Newton-Raphson vào tính toán chế độ


xác lập hệ thống điện, trước hết, ta phải định nghĩa một số ký hiệu như sau :

Sm : vectơ công suất đã cho tại các nút

U(k) : vectơ điện áp tại các nút ở bước thứ k

S(U(k)) : vectơ công suất tại các nút khi biết vectơ U(k), hay còn gọi là
vectơ công suất tính toán.

ΔS(U(k)) = Sm - S(U(k)) : độ lệch công suất của các nút giữa trị số đã
biết và trị số tính được khi biết U(k).

Xuất phát từ hệ phương trình nút Y.U = J và biểu thức liên hệ


*
S = U. J ta có biểu thức sau :
* *
S = U. Y .U
Và ở bước lặp thứ (k) ta có :
* *
S (k )
= U . Y .U
(k ) (k )

---------------------------------------------------- 12 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Chúng ta có thể diễn đạt bài toán như sau : Hãy tìm vectơ U(k) sao cho
hàm độ lệch công suất ΔS ( k ) tiến về 0 , có nghĩa là :
ΔS ( k ) = Sm − S ( k ) → 0
Áp dụng phương pháp Newton – Raphson ta có được phương trình lặp
ở dạng ma trận :
− Sd( k ) .ΔU ( k ) = −ΔS (U ( k ) )

hay: ΔSd( k ) .ΔU ( k ) = ΔS (U ( k ) ) (*)

trong đó : ΔSd( k ) : Ma trận Jacobi của lưới

⎡ ∂S1 ∂S1 ∂S1 ⎤


⎢( ∂U )k (
∂U2
)k .... ( )k
∂Un ⎥
⎢ 1

⎢ ∂S2 ∂S2 ∂S2 ⎥
⎢( )k ( )k .... (
∂Un ⎥⎥
)k
Sd( k ) = ⎢ ∂U1 ∂U2
⎢ ... ... ... ... ⎥
⎢ ⎥
⎢( ∂Sn ) (
∂Sn
)k .... (
∂Sn ⎥
)k
⎢⎣ ∂U1 k ∂U2 ∂Un ⎥⎦
Ma trận được hình thành từ các đạo hàm riêng phần của hàm S (U ) theo U

tại giá trị U ( k ) .


ΔU ( k ) : Chênh lệch điện áp các nút giữa các bước lặp.
⎡ ΔU1( k ) ⎤
⎢ (k ) ⎥
ΔU
ΔU ( k ) = ⎢⎢ 2 ⎥⎥
.......
⎢ ⎥
⎢⎣ ΔUn ⎥⎦
(k )

ΔU ( k ) có thể được tính từ (*)


Ở bước lặp tiếp theo :
U ( k +1) = U ( k ) + ΔU ( k )

---------------------------------------------------- 13 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
.
Tiếp tục ta tính được S (k+1)
→ ΔS ( k +1) → Sd( k +1) (U ( k +1) ) → ΔU ( k +1) .Cứ như

vậy cho tới khi : ΔS ( k ) = Sm − S ( k ) ≤ ε


* *
Chú ý rằng công suất S và U là các đại lượng phức. Vì vậy mà trong quá
trình tính toán, để đơn giản nên khai triển ma trận thành phần thực và phần
*
ảo, tương ứng với quan hệ (S = P + j.Q) . Cũng chính vì đó mà công suất
các nút thường cho ở dạng tách biệt : công suất tác dụng P và công suất phản
kháng Q.
Sau khi khai triển vectơ điện áp nút thành biên độ và góc:
U = U ∠δ
Ta viết lại phương trình lặp dưới dạng ma trận khối như sau :
ΔS ( k ) = Sd( k ) .ΔU ( k )

⎡ ΔP( k ) ⎤ ⎡ Pd(δk ) (k )
PdU ⎤ ⎡ Δδ ( k ) ⎤
⎢ (k ) ⎥ = ⎢ (k ) (k ) ⎥ ⎢
. (k) ⎥
⎣ ΔQ ⎦ ⎣Qdδ QdU ⎦ ⎣ ΔU ⎦
Ở đây :

∂Pi
Pd(δk ) : Ma trận được hình thành từ các đạo hàm riêng ( )
∂δ i U ( k )

(k ) ∂Pi
PdU : Ma trận được hình thành từ các đạo hàm riêng ( )
∂Ui U ( k )

∂Qi
Qd(δk ) :Ma trận được hình thành từ các đạo hàm riêng ( )
∂δ i U ( k )

(k ) ∂Qi
QdU Ma trận được hình thành từ các đạo hàm riêng ( )
∂Ui U ( k )

---------------------------------------------------- 14 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Các phần tử của ma trận tổng dẫn nút Y là các đại lượng phức , có thể
biểu diễn ở dạng toạ độ cực :
*
jθ ij
y ij = yij .e

Ta có được :
n

∑U
j (δ i −δ j −θ ij )
Si = Pi + j.Qi = Ui j . yij .e
j =1

Như vậy, công suất tác dụng và công suất phản kháng đối với từng nút
i được tính theo :
⎧ n

⎪ Pi = ∑ Ui . U j . yijcos(δ i − δ j − θij )
⎪ j =1
⎨ n
⎪Q = U . U . y sin (δ − δ − θ )
⎪⎩ i ∑ j =1
i j ij i j ij

Dạng ma trận khối của phương trình lặp :

⎡ ΔP( k ) ⎤ ⎡ Pdδ k Pduk ⎤ ⎡ Δδ ( k ) ⎤ ⎡ Pdδ k 0 ⎤ ⎡ Δδ ( k ) ⎤


⎢ (k ) ⎥ = ⎢ ⎥.⎢ ⎥≈⎢ ⎥.⎢ ⎥
⎣ ΔQ ⎦ ⎢⎣Qdδ k Qduk ⎥⎦ ⎣ ΔU ( k ) ⎦ ⎣⎢ 0 Qduk ⎦⎥ ⎣ ΔU ( k ) ⎦

Dạng gần đúng ≈ nói lên rằng , độ lệch góc của điện áp nút phụ thuộc
chủ yếu vào sự phân phối công suất tác dụng trong khi đó giá trị tuyệt đối
của điện áp nút phụ thuộc chủ yếu vào sự phân phối công suất phản kháng.
Từ đó dẫn tới phương trình tách biến : P = f (δ ) và Q = f (u) .

Các phần tử của ma trận đạo hàm riêng : [ Pdδ ] :

⎧ ∂Pi
⎪ ∂δ = Ui .U j . yij .sin(δ i − δ j − θ ij ) nÕu i ≠ j
⎪ j
⎨ ∂P n
⎪ i
= −∑ Ui .U j . yij .sin(δ i − δ j − θ ij ) = −Qi − Ui2 yii .sin(θii )
⎪ ∂δ i j =1
⎩ j ≠i

---------------------------------------------------- 15 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Các phần tử của đạo hàm riêng [QdU ] là :

⎧ ∂Qi
⎪ ∂U = Ui . yij .sin(δ i − δ j − θij ) nÕu i ≠ j
⎪ j
⎨ ∂Q n
1
⎪ i = −2.Ui . yij .sin(θ ij ) + ∑ U j . yij .sin(δ i − δ j − θij ) = [Qi − Ui2 . yij .sin(θ ij )]
⎪ ∂Ui j =1 Ui
⎩ j ≠ i

Như vậy, ta đã lược qua những phương pháp chung nhất, kinh điển
nhất áp dụng cho bài toán tính toán chế độ xác lập của hệ thống điện. Các
phương pháp sau này đều xoay quanh 2 phương pháp kinh điển trên để mở
rộng bài toán theo hướng tính đến các phần tử đặc biệt xuất hiện trong hệ
thống hoặc theo hướng giảm khối lượng tính toán trong từng phương pháp.
Phần tiếp ngay sau đây trình bày về mô hình các phần tử cơ bản trong hệ
thống điện.

---------------------------------------------------- 16 -----------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

CHƯƠNG 2
MÔ HÌNH HOÁ CÁC PHẦN TỬ CƠ BẢN CỦA HỆ THỐNG ĐIỆN

2.1 ĐƯỜNG DÂY TẢI ĐIỆN

Sơ đồ thay thế của các đường dây tải điện được thiết lập tùy thuộc vào
cấp điện áp và cấu trúc dây dẫn (cáp hay đường dây trên không).

+ Đường dây trên không điện ápU ≤ 35 kV

Z D = RD + jX D = ( r0 + jx0 ) .l (2.1)

i l (km) j i Z j
r0 , x0 (Ω/km)

Hình 2.1

Trong trường hợp này mỗi đoạn đường dây được thay thế bằng một
tổng trở ZD (coi đường dây như một phần tử có thông số tập trung), bỏ qua
điện dung ký sinh của đường dây.

+ Các đường dây trên không điện áp 66 kV ≤ U ≤ 330 kV và các đường


dây cáp

Z D = RD + jX D = (r0 + jx0 ).l


(2.2)
B = b0 .l

ZD
i j i j

r0, x0 (Ω/km), b0 (1/Ωkm) B/2 B/2

Hình 2.2

---------------------------------------------------- 17 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

+ Các đường dây siêu cao áp (U ≥ 400 kV)

Các đường dây siêu cao áp thường là các đường dây tải điện đi xa hoặc
liên kết giữa các hệ thống. Trong CĐXL các đường dây siêu cao áp vẫn
được mô tả theo sơ đồ mạch điện có thông số tập trung. Tuy nhiên các thông
số của sơ đồ cần được xác định theo điều kiện tương đương với mô hình
đường dây có thông số rải. Có hai cách mô hình đường dây siêu cao áp.

– Mô hình bằng chuỗi các đoạn đường dây ngắn

i j

r0, x0 (Ω/km), b0 (1/Ωkm)


ΔZ ΔZ
i j

ΔB/2 ΔB/2 ΔB/2 ΔB/2

Hình 2.3
Khi mô hình bằng chuỗi các đoạn đường dây ngắn thường bỏ qua điện
dẫn tác dụng (tương ứng với hai loại tổn thất công suất tác dụng: tổn thất
công suất do dòng điện rò qua cách điện và tổn thất do vầng quang). Mỗi
đoạn ngắn Δl được mô hình bằng một mắt xích hình Π với:

ΔZ = (r0 + jx 0 )Δl ; ΔB = b0 Δl (2.3)

để đảm bảo độ chính xác cần chọn chiều dài mỗi đoạn Δl ≤ 100 km.

Ưu điểm của cách mô hình này là đơn giản và có thể khảo sát được
thông số tại các điểm trung gian trên đường dây.

Nhược điểm của mô hình này là số nút, số nhánh của sơ đồ tăng đáng kể.

---------------------------------------------------- 18 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

– Mô hình theo thông số mạng 4 cực

i j

i j

r0, x0 (Ω/km), b0 (1/Ωkm) Yπ Yπ

Hình 2.4

Coi đường dây dài như mạng hai cửa (4 cực), với các thông số đầu vào
và đầu ra là dòng và áp 2 đầu đường dây (Ui, Ii, Uj, Ij ). Chúng có quan hệ
với nhau theo phương trình của đường dây dài. Để biểu diễn đường dây
theo các phần tử tập trung cần xác định thông số mạch hình Π hoặc T tương
đương.

Phương trình CĐXL của đường dây dài, thông số rải có thể viết như sau:

⎡U j ⎤ ⎡ chγ l Zcshγ l ⎤ ⎡U i ⎤
⎢ ⎥=⎢ ⎥×⎢ ⎥ (2.4)
⎢⎣ I j ⎦⎥ ⎣ Ycshγ l chγ l ⎦ ⎣ I i ⎦

trong đó: Ui, Ii – điện áp và dòng điện phức đầu đường dây.
Uj, Ij – điện áp và dòng điện phức cuối đường dây.
γ – hằng số lan truyền sóng, γ = Y0 Z 0 .
Zc, Yc – tổng trở và tổng dẫn sóng

Z0 Y0
Zc = , Yc = (2.5)
Y0 Z0

Z0 = r0 + jx0 – tổng trở nối tiếp tính trên 1 đơn vị dài đường dây.
Y0 = g0 + jb0– tổng dẫn ngang tính trên 1 đơn vị dài đường dây.

---------------------------------------------------- 19 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Bây giờ nếu ký hiệu: Z = Z0l, Y = Y0l (nghĩa là ký hiệu Z và Y theo
công thức tính tổng trở và tổng dẫn của đường dây ngắn) thì ta có: γl = ZY .
Khi đó có thể viết lại phương trình CĐXL của đường dây dài như sau:

⎡ Z ⎤
ch ZY sh ZY ⎥
⎡U j ⎤ ⎢
⎥ × ⎡⎢ i ⎤⎥ = ⎡
Y U A B ⎤ ⎡U i ⎤
⎢ ⎥= ⎢ × (2.6)
⎣⎢ I j ⎦⎥ ⎢ Y sh ZY ⎥ ⎣ I i ⎦ ⎣C A⎥⎦ ⎢⎣ I i ⎥⎦

⎢ ch ZY ⎥
⎣ Z ⎦

Các thông số A, B, C, D đặc trưng cho mạng 2 cửa đẳng trị của đường dây.

Ở sơ đồ hình Π tương đương các thông số có thể xác định được như sau:

Z sh ZY
ZΠ = B = sh ZY = Z (2.7)
Y ZY

YΠ A − 1 Y th ( ZY 2)
= = (2.8)
2 B 2 ZY 2

Đó chính là các công thức cho phép tính chính xác các thông số của sơ
đồ hình π tương đương của mỗi đường dây dài điện áp siêu cao (đúng cho
mọi chiều dài l). Ở đây cần chú ý: Zπ ≠ Z và Yπ ≠ Y.

Công thức cho thấy sự sai khác sẽ càng nhỏ khi chiều dài đường dây
càng ngắn. Thật vậy, khi l nhỏ thì góc γl = l Z 0 Y0 = ZY cũng có trị số nhỏ,
khi đó:

sh ZY ≈ ZY (2.9)

( )
th ZY 2 ≈ ZY 2 (2.10)

Do đó: Zπ ≈ Z, Yπ ≈ Y. Nghĩa là khi chiều dài đường dây l ≤ 100 km ta


có thể coi như đường dây có thông số tập trung.

---------------------------------------------------- 20 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Ưu điểm của cách mô phỏng đường dây siêu cao áp bằng mạng 4 cực,
với sơ đồ hình Π (thông số tính theo phương trình đường dây có thông số
rải) là số phần tử của sơ đồ ít hơn, đảm bảo độ chính xác cao.

Nhược điểm là không theo dõi được thông số phân bố dọc chiều dài đường
dây. Hơn nữa, việc tính toán trị số của Zπ và Yπ rất phức tạp (cần tính các hàm
hypecbolic đối với số phức). Để thực hiện phép tính dễ dàng hơn, người ta
thường áp dụng cách tính gần đúng. Chẳng hạn, khai triển chuỗi các hàm:

YZ Y 2 Z 2 Y 3 Z 3 YZ
A = 1+ + + + ... ≈ 1 + (2.11)
2 24 720 2

⎛ YZ Y 2 Z 2 Y 3 Z 3 ⎞ ⎛ YZ ⎞
B = Z⎜⎜1 + + + + ... ⎟⎟ ≈ Z⎜1 + ⎟ (2.12)
⎝ 6 120 5040 ⎠ ⎝ 6 ⎠

⎛ YZ Y 2 Z 2 Y 3 Z 3 ⎞ ⎛ YZ ⎞
C = Y⎜⎜1 + + + + ... ⎟⎟ ≈ Y⎜1 + ⎟ (2.13)
⎝ 6 120 5040 ⎠ ⎝ 6 ⎠

Thay vào các biểu thức tính thông số của sơ đồ thay thế hình Π, ta có:

⎛ YZ ⎞ YΠ Y ⎛ YZ ⎞
Z Π = Z⎜1 + ⎟, = ⎜1 + ⎟ (2.14)
⎝ 6 ⎠ 2 2 ⎝ 6 ⎠

Đánh giá sai số khi lấy Zπ gần đúng theo Z của ĐDSCA 500 kV Việt
Nam với các thông số: Z0 = 0,0247 + j0,2772 Ω/km; Y0 = j4,135.10-6
1/Ω.km. Gần đúng có thể coi sai số chính là thành phần YZ/6.

+ Khi chiều dài đoạn đường dây là 100 km:

YZ/6 ≈ j0,2772.j4,135.10-6.1002/6 = - 0,00191 ≈ - 0,2 %

+ Khi chiều dài đoạn đường dây là 800 km:

YZ/6 ≈ j0,2772.j4,135.10-6.8002/6 = - 0,1222 ≈ - 12,2 %

Sai số tỷ lệ với bình phương chiều dài tính toán.

---------------------------------------------------- 21 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Trong thực tế người ta áp dụng cả hai cách biểu diễn đường dây siêu
cao áp nói trên tuỳ theo bài toán cụ thể. Trong các chương trình tính toán,
đường dây siêu cao áp thường được mô tả theo sơ đồ hình π, thông số được
máy tính tính theo biểu thức đầy đủ. Khi cần theo dõi thông số tại các điểm
trung gian trên đường dây, người ta vẫn chia chiều dài đường dây thành
nhiều đoạn (kết quả tính toán đảm bảo độ chính xác cao).

2.2 MÔ HÌNH MÁY BIẾN ÁP

Máy biến áp là thành phần quan trọng trong hệ thống điện. Nói chung,
nó cung cấp một sự chuyển tiếp giữa các phần của hệ thống điện có điện áp
khác nhau, ví dụ giữa một nhà máy điện và mạng truyền tải hay giữa một
thiết bị bù tĩnh(SVC) và mạng truyền tải vv…

Nhìn từ quan điểm mô hình hoá, sẽ là rất thuận lợi nếu phân chia
mạch điện (cấu thành bởi dây quấn) bằng cách dựa vào mạch từ (cấu thành
bởi lõi thép). Điện kháng của các dây quấn có thể được tìm thông qua các thí
nghiệm ngắn mạch trong khi các thí nghiệm hở mạch sẽ cho ta biết thông số
điện kháng lõi thép. Các cuộn dây của máy biến áp 3 pha có thể được nối
theo nhiều cách, tuy nhiên trong truyền tải điện áp cao thì các cách nối thông
thường nhất là :sao/sao, tam giác/tam giác và sao/tam giác. Ngoài ra, điểm
trung tính có thể không nối đất, nối đất trực tiếp hoặc nối đất thông qua một
điện kháng.

Trong máy biến áp, dòng điện từ hoá thường chỉ chiếm một phần trăm
rất nhỏ của dòng điện tải. Tuy nhiên, dòng điện này lại chứa rất nhiều sóng
hài, vì vậy việc mô tả chi tiết mạch từ là công việc bắt buộc trong các nghiên
cứu về các tần số bậc cao. Trong những nghiên cứu ở tần số công nghiệp,
như chế độ xác lập, yêu cầu này ít quan trọng và nó có thể được bỏ qua trong

---------------------------------------------------- 22 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
hầu hết các trường hợp, trừ khi mục đích của việc nghiên cứu là đánh giá
chính xác tổn thất công suất.

+ Mô hình máy biến áp một pha.

Để bắt đầu xây dựng một mô hình máy biến áp hoàn chỉnh ở chế độ
xác lập, đầu tiên ta hãy xét sơ đồ một máy biến áp hai cuộn dây cơ bản như
hình 2.5

Hình 2.5 Máy biến áp 2 cuộn dây

Dây quấn sơ cấp có Np vòng và dây quấn thứ cấp có Ns vòng. Dòng
điện và điện áp trong cả hai cuộn dây được liên hệ với nhau thông quan các
thông số tổng trở ngắn mạch ( short – circuit) được đưa ra bởi phương trình
sau :

⎡V p ⎤ ⎡ Z scp Z scm ⎤ ⎡ I p ⎤
⎢V ⎥ = ⎢ Z . (2.15)
⎣ s ⎦ ⎣ scm Z scs ⎥⎦ ⎢⎣ I s ⎥⎦

Trong đó :

Zsc p = Rp + j.Xsc p

Zsc s = Rs + j.Xsc s (2.16)

Zsc m = j.Xscm

Các thông số này được tìm ra bằng các phép đo trên máy biến áp thực,
trong đó Rp và Rs lần lượt là điện trở của dây quấn sơ cấp và thứ cấp. Các

---------------------------------------------------- 23 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
điện kháng Xsc p, Xsc s, Xscm là các điện kháng ngắn mạch được tìm ra bằng
cách kích thích hai cực của máy biến áp trên hình 2.5 ở một điện áp thấp hơn
điện áp định mức và ngắn mạch hai cực còn lại.Tỉ số giữa điện áp kích thích
và dòng điện ngắn mạch cho ta biết được điện kháng ngắn mạch :

X sc p = E12 / I34 ; Xsc s = E34 / I12 ; Xsc m = E13 / I24 (2.17)

Nhìn từ quan điểm phân tích hệ thống, sẽ có nhiều thuận lợi hơn nếu
ta chuyển đổi ma trận tổng trở trong phương trình (2.15) thành ma trận tổng
dẫn :

⎡ I p ⎤ ⎡ Yscp −Yscm ⎤ ⎡V p ⎤
⎢ I ⎥ = ⎢ −Y . (2.18)
⎣ s ⎦ ⎣ scm Yscs ⎥⎦ ⎢⎣Vs ⎥⎦

Trong đó :

Z scs ⎫
Yscp = ⎪
Z scp Z scs − Z scm ⎪
2

Z scp ⎪⎪
Yscs = ⎬ (2.19)
Z scp Z scs − Z scm
2

Z scm ⎪
Yscm = ⎪
Z scp Z scs − Z scm
2
⎪⎭

Có thể nhận thấy rằng để tìm được các thông số của ma trận ta cần tới
3 thí nghiệm ngắn mạch. Tuy nhiên, tổng dẫn ngắn mạch sơ cấp và thứ cấp
hầu như là giống nhau khi biểu diễn trong hệ đơn vị tương đối và bằng Ysc.
Do tương tác điện từ mạnh được hỗ trợ bởi các lõi thép, tổng dẫn tương hỗ
giữa cuộn dây sơ cấp và thứ cấp cũng có thể lấy giá trị Ysc. Vì vậy, ma trận
tổng dẫn ngắn mạch trong hệ đơn vị tương đối là :

⎡ I p ⎤ ⎡ Ysc −Ysc ⎤ ⎡V p ⎤
⎢ I ⎥ = ⎢ −Y . (2.20)
⎣ s ⎦ ⎣ sc Ysc ⎥⎦ ⎢⎣Vs ⎥⎦

---------------------------------------------------- 24 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
+ Máy biến áp có đầu phân áp đơn giản.

Tác dụng của việc biểu diễn thông số máy biến áp trong hệ đơn vị
tương đối là chuyển đổi tỉ số biến áp gốc Np : Ns thành tỉ số biến áp đơn vị
1:1. Điều này cho phép mô tả máy biến áp hai cuộn dây trong hệ thống bằng
một mạch tương đương gồm tổng dẫn ngắn mạch Ysc nối giữa nút sơ cấp và
nút thứ cấp.

Tuy nhiên, máy biến áp lực thường được trang bị kèm theo một thiết
bị cơ khí thay đổi đầu phân áp cho phép điều chỉnh biên độ điện áp ở một
đầu của máy biến áp. Những máy biến áp như vậy được gọi là máy biến áp
thay đổi đầu phân áp (load tap changing – ltc), chúng đóng một vai trò quan
trọng trong các nghiên cứu ở chế độ xác lập. Mô hình máy biến áp ltc bao
gồm một tổng dẫn ngắn mạch Ysc (trong hệ đơn vị tương đối máy biến áp)
mắc nối tiếp với một máy biến áp lí tưởng có tỉ số biến áp là T:1.

Hình2.6 Máy biến áp có đầu phân áp đơn giản

Những mối quan hệ sau đây tồn tại trong máy biến áp lý tưởng :

V T T I'
= ; = (2.21)
Vs 1 1 I

Dòng điện qua tổng dẫn Ysc là :

I = Ysc.(Vp – V) = Ysc.(Vp – T.Vs) = Ip. (2.22)

Tương tự :

I’ = T.I = Ysc.(T.Vp – T2.Vs) = - Is. (2.23)

---------------------------------------------------- 25 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Kết hợp (2.22) và (2.23) trong dạng ma trận :

⎡ I p ⎤ ⎡ Ysc −TYsc ⎤ ⎡V p ⎤
⎢ I ⎥ = ⎢ −TY . (2.24)
⎣ s⎦ ⎣ sc T 2Ysc ⎥⎦ ⎢⎣Vs ⎥⎦

+ Máy biến áp thay đổi đầu phân áp hoàn chỉnh.

Một mô hình máy biến áp lực hoàn chỉnh được xây dựng trên cơ sở
xét một máy biến áp 3 dây quấn 1 pha. Mỗi dây quấn được mô tả bằng một
tổng dẫn ngắn mạch nối với một máy biến áp lý tưởng. Ngoài ra, mỗi dây
quấn được cung cấp một thiết bị cơ khí chuyển đổi đầu phân áp phức cho
phép thay đổi biên độ hoặc góc pha của điện áp. Thêm nữa, nhánh từ hoá
của máy biến áp được thêm vào để tính toán tổn thất sắt.

Hình 2.7 Máy biến áp thay đổi đầu phân áp hoàn chỉnh

Dây quấn sơ cấp được mô tả như một máy biến áp lý tưởng có tỉ số


phức là Tv:1 và Ti:1 nối tiếp với tổng dẫn Ysc p, trong đó Tv = Ti* = t + jα =
T∠φt. Kí hiệu * chỉ phép toán liên hợp. Hai dây quấn còn lại được mô tả
tương tự như trên hình. Nhánh từ hoá của máy biến áp được mô tả bởi tổng
dẫn Y0 = G0 + jB0.

---------------------------------------------------- 26 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Phần điện trở của nhánh từ hoá liên quan trực tiếp đến tổn thất sắt và
điện dẫn G0 của nó mô tả dòng điện biến thiên tuyến tính với điện áp đặt lên
nhánh từ hoá. Tuy nhiên, trong phần điện cảm thì mối quan hệ giữa dòng
điện và điện áp lại được chỉ ra bởi đặc tính rms V – I, trường hợp không xảy
ra bão hoà có thể coi đường đặc tính này là phi tuyến.

Những mối quan hệ sau đây tồn tại trong các máy biến áp lí tưởng
phía sơ cấp, thứ cấp và dây quấn thứ ba :

V1 Tv Ti I1 '
= ; = (2.25)
V0 1 1 I1

V2 U v U i I 2 '
= ; = (2.26)
V0 1 1 I2

V3 Wv Wi I 3 '
= ; = (2.27)
V0 1 1 I3

Dòng điện qua các tổng dẫn Ysc p, Ysc s, Ysc t lần lượt là :

I1 = Yscp.(Vp – V1) = Yscp.(Vp – T.V0) = Ip (2.28)

I1 = Yscp.(Vp – V1) = Yscp.(Vp – T.V0) = Ip (2.29)

I1 = Yscp.(Vp – V1) = Yscp.(Vp – T.V0) = Ip (2.30)

và ở điểm trung tính mối quan hệ sau đây được duy trì :

0 = I’1 + I’2 + I’3 – I0 = Ti.I1 + Ui.I2 + Wi.I3 – I0 (2.31)

Thay các phương trình (2.28 ÷ 2.30) vào (2.31) :

0 = - Tv*Ysc pVp – Uv*Ysc sVs – Wv*Ysc tVt + (Tv2Ysc p + Uv2Ysc s + W v2Ysc t + Y0)

---------------------------------------------------- 27 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Viết lại dưới dạng ma trận ta có :

⎡ I p ⎤ ⎡ Yscp 0 0 −TvYscp ⎤ ⎡V p ⎤
⎢I ⎥ ⎢ 0 Yscs 0 −U vYscs ⎥ ⎢ ⎥
⎢ s⎥=⎢ ⎥ . ⎢Vs ⎥ (2.32)
⎢ It ⎥ ⎢ 0 0 Ysct −WvYsct ⎥ ⎢ Vt ⎥
⎢ ⎥ ⎢ * ⎥ ⎢ ⎥
⎣ 0 ⎦ ⎢⎣ −Tv Yscp −U v*Yscs −Wv*Ysct Tv Yscp + U v Yscs + Wv Ysct + Y0 ⎥⎦ ⎣ 0 ⎦
2 2 2

Áp dụng phép khử Gauss ta có được ma trận tương đương mô tả máy


biến áp một cách chính xác trong khi chỉ giữ lại các nút p, s và t :

⎡I p ⎤ ⎡U v2YscpYscs + W 2vYscpYsct + YscpY0 −TvU v*YscpYscs −Tv Wv*YscpYsct ⎤ ⎡V p ⎤


⎢ I ⎥ = 1 .⎢ −Tv U vYscpYscs
*
Tv YscsYscp + W vYscsYsct + YscsY0
2 2
−U v Wv YscsYsct
* ⎥ ⎢ ⎥
⎢ s⎥ Δ ⎢ ⎥ . ⎢Vs ⎥
⎢⎣ I t ⎥⎦ ⎢ −Tv WvYscpYsct
*
−U v WvYscsYsct
*
Tv YsctYscp + U vYsctYscs + YsctY0 ⎥⎦ ⎢⎣ Vt ⎥⎦
2 2

(2.33)

Trong đó Δ = Tv2Ysc p + Uv2Ysc s + W v2Ysc t + Y0.

Việc tìm ra ma trận tổng dẫn của máy biến áp hai dây quấn có thể
được thực hiện một cách rất dễ dàng bởi việc đơn giản hoá các giả thiết của
phương trình (2.33). Ví dụ, khi cuộn dây thứ ba không tồn tại, hàng và cột
tương ứng đối với nút đó trở nên dư thừa và được xoá đi khỏi phương trình
(2.33). Thêm nữa, do tỉ số Wv và Wi bằng 0 nên phương trình sẽ là :

⎡ I p ⎤ 1 ⎡U v YscpYscs + YscpY0 −TvU v*YscpYscs ⎤ ⎡V p ⎤


2

⎢ I ⎥ = Δ ⎢ −T *U Y Y ⎥. (2.34)
⎣ s⎦ ⎢⎣ v v scp scs Tv2YscsYscp + YscsY0 ⎦⎥ ⎢⎣Vs ⎥⎦

Trong đó Δ = Tv2Ysc p + Uv2Ysc s + Y0.

Có thể thấy rằng việc mô hình hoá máy biến áp hai cuộn dây dưới
dạng này có tính linh hoạt rất cao. Ví dụ, với trường hợp máy biến áp như ở
hình 2.6 và được mô tả bởi phương trình (2.24) thì mô hình trên đây là hoàn
toàn tương đương khi ta cho Y0 = 0, Tv = T là một số thực, Uv = 1, Ysc p =
Ysc và Ysc s = ∞.

---------------------------------------------------- 28 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Bây giờ ta hãy xét với trường hợp khi mô tả máy biến áp 2 cuộn dây
dưới dạng hình Γ :

Vp Vs
Ip Ysc I V I' Is
T:1
Y0

Hình 2.8 Mô hình máy biến áp 2 cuộn dây dạng hình Γ


với máy biến áp lý tưởng đặt sau.
Khi đó phương trình ma trận tổng dẫn sẽ có dạng :

⎡ I p ⎤ ⎡Ysc + Y0 −TYsc ⎤ ⎡V p ⎤
⎢ I ⎥ = ⎢ −TY . (2.35)
⎣ s⎦ ⎣ sc T 2Ysc ⎥⎦ ⎢⎣Vs ⎥⎦

Nếu máy biến áp lý tưởng được đặt ở phía trước thì phương trình ma trận tổng dẫn là:

⎡ Ysc −Ysc ⎤
+ Y0
⎡I p ⎤ ⎢T 2 T ⎥ . ⎡V p ⎤
⎢ I ⎥ = ⎢ −Y ⎥ ⎢ ⎥ (2.36)
⎣ s⎦ ⎢ V
sc
Ysc ⎥ ⎣ s ⎦
⎣⎢ T ⎦⎥

Tương tự như vậy, nếu mô tả máy biến áp 3 cuộn dây dưới dạng hình Γ thì ta
có phương trình ma trận tổng dẫn mô tả máy biến áp 3 cuộn dây là :
1:Uv
1:Ui Vs
Vp I'2 V2 I2 Yscs Is
Ip Yscp I1 V1 I'1
Vt
Tv:1 It
Ti:1 I'3 1:WvV3 I3
Y0 Ysct
1:Wi

Hình 2.9 Mô hình máy biến áp 3 cuộn dây dạng hình Γ

---------------------------------------------------- 29 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

⎡I p ⎤ ⎡U v2YscpYscs + W 2vYscpYsct + Y0 −TvU v*YscpYscs ⎤ ⎡V p ⎤


−Tv Wv*YscpYsct
⎢ ⎥ 1 ⎢ ⎥ ⎢ ⎥
⎢ Is ⎥ = Δ . ⎢ −Tv*U vYscpYscs Tv2YscsYscp + W 2vYscsYsct −U W Y Y*
v ⎥ . ⎢Vs ⎥
v scs sct

⎣⎢ I t ⎦⎥ ⎢ −Tv* WvYscpYsct −U v* WvYscsYsct T Y Y + U Y Y ⎦⎥ ⎣⎢ Vt ⎦⎥


2 2
⎣ v sct scp v sct scs

(2.37)

Trong đó Δ = Tv2Ysc p + Uv2Ysc s + W v2Ysc t

Chú ý rằng các phương trình (2.35) ÷ (2.37) sẽ là các phương trình
quan trọng nhất được áp dụng vào việc mô hình hoá máy biến áp trong
chương trình.

2.3 MÔ HÌNH MÁY PHÁT ĐIỆN

Mô hình máy phát điện được xây dựng trên cơ sở các chế độ vận hành
của máy phát điện, cụ thể là :

+ Chế độ bình thường : Vận hành công suất tác dụng theo điều độ, giữ
điện áp thanh cái không đổi. Thông số cho trước là P,U; thông số cần xác
định là Q, δ.

+ Chế độ chạy bù : phát thấp công suất tác dụng, phát công suất phản
kháng theo yêu cầu. Thông số cho trước là P,Q; thông số cần xác định là U, δ.

+ Chế độ điều tần : Công suất phát của các nhà máy được xác định theo
điều kiện cân bằng công suất trong hệ thống có tính đến tổn thất công suất.
Nhà máy cho các máy phát hoạt động theo chế độ này được gọi là nhà máy
điều tần. Nhà máy điều tần tương ứng với một nút cân bằng công suất trong
hệ thống, có nhiệm vụ giữ điện áp trên thanh cái và duy trì tần số trong hệ
thống không đổi. Thông số cho trước là U, δ; thông số cần xác định là P, Q.

---------------------------------------------------- 30 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
2.4 MÔ HÌNH PHỤ TẢI HỆ THỐNG

Nói chung, phụ tải hệ thống điện có thể chia thành phụ tải quay và
phụ tải tĩnh. Loại thứ 3 tương ứng với các phụ tải dựa trên công nghệ điện tử
công suất. Các phụ tải quay chủ yếu gồm các động cơ đồng bộ và không
đồng bộ, trạng thái vận hành xác lập của chúng chịu ảnh hưởng của sự biến
thiên tần số và điện áp của nguồn điện. Các phụ tải dựa trên công nghệ điện
tử công suất cũng chịu ảnh hưởng của sự biến thiên tần số và điện áp của
nguồn. Các phụ tải như vậy là tương đối khó vận hành vì ngoài việc nhạy
cảm với các biến động của nguồn điện, chúng còn bơm trở lại nguồn điện
các dòng điện hài làm méo sóng cơ bản.
Do số lượng lớn và mật độ dày đặc của các phụ tải trong hệ thống, việc
nhóm các phụ tải quay đơn lẻ thành một phụ tải lớn là điều thích hợp hơn cả.
Chỉ có các phụ tải đặc biệt quan trọng mới được tách riêng và mô tả chi tiết.
Cũng cần nhớ rằng một nhóm các phụ tải quay vận hành ở trạng thái moment
không đổi cũng có thể được mô tả tương đương như một phụ tải tĩnh.
Trong chế độ xác lập, hầu hết các phụ tải đều được mô tả như một phụ
tải 3 pha nối hình sao hoặc tam giác tùy theo yêu cầu.

Hình 2.10 Mô hình phụ tải hệ thống điện. (a) Phụ tải hình sao với trung tính
trực tiếp nối đất.(b) Phụ tải nối tam giác.

---------------------------------------------------- 31 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Trong các nghiên cứu về chế độ xác lập của hệ thống điện 3 pha,
thông thường người ta biểu diễn các nút phụ tải lớn của hệ thống bằng công
suất phức trên từng pha, viết trong hệ đơn vị tương đối ta có :
S La = PLa + jQLa ⎫

S Lb = PLb + jQLb ⎬ (2.38)
S Lc = PLc + jQLc ⎪⎭

Các hiệu chỉnh có thể được áp dụng đối với các phương trình trên để
tạo nên đặc tính công suất tương ứng với điện áp :
α β
⎡1⎤ ⎡1⎤ ⎫
S 'La = PLa . ⎢ ⎥ + jQLa . ⎢ ⎥ ⎪
⎣Va ⎦ ⎣ Va ⎦ ⎪
α β ⎪
⎡1⎤ ⎡1⎤ ⎪
S 'Lb = PLb . ⎢ ⎥ + jQLb . ⎢ ⎥ ⎬ (2.39)
⎣ Vb ⎦ ⎣ Vb ⎦ ⎪
α β ⎪
⎡1⎤ ⎡1⎤ ⎪
S 'Lc = PLc . ⎢ ⎥ + jQLc . ⎢ ⎥
⎣Vc ⎦ ⎣Vc ⎦ ⎭⎪

Trong hệ phương trình (2.39), các hệ số α và β lấy các giá trị trong
phạm vi 0 ÷2, và Va, Vb, Vc là biên độ điện áp các pha của nút tải trong hệ
đơn vị tương đối. Khi α = β = 0 thì các công suất phức trong (2.39) trùng
với công suất phức trong (2.38). Tuy nhiên, nếu α = β = 1 thì (2.39) sẽ
tương đồng với đặc tính dòng điện phức hơn là đặc tính công suất phức.
Tương tự, nếu α = β = 2 thì công suất phức trong (2.39) sẽ trở thành tổng
dẫn phức. Dưới dạng ma trận, trong trường hợp α = β = 2, nếu tải nối hình
sao và tam giác thì ma trận tổng dẫn phức lần lượt là :
⎡ S La ⎤ ⎡ S La S Lb S Lb S La⎤
⎢ 2 0 0 ⎥ ⎢ 2 + 2 − − ⎥
⎢ Va ⎥ ⎢ Va Vb Vb2 Va2 ⎥
⎢ S Lb ⎥ 1 ⎢ S S Lb S Lc S Lc ⎥
⎢ 0 0 ⎥ (2.40) ; . ⎢ − Lb2 + − 2 ⎥ (2.41)
⎢ Vb2 ⎥ 3 ⎢ Vb Vb2 Vc2 Vc ⎥
⎢ S Lc ⎥ ⎢ S S Lc S Lc S La ⎥
⎢ 0 0 ⎥ ⎢ − La2 − + ⎥
⎣ Vc2 ⎦ ⎣ Va Vc2 Vc2 Va2 ⎦

Trên đây là những mô hình phần tử cơ bản của hệ thống điện. Trong
phần tiếp theo, ta sẽ đi trình bày các mô hình toán học của thiết bị SVC.

---------------------------------------------------- 32 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

CHƯƠNG 3
MÔ HÌNH HOÁ THIẾT BỊ SVC

3.1 VÀI NÉT KHÁI QUÁT VỀ FACTS


3.1.1 Vai trò của FACTS trong sự phát triển của hệ thống điện.
Trên toàn thế giới, nền công nghiệp điện năng đang trải qua những quá
trình thay đổi sâu sắc. Áp lực thị trường, nguồn năng lượng tự nhiên trở lên
khan hiếm, và thậm chí nhu cầu về điện ngày càng tăng lên là những yếu tố có
tính chất quan trọng tạo động lực cho những thay đổi mang tính đột biến
trong lịch sử phát triển. Tuy nhiên, những chương trình phát triển mang lại
nhiều lợi ích thiết thực đang bị ngăn trở bởi áp lực về trang thiết bị, môi
trường, đất đai sử dụng cũng như áp lực từ phía những nhà quản lý trong việc
cấp phép xây dựng những đường dây truyền tải, những nhà máy điện mới.
Những phân tích chuyên sâu về việc cực đại hóa giá trị sử dụng của những
đường dây truyền tải đang tồn tại với độ tin cậy và khả năng ổn định cao hơn
đã chỉ ra một hướng phát triển dựa trên phương diện điện tử công suất. Có thể
nói rằng những công nghệ và thiết bị điện tử công suất mới là sự thay thế đầy
triển vọng cho công nghệ cơ điện tử đã được ứng dụng từ trước tới nay trong
việc giải quyết các vấn đề trên. Có thể chỉ ra đây 2 trong số những nhược
điểm của công nghệ cơ điện tử đó là thời gian đáp ứng chậm và giá thành bảo
dưỡng cao.
Tính chất độc lập trong cấu trúc của hệ thống điện làm cho dòng công
suất truyền tải trên nó phân bố trải khắp và phụ thuộc vào tổng trở đường dây;
một đường dây truyền tải có tổng trở bé cho phép dòng công suất chạy trên nó
lớn hơn so với một đường dây với tổng trở cao. Không phải lúc nào đây cũng
là kết quả mong muốn nhất vì nó dẫn tới vô số các vấn đề trong vận hành;

---------------------------------------------------- 33 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

công việc của người vận hành hệ thống là can thiệp để cố gắng phân phối lại
dòng công suất đó, với sự thành công trong một giới hạn nhất định. Những ví
dụ về các vấn đề xảy ra trong vận hành khi dòng công suất tác dụng và phản
kháng không được phân phối lại là : mất ổn định hệ thống, công suất chạy
vòng, tổn thất truyền tải lớn, vi phạm giới hạn điện áp, vượt quá giới hạn
nhiệt của đường dây truyền tải và cắt điện từng đợt .
Trong một thời gian dài, những vấn đề như vậy được giải quyết một
cách truyền thống bằng cách xây dựng những nhà máy điện và những đường
dây truyền tải mới, đây là cách giải quyết nhấn mạnh tới giá thành và bao
gồm cả thời gian xây dựng dài – điều này đối lập với sự cấp bách trong bản
thân vấn đề. Có thể nhận thấy rằng một cách giải quyết khác đối với những
vấn đề như vậy là dựa trên việc nâng cấp, cải thiện các hành lang truyền tải
sẵn có bằng việc sử dụng các phương pháp và thiết bị điện tử công suất mới
nhất , một ý tưởng công nghệ mới đã xuất hiện dưới một cái tên chung là
FACTS – Flexible Alternating Curent Tranmission Systems (Hệ thống truyền
tải điện xoay chiều linh hoạt).
3.1.2 Khái niệm về FACTS
Một cách chung nhất, FACTS là sự kết hợp của các thiết bị điện tử
công suất và các phương pháp điều khiển chúng, ứng dụng vào cấp điện áp
cao của mạng lưới điện để nâng cao khả năng điều khiển lưới điện.
FACTS dựa trên nền tảng của các van bán dẫn điện tử công suất lớn.
Dựa trên cấu tạo thiết bị, cách đấu nối mà người ta phân ra làm nhiều loại
thiết bị FACTS khác nhau với các chức năng khác nhau. Những loại thường
gặp nhất là : thiết bị thay đổi đầu phân áp (LTC), thiết bị điều chỉnh góc pha
(PS), thiết bị bù tĩnh (SVC), thiết bị bù nối tiếp điều khiển bằng thyristor
(TCSC), thiết bị điều khiển công suất giữa các pha (IPC) và thiết bị điều
khiển công suất hợp nhất (UPFC). Sự xuất hiện của FACTS cho phép nâng

---------------------------------------------------- 34 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

cao đáng kể các chỉ tiêu vận hành của hệ thống mà không yêu cầu những thay
đổi lớn trong sơ đồ đấu nối. Chính vì vậy, hiện nay trên thế giới, xuất hiện
ngày càng nhiều các loại thiết bị FACTS khác nhau cũng như các phiên bản
cải tiến của chúng được đưa vào vận hành trong hệ thống điện. Sự xuất hiện
của FACTS cũng làm thay đổi đáng kể cách thức thực hiện các bài toán quy
hoạch, thiết kế, vận hành hệ thống điện và cần thiết phải nâng cấp một loạt
các công cụ hiện có để có thể tích hợp các thiết bị FACTS vào lưới. Một trong
số các công cụ ấy bao gồm:
-Tính toán phân bố công suất
-Tính toán phân bố tối ưu công suất
-Đánh giá trạng thái
-Phân tích sự cố ngẫu nhiên
-Ổn định quá độ
-Ổn định động.
Cho tới hiện tại, đã có rất nhiều các mô hình cũng như các phương
pháp tính toán hệ thống điện tích hợp các mô hình thiết bị FACTS. Tuy nhiên,
do giới hạn về thời gian, bản đồ án chỉ xin trình bày về thiết bị bù tĩnh SVC
và các mô hình mô phỏng SVC trong hệ thống điện đối với bài toán tính toán
phân bố công suất (PowerFlows) trong chế độ xác lập.
3.1.3 Khái niệm về SVC
SVC (Static Var Compensator) là thiết bị bù công suất phản kháng tĩnh.
Khái niệm “tĩnh” ở đây chỉ ra rằng thiết bị không bao gồm các cơ cấu quay
hay đóng cắt cơ khí để thực hiện chức năng điều chỉnh. SVC có vai trò tương
tự như một máy bù đồng bộ, tức là có khả năng phát và tiêu thụ công suất
phản kháng trong giới hạn thiết kế. SVC có khả năng tác động nhanh với
những tín hiệu điều khiển, tuy nhiên khả năng chịu dòng ngắn mạch của SVC
lại kém hơn so với các máy bù đồng bộ.

---------------------------------------------------- 35 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Vai trò của SVC trong hệ thống điện được thể hiện như sau:
-Giảm lượng công suất phản kháng truyền tải trên lưới và do đó giảm
tổn thất điện năng.
-Thực hiện bù công suất phản kháng tại hộ tiêu thụ để cải thiện chất
lượng điện năng, đặc biệt khi trong lưới có xuất hiện các thiết bị gây dao động
mạnh trong lưới khi vận hành như: các động cơ công nghiệp, các nhà máy
luyện thép, hệ thống tàu điện ngầm,…
-Bù công suất phản kháng cho hệ thống nghịch lưu Thyristor
-Cải thiện đặc tính ổn định tĩnh và ổn định động.
-Duy trì biên độ điện áp tại những nút xung yếu.

3.2 MÔ HÌNH HÓA THIẾT BỊ SVC


Vấn đề được giải quyết trong phần này là nghiên cứu những mô hình
mô tả SVC để đảm bảo độ chính xác của nó khi tích hợp vào bài toán tính
toán chế độ xác lập của hệ thống điện. Chúng ta sẽ nghiên cứu mô hình SVC
trong hệ toạ độ pha và vùng thứ tự (thuận, nghịch, không). Tất cả các mô hình
đều được xây dựng từ những phần tử cơ bản, với sự tham chiếu chặt chẽ cấu
trúc vật lý của các thiết bị. Cách tiếp cận như vậy tuân theo các mô hình linh
hoạt, rất hữu ích cho việc đánh giá hoạt động của các phần tử lưới điện có chú
trọng tới sự không đối xứng của thiết bị - một vấn đề xảy ra tất yếu trong tất
cả các thiết bị điện. Tuy nhiên, nếu sự bất đối xứng này nhỏ và có thể bỏ qua
trong khi nghiên cứu thì mô hình nghiên cứu sử dụng cho các phần tử sẽ được
đơn giản đi rất nhiều và sẽ được mô tả trong vùng thứ tự (thuận, nghịch và
thứ tự không).
Về cơ bản SVC có thể được cấu tạo từ một điện kháng điều khiển bằng
thyristor (TCR) mắc song song với một bộ tụ. Trong phần này, ta lần lượt
nghiên cứu : Kháng điện điều khiển bằng thyristor (TCR-Thyristor Controlled
Reactor), và kết nối của TCR với bộ tụ để tạo nên thiết bị SVC.

---------------------------------------------------- 36 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

3.2.1 Kháng điện điều khiển bằng thyristor TCR


Thành phần chính của thiết bị TCR điển hình được trình bày trên hình
3.1(a) Khối điều khiển là một cặp thyristor mắc song đối. Th1 và Th2 sẽ dẫn
trong mỗi nửa chu kỳ của tần số nguồn. Thành phần chính khác là kháng điện
tuyến tính ( không có lõi thép) có điện cảm là L. Ký hiệu mạch thyristor được
trình bày trên hình 3.1(b)
Gate
(G)
i (t)
TCR

Anot
(A) Cathode
(K)
L

v(t) (b)

Th2 Th1

(a)

Hình 3.1 Mạch cơ bản thyristor; (a) Cuộn kháng điều khiển bằng thyristor;
(b) Kí hiệu mạch Thyristor
Tác động chính của bộ điều khiển thyristor là cho phép cuộn kháng
hoạt động với điện dẫn phản kháng (nghịch đảo của điện kháng) có thể điều
khiển được, và là hàm của góc kích thích α. Tuy nhiên tác động này không
phải là tự do thay đổi vì TCR gây ra hiện tượng méo sóng hài khi làm việc với
một góc dẫn α nào đó, trừ trường hợp điều kiện là dẫn hoàn toàn.
Đầu tiên, ta xem xét điều kiện khi mà không có sóng hài xuất hiện, điều
này xảy ra khi thyristor được kích thích dẫn chính xác ở các đỉnh của điện áp

---------------------------------------------------- 37 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

nguồn. Cuộn kháng dẫn đầy đủ, có thể xem như bộ điều khiển thyristor được
nối ngắn mạch trong trường hợp này. Cuộn kháng có điện trở bé và dòng điện
hình sin có góc chậm sau điện áp gần như 900 (π/2). Điều này được minh họa
trên hình 3.2(a), minh hoạ một chu kì điện áp và dòng điện với tần số cơ bản.
Có thể thấy rằng điều kiện này tương ứng với góc kích thích α = 900 ,
góc này được đo giữa điểm qua 0 của dòng điện với điểm tham chiếu là điểm
qua 0 của điện áp. Mối quan hệ giữa góc kích thích α và góc dẫn σ như sau :
σ = 2.(π - α) (3.1)
Điều này được giải thích từ việc thành lập được phương trình :
ωt
1 2.V
iTCR (t ) = . ∫ 2.V .sin ωt.dt = (cosα -cosω t)
L α ω .L

Cho iTCR(t) = 0
⇔ cosα − cosω t1 = 0

⇔ ωt1 = 2kπ − α

Cho k =1 → ωt1 = 2π - α
Vậy góc dẫn σ = ωt1 - α = (2π - α) - α = 2.(π - α)
Việc dẫn cục bộ xảy ra khi π/2 < α < π. Điều này được minh họa trên

hình 3.2(b) – 3.2(d), khi đó dòng điện qua TCR là hàm của góc kích thích α.

Việc tăng góc kích thích vượt quá π/2 làm cho dạng sóng của dòng điện qua

TCR không còn là hình sin, dẫn đến thành phần ứng với tần số cơ bản của nó

bị suy giảm biên độ. Điều này tương đương với việc tăng độ từ cảm của cuộn

kháng, giảm khả năng của nó trong việc tiêu thụ công suất phản kháng của

mạng ở điểm nối.

---------------------------------------------------- 38 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

v i

0 90 180 270 360 0 90 180 270 360


Pha(®é) Pha(®é)

0 90 180 270 360 0 90 180 270 360


Pha(®é) Pha(®é)
Ò Ó »
Hình 3.2 Dạng sóng dòng điện trong cuộn kháng điều khiển bằng thyristor
(a) α = 90; (b) α = 100; (c) α = 130; (d) α = 150
Đối với điều kiện điện áp được chỉ ra như trên hình 3.2(a),
v(t) = 2 .V.sinωt
dòng điện tức thời qua TRC được đưa ra bởi công thức :
ωt
1 2.V
iTCR (t ) = . ∫ 2.V .sin ωt.dt = (cosα -cosω t) (3.2)
L α ω .L

trong khoảng α ≤ ωt ≤ (α + σ) và bằng 0 trong khoảng còn lại.V là điện áp


hiệu dụng, ω = 2πf, f là tần số hoạt động.
Dùng phương pháp phân tích chuỗi Fourier, biểu thức đối với dòng
điện tần số cơ bản là :
V
ITCRf 1 = .[ 2.(π − α ) + sin 2α ] (3.3)
jω Lπ

Nếu như góc kích thích của Th1 và Th2 là bằng nhau thì không có sóng
hài bậc chẵn được tạo ra và giá trị hiệu dụng của dòng điện tương ứng với
sóng hài bậc lẻ thứ h là :
V ⎡ sin(h + 1)α sin(h − 1)α sin(hα ) ⎤
ITCRh = ⎢ + − cosα (3.4)
jω Lπ ⎣ h + 1 h −1 h ⎥⎦

---------------------------------------------------- 39 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Trong đó h = 3,5,7,9,11,13….
Có thể dễ dàng chứng minh được điều này như sau :
Theo cách phân tích chuỗi Fourier thì hàm iTCR(t) được phân tích thành:
a0 ∞
iTCR(t) = + ∑ [ah .cos(hω t) + bh .sin(hωt )]
2 h =1

Do hàm iTCR(t) đối xứng qua trục hoành nên a0 = 0


Dựa vào tính chất chuỗi Fourier :
f(-x) = f(x) → bh = 0 ∀h
f(-x) = - f(x) → ah = 0 ∀h
f(x + π) = - f(x) → chỉ tồn tại bậc lẻ, không tồn tại bậc chẵn.
Thật vậy ta có:
2π −α
1 2.V
a1 =
π
. ∫
α ωL
(cosα -cosω t).cosω t.dω t

2
2.V
= [2(π -α )+sin2α ]
ω Lπ
2π −α
1 2.V
ah =
π
. ∫
α ωL
(cosα -cosω t).cos(hω t).dω t

2
4 2.V sin(h+1)α sin(h-1)α sin(hα )
= [ + − cosα ]
ω Lπ 2(h + 1) 2(h − 1) h

trong đó h = 3,5,7,9,11,13…
2π −α
1 2.V
bh =
π
. ∫
α ωL
(cosα -cosω t).sin(hω t).dω t = 0(∀h)

2
Việc lắp đặt TCR trong hệ thống điện được thực hiện ở cả 3 pha , và có
thể sử dụng các bộ lọc cũng như cách sắp xếp các TCR để triệt tiêu các sóng
hài khác, ngăn cản các dòng điện hài truyền vào cấp điện áp cao của lưới.
Cũng vì vậy, cuộn cảm TCR có thành phần điện trở tương đối bé.

---------------------------------------------------- 40 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Hình 3.3 minh họa cho một TCR 3 pha nối tam giác. Cấu trúc này dùng
6 nhóm thyristor và thường được gọi là TCR 6 xung.
Vc
Vb
Va I
I I TCRc
TCRa TCRb
I I I
TCR1 TCR2 TCR3

Nh¸nh 1 Nh¸nh 2 Nh¸nh 3

Hình 3.3 Cuộn kháng được điều khiển bằng thyristor 3 pha
Trong cách sắp xếp này, và dưới điều kiện hoạt động đối xứng, dòng
điện hài bậc ba được tạo ra bởi 3 nhánh TCR sẽ không đi vào lưới, chỉ có các
hài bậc h = 5, 7, 11, 13…Thêm nữa, nếu TCR được chia thành 2 khối có giá
trị bằng nhau và được nối với thứ cấp của máy biến áp hai dây quấn Y/Δ thì
các sóng hài bậc 5 và 7 cũng được triệt tiêu. Sự sắp xếp biến thể này yêu cầu
một TCR 12 xung. Các sóng hài nhỏ nhất tới được cuộn sơ cấp của máy biến
áp là h = 11, 13 …có thể được loại bỏ bằng cách dùng các bộ lọc điều hợp.
Chúng ta có thể giả thiết trong các phân tích tiếp theo sau đây rằng tất
cả các thành phần sóng hài bậc cao đã bị triệt tiêu (hoặc bằng cách thiết kế
TCR đối xứng hoặc vận hành TCR đối xứng), chúng ta chỉ quan tâm tới
những thông số và hoạt động ở tần số cơ bản. Theo đó, phương trình (3.3) có
thể được viết lại như sau :
ITCR = − j.BTCR .V (3.5)

---------------------------------------------------- 41 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Trong đó :
2(π − α ) + sin 2α
BTCR = (3.6)
ω Lπ
Kí hiệu f1 chỉ tần số cơ bản sẽ được bỏ đi cho thuận tiện.
Việc biểu diễn tổng dẫn nút 3 pha của một TCR có thể được tìm ra bằng
cách dùng biến đổi tuyến tính. Ví dụ, dùng kết quả trong phương trình (3.5),
trường hợp của TCR 6 xung ( hình 3.3) sẽ có thông số ban đầu như sau :
⎡ ITCR1 ⎤ ⎡ − jBTCR1 0 0 ⎤ ⎡V1 ⎤
⎢I ⎥ ⎢ 0 ⎥⎥ . ⎢⎢V2 ⎥⎥ (3.7)
⎢ TCR 2 ⎥ = ⎢ 0 − jBTCR 2
⎢⎣ ITCR 3 ⎥⎦ ⎢⎣ 0 0 − jBTCR 3 ⎥⎦ ⎢⎣V3 ⎥⎦

Và ma trận liên kết đối với pha a,b và c là :


⎡V1 ⎤ ⎡1 −1 0 ⎤ ⎡Va ⎤
⎢V ⎥ = (π / 6) ⎢0 1 −1⎥ . ⎢V ⎥ (3.8)
⎢ 2⎥ 3 ⎢ ⎥ ⎢ b⎥
⎢⎣V3 ⎥⎦ ⎢⎣1 0 1 ⎥⎦ ⎢⎣Vc ⎥⎦

⎡ ITCRa ⎤ ⎡ 1 0 −1⎤ ⎡ ITCR1 ⎤


⎢I ⎥ = (−π / 6) . ⎢ −1 1 0 ⎥ . ⎢ I ⎥ (3.9)
⎢ TCRb ⎥ 3 ⎢ ⎥ ⎢ TCR 2 ⎥

⎢⎣ ITCRc ⎥⎦ ⎢⎣ 0 −1 1 ⎥⎦ ⎢⎣ ITCR 3 ⎥⎦

Thay thế phương trình (3.8) vào phương trình (3.7) , và thay kết quả
trung gian vào (3.9) ,chúng ta tìm được mạch tương đương dạng pha đối với
TCR 6 xung :
⎡ ITCRa ⎤ ⎡ − j ( BTCR1 + BTCR 3 ) jBTCR1 jBTCR 3 ⎤ ⎡Va ⎤
⎢I ⎥ = 1 .⎢ jBTCR1 − j ( BTCR1 + BTCR 2 ) jBTCR 2 ⎥ . ⎢V ⎥ (3.10)
⎢ TCRb ⎥ 3 ⎢ ⎥ ⎢ b⎥
⎣⎢ ITCRc ⎦⎥ ⎣⎢ jBTCR 3 jBTCR 2 − j ( BTCR 2 + BTCR 3 ) ⎦⎥ ⎣⎢Vc ⎥⎦

Trong trường hợp đặc biệt, cả 3 nhánh trong TCR có điện dẫn phản
kháng như nhau ( BTCR1 = BTCR2 = BTCR3 = BTCR). Phương trình (3.10) có thể
đơn giản thành :
⎡ ITCRa ⎤ ⎡ − j 2 BTCR jBTCR jBTCR ⎤ ⎡Va ⎤
⎢I ⎥ = 1 . ⎢ jB − j 2 BTCR jBTCR ⎥⎥ . ⎢⎢Vb ⎥⎥ (3.11)
⎢ TCRb ⎥ 3 ⎢ TCR

⎢⎣ ITCRc ⎥⎦ ⎢⎣ jBTCR jBTCR −2 jBTCR ⎥⎦ ⎢⎣Vc ⎥⎦

---------------------------------------------------- 42 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Trong trường hợp này, có một cách biểu diễn khác tiện lợi hơn là biểu
diễn theo các thành phần thứ tự thuận (1) nghịch (2), không (0).
⎡ ITCR (0) ⎤ ⎡ 0 0 0 ⎤ ⎡V(0) ⎤
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎢ ITCR (1) ⎥ = ⎢ 0 − jBTCR 0 ⎥ . ⎢V(1) ⎥ (3.12)
⎢ ⎥ − jBTCR ⎥⎦ ⎢⎣V(2) ⎥⎦
⎣ ITCR (2) ⎦ ⎢⎣ 0 0

Như mong muốn, không có dòng điện thứ tự không chạy trong mạch
này do bản chất nối tam giác của TCR. Mạch thứ tự thuận và nghịch biểu diễn
các tổng trở bằng nhau đối với các dòng điện tương ứng của chúng. Như được
thể hiện trong phương trình (3.12), các thành phần thứ tự là độc lập với nhau.
Nhưng cần phải chú ý rằng điều này không thể có được khi các thành phần
đối xứng được áp dụng vào phương trình (3.10). Nguyên nhân là ma trận tổng
dẫn của phương trình (3.10) không nhất thiết phải là 1 ma trận đối xứng, vì
điều kiện BTCR1 ≠ BTCR2 ≠ BTCR3 có thể tồn tại.
Tuy nhiên, nếu giả thiết tổng dẫn tương đương trong TCR 6 xung bằng
nhau, khi đó phương trình biểu diễn thành phần thứ tự thuận trở thành:
ITCR(1) = -j.BTCR.V(1) (3.13)
Kết quả này phù hợp với đặc tính của TCR điển hình (1 pha) được giới
thiệu trên hình 3.1(a) và được đưa ra bởi phương trình (3.5).
3.2.2 Thiết bị bù công suất phản kháng tĩnh SVC
Ở dạng đơn giản nhất, SVC bao gồm một TCR nối song song với một
bộ tụ điện. Nhìn từ quan điểm vận hành, SVC hoạt động giống như một điện
kháng biến thiên nối song song, nó tạo ra hoặc tiêu thụ 1 lượng công suất
phản kháng nhằm mục đích điều chỉnh biên độ điện áp tại điểm nối với lưới
điện. Thiết bị này được dùng rộng rãi để có thể cung cấp 1 lượng công suất
phản kháng và điều chỉnh điện áp nhanh chóng. Việc điều khiển góc kích
thích của thyristor cho phép SVC có tốc độ đáp ứng gần như tức thời.

---------------------------------------------------- 43 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Hình 3.4 biểu diễn sơ đồ một SVC, biến áp 3 cuộn dây 3 pha được
dùng để nối giữa SVC và thanh góp điện áp cao. Máy biến áp có 2 cuộn dây
thứ cấp tương tự nhau : một cuộn dây nối với TCR 6 xung nối tam giác,
một cuộn dây nối với bộ tụ điện 3 pha nối hình sao với điểm trung tính không
nối đất. Ba cuộn dây của máy biến áp cũng nối hình sao với điểm trung tính
không nối đất.
Việc mô hình hóa 1 nhánh của TCR đã được thảo luận ở phần 3.2.1,
vấn đề quan tâm bây giờ là bộ tụ điện. Tổng dẫn cả hai nhánh của SVC sẽ là
sự kết hợp của hai nhánh này.Tổng dẫn nút của bộ tụ điện trong hệ toạ độ pha,
có thể được biểu diễn thông qua điểm trung tính không nối đất. Tuy nhiên, để
thuận tiện sẽ sử dụng hệ phương trình rút gọn theo phương pháp Kron để thu
được hệ phương trình mới chỉ bao gồm các thông số pha .

Ia Va
Ib Vb
Ic Vc

I
I I TCRa
TCRc TCRb
I I I
I I I
Cc Cb Ca TCR1 TCR2 TCR3

C1 C2 C3

n Nh¸nh 1 Nh¸nh 2 Nh¸nh 3

Hình 3.4 Bộ bù tĩnh 3 pha (SVC) gồm các tụ điện cố định


và cuộn kháng điều khiển bằng thyristor

---------------------------------------------------- 44 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Trong hầu hết các trường hợp, khi BC1 ≠ BC2 ≠ BC3, và sau phép khử
Kron , mô hình tương đương rút gọn của dãy tụ điện là :
⎡ BC21 BC 2 .BC1 BC 3 .BC1 ⎤
⎢ j ( BC1 − ) −j −j ⎥
Δ B ΔBC ΔBC ⎥
⎡ I Ca ⎤ ⎢
C
⎡Va ⎤
⎢ ⎥ ⎢ BC1.BC 2 BC2 2 BC 3 .BC 2 ⎥ ⎢ ⎥
⎢ I Cb ⎥ = ⎢ − j ΔB j ( BC 2 − ) −j ⎥ . Vb (3.14)
ΔBC ΔBC ⎥ ⎢ ⎥
⎢⎣ I Cc ⎥⎦ ⎢ C
⎢⎣Vc ⎥⎦
⎢ BC2 3 ⎥⎥
⎢ − j BC1.BC 3 −j
BC 2 .BC 3
j ( BC 3 − )
⎢⎣ ΔBC ΔBC ΔBC ⎥⎦

Trong đó :
ΔBC = BC1 + BC2 + BC3
B

BC1 = ω.C1
B (3.15)
BC2 = ω.C2
B

BC3 = ω.C3
B

Nếu tất cả 3 nhánh của dãy tụ điện có độ cảm ứng tương đương bằng
nhau ( BC1 = BC2 = BC3 = BC ) thì phương trình (3.14) có thể đơn giản thành :
⎡ I Ca ⎤ ⎡ j 2 BC − jBC − jBC ⎤ ⎡Va ⎤
⎢ I ⎥ = 1 . ⎢ − jB j 2 BC − jBC ⎥⎥ . ⎢⎢Vb ⎥⎥ (3.16)
⎢ Cb ⎥ 3 ⎢ C

⎣⎢ I Cc ⎦⎥ ⎣⎢ − jBC − jBC j 2 BC ⎦⎥ ⎣⎢Vc ⎥⎦

Mô hình 3 pha của SVC trong hệ toạ độ pha bây giờ có thể được thiết

lập khá đơn giản. Biểu thức chung nhất đối với SVC 6 xung sẽ thu được khi

cộng phương trình (3.10) và (3.14) với nhau. Điều này cho phép giải thích mô

hình SVC hoạt động theo trạng thái mất cân bằng giữa các pha.

Trường hợp đặc biêt, phương trình (3.11) và (3.16) được sử dụng như

những phần cấu thành của mô hình SVC :

---------------------------------------------------- 45 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

⎡ I SVCa ⎤ ⎡ I Ca ⎤ ⎡ ITCRa ⎤
⎢I ⎥ ⎢ ⎥ ⎢ ⎥
⎢ SVCb ⎥ = ⎢ I Cb ⎥ + ⎢ ITCRb ⎥
⎢⎣ I SVCc ⎥⎦ ⎢⎣ I Cc ⎥⎦ ⎢⎣ ITCRc ⎥⎦
(3.17)
⎡ j 2( BC − BTCR ) − j ( BC − BTCR ) − j ( BC − BTCR ) ⎤ ⎡Va ⎤
1 ⎢
= . ⎢ − j ( BC − BTCR ) j 2( BC − BTCR ) − j ( BC − BTCR ) ⎥⎥ . ⎢⎢Vb ⎥⎥
3
⎢⎣ − j ( BC − BTCR ) − j ( BC − BTCR ) j 2( BC − BTCR ) ⎥⎦ ⎢⎣Vc ⎦⎥

Ta thấy rằng ở đây có thể thành lập những mô hình biến thể , với nhiều
chức năng khác nhau Ví dụ, sự kết hợp của phương trình (3.10) và (3.16) dẫn
tới một mô hình SVC mà trong đó 3 nhánh của TCR có điện cảm tương
đương khác nhau nhưng 3 nhánh tụ điện lại có điện dung bằng nhau. Việc sử
dụng phương trình (3.11) và (3.14) sẽ tạo ra một hiệu quả ngược lại, SVC có
3 nhánh của TCR có điện cảm tương đương bằng nhau nhưng 3 nhánh tụ điện
lại có điện dung khác nhau.
Trong tất cả các trường hợp, chỉ có mô hình SVC được đưa ra bởi
phương trình (3.17) là phù hợp để tìm ra một phương trình biểu diễn trong hệ
toạ độ các thành phần đối xứng. Áp dụng ma trận các thành phần đối xứng TS
và nghịch đảo của nó tới phương trình (3.17) ta có kết quả sau :
⎡ I SVC (0) ⎤ ⎡ 0 0 0 ⎤ ⎡V(0) ⎤
⎢ ⎥ ⎢ ⎥ . ⎢V ⎥
⎢ I SVC (1) ⎥ = ⎢ 0 j ( BC − BTCR ) 0 ⎥ ⎢ (1) ⎥ (3.18)
⎢ I SVC (2) ⎥ ⎢⎣ 0 0 j ( BC − BTCR ) ⎥⎦ ⎢⎣V(2) ⎥⎦
⎣ ⎦

Tương tự như TCR, không có dòng điện thứ tự không trong mạch SVC
khi điểm trung tính của dãy tụ điện không nối đất. Mạch thứ tự thuận và thứ
tự nghịch có tổng trở bằng nhau. Tuy nhiên, đối với những trường hợp vận
hành đối xứng hoặc SVC được mong muốn là đối xứng thì chỉ có phương
trình biểu diễn thứ tự thuận :
ISVC(1) = j.BSVC.V(1) (3.19)

---------------------------------------------------- 46 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Trong đó :
1 ⎧
[ 2(π − α ) + sin 2α ]⎫⎬ (3.20)
XC
BSVC = BC – BTCR = ⎨XL −
X C .X L ⎩ π ⎭
B

XL = ω.L
1
XC =
ω.C
Chú ý rằng mô hình thành phần thứ tự thuận của SVC cũng có thể dùng
cho mục đích biểu diễn mô hình SVC 1 pha.

3.3 SƠ ĐỒ THAY THẾ THIẾT BỊ SVC TRONG BÀI TOÁN CĐXL


Trong phần này sẽ mô tả chi tiết các mô hình thông dụng và cải tiến
của thiết bị SVC sử dụng trong chế độ xác lập. Các mô hình cải tiến được rút
ra từ mô hình thông dụng kiểu máy bù của SVC và dựa trên khái niệm điện
dẫn phản kháng biến thiên. Trong trường hợp sau, các biến trạng thái SVC
được hợp nhất với các biến về biên độ điện áp và góc pha trong hệ phương
trình lặp Jacobi của phương pháp Newton-Raphson. Hai mô hình được mô tả
trong dạng này là mô hình điện dẫn phản kháng biến thiên (variable shunt
suscepstance model) và mô hình góc kích thích (firing – angle model). Ngoài
ra, sẽ trình bày thêm mô hình tích hợp máy biến áp tăng áp với mô hình góc
kích thích.
3.3.1 Các mô hình thông dụng của SVC trong chế độ xác lập.
Các mô hình đầu tiên của SVC trong phân tích chế độ xác lập của hệ
thống điện xem SVC như một máy bù nối sau một điện kháng. Điện kháng
này biểu diễn đặc tính điều chỉnh điện áp của SVC.
Một mô hình đơn giản hơn giả thiết rằng độ dốc đặc tính của SVC bằng
0. Giả thiết này có thể chấp nhận được khi SVC hoạt động trong các giới hạn
thiết kế của nó. Tuy nhiên, điều này có thể dẫn tới sự không chính xác trong

---------------------------------------------------- 47 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

tính toán nếu SVC đang hoạt động rất gần biên giới hạn. Điều này được minh
họa trên hình 3.5, liên quan tới đặc tính phía trên của SVC khi hệ thống đang
vận hành non tải. Nếu lấy độ dốc bằng 0 thì máy bù sẽ vi phạm biên giới hạn
dưới, điểm AX SL =0 . Tuy nhiên, máy bù sẽ vận hành tốt bên trong giới hạn

(điểm A) nếu độ dốc đặc tính V – I được lấy khác 0.


V

V 1

V max A
DX =0
SL AX
SL =0

D
V min

V 2

System reactive
load characteristíc

Capacitive rating

Inductive rating

I 0 I
min max
I
S

Hình 3.5 Đặc tính V – I của hệ thống tải và SVC


Như vậy, việc đưa độ dốc đặc tính V – I của SVC vào bài toán tính toán
chế độ xác lập là cần thiết. Độ dốc này có thể được thể hiện bằng cách nối mô
hình SVC vào một nút trung gian nối với nút điện áp cao thông qua một điện
kháng có giá trị bằng tổng điện kháng của máy biến áp và độ dốc đặc tính
SVC, lấy theo đơn vị tương đối cơ bản của SVC. Nút trung gian đóng vai trò
như một nút PV và nút điện áp cao là nút PQ. Mô hình này được chỉ ra trên
hình 3.6(a). Một cách khác, sự kết hợp giữa SVC và máy biến áp có thể được
mô tả như hình3.6(b).

---------------------------------------------------- 48 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

k High voltage bus (PQ)

XSL

k High voltage bus (PQ) Vref Auxiliary bus (PV)


XT-SL XT

Vref Auxiliary bus (PV) Low voltage bus


(PV with remote control)

(a) (b)
Hình 3.6 Mô hình thông dụng của SVC trong tính toán chế độ xác lập
(a) Mô hình độ dốc kết hợp ; (b) Mô hình độ dốc và máy biến áp riêng

Cách mô phỏng SVC như vậy hoàn toàn có thể chấp nhận được, nhưng nó sẽ
không có ý nghĩa khi SVC hoạt động ngoài giá trị giới hạn. Trong những
trường hợp như vậy, cần thiết phải mô phỏng SVC như một điện dẫn phản
kháng xác định :
Qlim
BSVC = − 2
(3.21)
VSVC

trong đó VSVC là điện áp tự do mới do giới hạn công suất phản kháng Qlim bị
vượt quá.
Như vậy, mô hình kết hợp máy bù và điện dẫn phản kháng, cùng với
việc mô tả SVC là một điện dẫn phản kháng xác định khi làm việc ở ngoài
biên giới hạn sẽ cho kết quả tương đối chính xác. Tuy nhiên, trở ngại ở đây là
số nút được sử dụng trong hai mô hình này là khác nhau. Để mô tả cùng một
thiết bị SVC, mô hình máy bù sử dụng 2 hoặc 3 nút trong khi mô hình điện
dẫn phản kháng xác định chỉ dùng có 1 nút. Trong phương pháp giải Newton
– Raphson thì sự khác nhau về số bus như vậy sẽ dẫn tới việc phải sắp sếp lại
trật tự ma trận Jacobi và thay đổi kích thước của ma trận này trong các bước

---------------------------------------------------- 49 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

lặp. Mặt khác, sau mỗi bước lặp cần thiết phải kiểm tra lại để khẳng định rằng
SVC đang hoạt động trong giới hạn cho phép hay đã vượt quá giới hạn.
Phải chú ý rằng, khi hoạt động ở ngoài giới hạn thiết kế thì SVC phải
được mô tả như một giá trị điện dẫn phản kháng B chứ không phải là một
máy bù đang phát công suất phản kháng Qlim. Nếu bỏ qua điều này sẽ dẫn tới
một kết quả không chính xác. Nguyên nhân là tổng công suất phản kháng
được bơm vào lưới của SVC là tích của điện dẫn phản kháng xác định Bfix và
biên độ điện áp nút Vk. Vì Vk phụ thuộc vào các điều kiện vận hành hệ thống,
nên tổng công suất phản kháng được bơm vào lưới bởi mô hình điện dẫn phản
kháng xác định sẽ khác công suất phản kháng bơm vào lưới bởi mô hình máy
bù: Qlim ≠ - Bfix.Vk2 (3.22)

Generator model
112
110 Susceptance model
Reactive power (MVAr)

108
106
104
102
100
98
96
94
92
90

0.95 0.96 0.97 0.98 0.99 1.00 1.01 1.02 1.03 1.04 1.05

Voltage magnitude (p.u)

Hình 3.7 So sánh giữa công suất phản kháng phát ra bởi mô hình máy bù và
mô hình điện dẫn phản kháng.

---------------------------------------------------- 50 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

3.3.2 Mô hình điện dẫn phản kháng biến thiên


Trong thực tế SVC có thể được xem như một trở kháng có thể điều
khiển được với các giới hạn về góc dẫn hoặc các giới hạn về trở kháng. Mạch
tương đương như hình 3.8 được sử dụng để đưa ra các phương trình công suất
phi tuyến của SVC và các phương trình tuyến tính hoá được yêu cầu bởi
phương pháp Newton.

Vk
ISVC

BSVC

Hình 3.8 Độ cảm ứng song song biến thiên


Theo hình 3.8, dòng điện tạo ra bởi SVC là :
ISVC = - jBSVCVk (3.23)
và công suất phản kháng được phát ra bởi SVC (cũng chính là công suất phản
kháng bơm vào nút k) là :
QSVC = Qk = - Vk2.BSVC (3.24)
Phương trình được tuyến tính hoá được đưa ra bởi hệ (3.25), trong đó
điện dẫn phản kháng tương đương BSVC được lấy làm biến trạng thái :
(i ) (i ) (i )
⎡ ΔPk ⎤ ⎡0 0 ⎤ ⎡ Δδ k ⎤
⎢ ΔQ ⎥ =⎢ ⎥ .⎢ ⎥ (3.25)
⎣ k⎦ ⎣0 Qk ⎦ ⎣ ΔBSVC / BSVC ⎦

---------------------------------------------------- 51 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Ở cuối mỗi bước lặp thứ (i) , giá trị điện dẫn phản kháng biến thiên
BSVC được cập nhật theo công thức:
B

(i )
⎛ ΔB ⎞
B (i )
SVC =B ( i −1)
SVC
( i −1)
+ ⎜ SVC ⎟ .BSVC (3.26)
⎝ BSVC ⎠

Sự thay đổi điện dẫn phản kháng của SVC là cần thiết để duy trì biên
độ điện áp nút ở giá trị mong muốn. Khi đã xác định được dung lượng bù của
SVC, khi đó sẽ tính toán được góc dẫn của thyristor. Tuy nhiên cần thiết phải
thực hiện thêm một quá trình lặp để giải vì điện dẫn phản kháng BSVC là một
hàm phi tuyến của góc dẫn thyristor.

3.3.3 Mô hình góc dẫn


Một mô hình khác của SVC tránh khỏi quá trình lặp thêm như trình bày
ở trên là sử dụng góc dẫn α của TCR (Thyristor controlled Reactor) như là
một biến trạng thái trong các công thức tính chế độ xác lập. Góc dẫn này
được kí hiệu là αSVC.
Độ cảm ứng thứ tự thuận của SVC được đưa ra bởi phương trình :
−Vk2 ⎧ XC ⎫
Qk = ⎨XL − [2(π -α SVC ) + sin(2α SVC )]⎬ (3.27)
Xc XL ⎩ π ⎭

Phương trình tuyến tính hoá tương ứng là :


(i )
(i ) ⎡0 0 ⎤ (i )
⎡ ΔPk ⎤ ⎢ ⎥ ⎡ Δδ k ⎤
⎢ ΔQ ⎥ =⎢ 2Vk2
. (3.28)
⎣ k⎦ 0 [cos(2α SVC ) − 1]⎥ ⎣⎢ Δα SVC ⎦⎥
⎢⎣ π X L ⎥⎦

Ở cuối mỗi bước lặp thứ (i), biến góc dẫn αSVC được cập nhật theo :
α SVC
(i )
= α SVC
( i −1)
+ Δα SVC
(i )
(3.29)

---------------------------------------------------- 52 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

3.3.4 Mô hình góc dẫn kết hợp với máy biến áp


Mô hình góc dẫn của SVC được phát triển trong phần này bao hàm cả
một máy biến áp giảm áp. Cả hai thành phần được hợp thành một mô hình
duy nhất cho phép điều khiển trực tiếp biên độ điện áp của nút điện áp cao,
nhằm duy trì các đặc tính hội tụ bậc 4 của phương pháp Newton – Raphson.
Tổng dẫn của mô hình SVC – máy biến áp kết hợp YT-SVC được nhìn từ
phía điện áp cao của máy biến áp gồm tổng dẫn máy biến áp YT nối tiếp với
tổng dẫn YSVC của SVC.

k High voltage bus (PV) k


ISVC
ZT = RT + XT
YT-SVC

jX SVC
XC
XL

Hình 3.9 Mô hình SVC – máy biến áp kết hợp


Chú ý rằng YT-SVC là hàm của góc dẫn SVC :
YT YSVC
YT − SVC (α SVC ) = (3.30)
YT + YSVC

cũng có thể viết như sau :


YT – SVC = GT – SVC + j.BT – SVC B (3.31)

---------------------------------------------------- 53 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

trong đó :
RT
G T-SVC = (3.32)
R + X E2q
2
T

X Eq
BT − SVC = − (3.33)
RT2 + X E2q

X Eq = X T + X SVC (3.34)
X C . X TCR
X SVC = (3.35)
X C + X TCR

π XL
X TCR = (3.36)
2(π − α SVC ) + sin(2α SVC )

Phương trình tuyến tính hoá tương ứng là :


(i )
⎡ 2 ∂GT − SVC ⎤

⎡ ΔPk ⎤
(i ) ⎢0 Vk ∂α ⎥ ⎡ Δδ ⎤ ( i )
⎢ ΔQ ⎥ = ⎢ SVC
⎥ .⎢ k
⎥ (3.37)
⎣ k⎦ ⎢
0 −V 2 ∂BT − SVC ⎥ ⎣ Δα SVC ⎦
⎢ k
∂α SVC ⎥⎦

trong đó :
∂GT − SVC R ∂D
= − T2 . (3.38)
∂α SVC D ∂α SVC

∂BT − SVC 1 ⎡ ∂X ∂D ⎤
= 2 . ⎢ − D SVC + X Eq ⎥ (3.39)
∂α SVC D ⎣ ∂α SVC ∂α SVC ⎦

∂D ∂X SVC
= 2 X Eq . (3.40)
∂α SVC ∂α SVC

∂X SVC 2 X SVC
2
= (1 − cos2α SVC ) (3.41)
∂α SVC π XL

D = RT2 + X Eq
2
(3.42)

Ở cuối mỗi bước lặp thứ (i), góc dẫn αSVC được cập nhật theo :
α SVC
(i )
= α SVC
( i −1)
+ Δα SVC
(i )
(3.43)

---------------------------------------------------- 54 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

3.3.5 Điều khiển biên độ điện áp nút dùng SVC.


Các nút có SVC là các nút được điều khiển điện áp, trong đó biên độ
điện áp, P và Q đã xác định, góc dẫn αSVC hoặc điện dẫn phản kháng tương
đương BSVC của SVC được chọn làm các biến trạng thái. Nút này được định
nghĩa là nút PV. Nếu αSVC hoặc BSVC nằm trong giới hạn cho phép thì biên độ
điện áp được duy trì ở giá trị mong muốn và nút được duy trì là nút PV. Tuy
nhiên, trong trường hợp vi phạm giới hạn thì các biến trạng thái αSVC hoặc
BSVC là cố định ở giá trị bị vi phạm và nút trở thành nút PQ. Điều này luôn
B

đúng trong trường hợp không còn bất cứ thiết bị điều khiển nào khác có thể
cung cấp phương thức điều khiển công suất phản kháng ở nút này.
Trên đây là những trình bày chi tiết về các mô hình của thiết bị SVC
trong tính toán chế độ xác lập của hệ thống điện. Trong chương tiếp theo, ta
sẽ đi thực hiện viết code chương trình cụ thể. Chương trình sẽ sử dụng mô
hình điện dẫn phản kháng biến thiên của SVC để thực hiện. Có thể đưa ra đây
2 lý do để thực hiện chương trình với mô hình này :
+ Tính đơn giản của chương trình.
+ Thực tế, các nhà sản xuất cung cấp các thiết bị SVC với nhiều cấu
trúc khác nhau, không chỉ đơn giản là sự kết hợp song song giữa một nhánh
tụ điện và một nhánh TCR. Vì vậy việc xác định góc dẫn αSVC trong các cấu
trúc SVC khác nhau là khác nhau. Tuy nhiên, các mô hình trong phần 3.3.3 và
3.3.4 sẽ là các mô hình cơ sở để có thể thực hiện các mô hình khác nhằm tính
toán cụ thể góc dẫn trong trường hợp biết được cấu trúc chi tiết của thiết bị
SVC.

---------------------------------------------------- 55 ----------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

CHƯƠNG 4
TÍNH TOÁN CĐXL CỦA HỆ THỐNG ĐIỆN
BẰNG PHƯƠNG PHÁP G - S VÀ N – R CÓ XÉT TỚI THIẾT BỊ SVC

4.1 XÂY DỰNG SƠ ĐỒ KHỐI VÀ CODE CHƯƠNG TRÌNH.


4.1.2 Thuật toán Gauss – Seidel

Start

Nhập Y,U(0),δ(0),P,Q

k=0

i=1

i = UV Yes i=i+1

No

i = PV Yes Ui(k) = |Ui|.∠δ(k)

n
No Qi( k ) =| Ui | ∑ yijU (j k ) sin(δ i( k ) − δ (j k ) − θij )
j =1

Qi(k)<=Qimax Yes Qi(k)>=Qimin

Yes
No No
Qi(k) = Qimax Qi(k) = Qimin

---------------------------------------------------- 56 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

1 Pi − jQi i n
U i( k +1) =
Yii
[
* (k )
− ∑
j =1
Yij .U ( k +1)
j − ∑
j =i +1
Yij .U (j k ) ]
Ui

No
i=n

Yes

No
k=k+1 Sai số <=
epsilon

Yes

Tính toán các thông số chế độ khác

Stop

Trong sơ đồ khối này, điểm cần chú ý chính là bước hiệu chỉnh cho
nút PV, nếu giá trị Qi tại bước lặp thứ k nào đó của nút PV vi phạm Qimax
hoặc Qimin thì cài đặt Qi bằng ngay giá trị vi phạm đó và chuyển nút PV
thành nút PQ.
Thêm nữa, để tránh trường hợp bài toán không hội tụ, vòng lặp thứ 2
bên ngoài sẽ được cài thêm một giá trị là số vòng lặp tới hạn Kmax. Trong
chương trình, giá trị này là 2000.
So tính chất đặc thù là tốc độ hội tụ chậm của phương pháp Gauss _
Seidel nên chúng ta chỉ bắt đầu xét tới việc hiệu chỉnh nút PV sau một số
vòng lặp đầu tiên để đảm bảo tính chính xác của kết quả. Trong chương
trình, giá trị này là sau 60 bước đầu tiên. Tuy nhiên, giá trị này hoàn toàn có
thể thay đổi cho mỗi bài toán tùy thuộc vào khoảng cách từ giá trị lựa chọn
đầu tiên tới giá trị nghiệm hoặc tuỳ thuộc vào độ lớn của bài toán.

---------------------------------------------------- 57 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Nhập dữ liệu:
Dữ liệu được nhập vào dưới dạng file *.txt gồm 5 bản ghi.
™ Bản ghi thứ nhất: dữ liệu về nút (Bus data)

Name : tên nút


Bustype : các loại nút
+ UV : nút cân bằng
+ PV : nút giữ điện áp
+ PQ : nút tải
Pf : Công suất tác dụng phát ra của máy phát(p.u)
Qf : Công suất phản kháng phát ra của máy phát(p.u)
Qmin : giới hạn dưới của công suất phản kháng (p.u)
Qmax : giới hạn trên của công suất phản kháng(p.u)
Pt : Công suất tác dụng của phụ tải(p.u)
Qt : Công suất phản kháng của phụ tải(p.u)
U : điện áp mong muốn của các nút(p.u)

---------------------------------------------------- 58 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

™ Bản ghi thứ hai :dữ liệu về đường dây (line data)

Frombus : tên nút đi


Tobus : tên nút đến
R : Điện trở đường dây (p.u)
X : Điện kháng đường dây (p.u)
Y/2 : tổng dẫn song song 2 đầu đường dây(p.u).

™ Bản ghi thứ ba : dữ liệu về máy biến áp 2 dây quấn.

Frombus : tên nút đi


Tobus : tên nút đến
R : Điện trở mba (p.u)

---------------------------------------------------- 59 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

X : Điện kháng mba (p.u)


G0 : tổn thất sắt(p.u)
B0 : tổn thất từ hoá(p.u)
T : module của tỉ số máy biến áp.
PhiT : góc của tỉ số máy biến áp .

™ Bản ghi thứ tư : dữ liệu về máy biến áp 3 dây quấn.

Frombus : tên nút phía cao áp


Tobus1 : tên nút phía trung áp
Tobus2 : tên nút phía hạ áp
Rc, Xc, Rt, Xt, Rh, Xh : điện trở và điện kháng của sơ đồ thay thế hình sao
máy biến áp.(p.u)
G0 : tổn thất sắt(p.u)
B0 : tổn thất từ hoá(p.u)
T, phiT, U, PhiU, W, PhiW : module và góc của các tỉ số máy biến áp lý
tưởng đặt ở các phía.

™ Bản ghi thứ năm : dữ liệu về Yshunt tại các nút

---------------------------------------------------- 60 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Busname : tên nút


G : điện dẫn nhánh song song của nút (p.u)
B : điện dẫn phản kháng song song của nút (p.u)
+ B > 0 : điện dung
+ B < 0 : điện cảm

Cách nhập dữ liệu như vậy là tương đối thuận tiện và nó được dùng
chung cho cả 2 chương trình tính chế độ xác lập bằng Gauss _ Seidel và
Newton _ Raphson.

Một số code chính của chương trình

Chương trình chính


%MAIN_PROGRAM
%Bus la bien cau truc dung luu du lieu ve cac nut (name,type,Pf,Qf,Pt,Qt,Qmin,Qmax,U)
sau khi danh so lai
%(renumbered, nut UV duoc danh so 1, tiep theo la nut PV va nut PQ
%MATSIZE la kich thuoc ma tran Ybus
%S la bien chua cong suat bom vao nut S=Sf-St
%Sf chua cong suat phat cua moi may phat trong CDXL
%Ybus : ma tran tong tro nut
%Ngen : so luong may phat trong luoi
%V: vecto chua gia tri dien ap nut
function Main_program()
[sodoluoi,busdata,twtransdata,thwtransdata]= datainput();
[Bus,MATSIZE,S,PV]=Sget(busdata);
[Ybus,Lsend,Lrec,Bline,mainflag]=Ygen(sodoluoi,MATSIZE,Bus,twtransdata,…
thwtransdata);

---------------------------------------------------- 61 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
if mainflag == 1
return;
end
reply = input('Please setup the swing-bus angle :','s');
gocUV = str2num(reply);
Bus(1).U = Bus(1).U*exp(i*gocUV*pi/180);
reply=input('Does this network have SVC devices?(y/n,n = none)','s');
if strcmp(upper(reply),'Y') == 1
SVCdata = SVCdatainput();
V = SVCNewtonRaphson(Ybus,MATSIZE,Bus,S,SVCdata);
else
fprintf('The program will use following methods to caculate :\n');
fprintf('1: Conventional Gauss-Seidel method\n');
fprintf('2: G-S method incooperating with Compressed Sparse Row\n');
fprintf('3: G-S method incooperating with CSR and blocks G-S Algorithm\n');
fprintf('4: G-S method incooperating with CSR and Modified blocks G-S Algorithm\n');
fprintf('5: Conventional Newton-Raphson method\n');
fprintf('6: Newton-Raphson method incooperating with CSR and CGNE\n');
fprintf('7: Newton-Raphson method incooperating with CSR and CGNR\n');
reply=input('Which method do you want to use?','s');
if strcmp(reply,'1')==1
V = Gauss_Seidel(Ybus,MATSIZE,Bus,S);
elseif strcmp(reply,'2')==1
V=GS_CSR(Ybus,MATSIZE,Bus,S);
elseif strcmp(reply,'3')==1
V = GS_sparse(Ybus,MATSIZE,Bus,S);
elseif strcmp(reply,'4')==1
V = MGS_sparse(Ybus,MATSIZE,Bus,S,PV);
elseif strcmp(reply,'5')==1
V = NR(Ybus,MATSIZE,Bus,S,PV);

---------------------------------------------------- 62 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
elseif strcmp(reply,'6')==1
V = NR_sparse1(Ybus,MATSIZE,Bus,S,PV);
elseif strcmp(reply,'7')==1
V = NR_sparse2(Ybus,MATSIZE,Bus,S,PV);
end
end
PQflow(V,Bus,Ybus,MATSIZE,Lsend,Lrec,Bline);
end
%end of function GaussSeidel_main
Module tính toán chế độ xác lập bằng phương pháp Gauss – Seidel
function V=Gauss_Seidel(Ybus,MATSIZE,Bus,S)
fprintf('======================================================\n\n');
fprintf(' THE PROGRAM TO COMPUTE LOAD FLOW BY GAUSS-SEIDEL METHOD \n\n');
fprintf('======================================================\n\n');
V=ones(MATSIZE,1);
for ii=1:MATSIZE
if strcmp(upper(Bus(ii).type),'PV')==1
V(ii)=Bus(ii).U;
elseif strcmp(upper(Bus(ii).type),'UV')==1
V(ii)=Bus(ii).U;
end
end
epsilon=1e-5;
%Compute the nodal voltage value by Gauss-Seidel method
k=0;
markup=0;
for k = 1:2000
Vold=V;
for ii=1:MATSIZE
if ii==1
continue;
else

---------------------------------------------------- 63 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
if strcmp(upper(Bus(ii).type),'PV')==1
sum=0;
for jj=1:MATSIZE
sum=sum+Ybus(ii,jj)*V(jj);
end
Q=imag(V(ii)*conj(sum));
if (Q+Bus(ii).Qt>=Bus(ii).Qmax)&& (k>=60)
Q=Bus(ii).Qmax-Bus(ii).Qt;
fprintf('EXCEED THE UPPER LIMIT OF GENERATOR at node : %s\n',Bus(ii).name);
Bus(ii).type='PQ';
S(ii)=real(S(ii))+complex(0,Q);
elseif (Q+Bus(ii).Qt<=Bus(ii).Qmin)&&(k>=60)
Q=Bus(ii).Qmin-Bus(ii).Qt;
fprintf('EXCEED THE LOWER LIMIT OF GENERATOR at node : %s\n',Bus(ii).name);
Bus(ii).type='PQ';
S(ii)=real(S(ii))+complex(0,Q);
else
markup=1;
V_corr=Bus(ii).U;
S(ii)=real(S(ii))+complex(0,Q);
end
end
J=(S(ii)')/(V(ii)') ;
sum=0;
for jj=1:ii-1
sum=sum - Ybus(ii,jj)*V(jj);
end
for jj=ii+1:MATSIZE
sum=sum - Ybus(ii,jj)*V(jj);
end
V(ii)=(J+sum)/Ybus(ii,ii);

---------------------------------------------------- 64 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
%Hieu chinh dien ap nut PV ve gia tri dat truoc
if markup==1
V(ii)=V_corr*V(ii)/abs(V(ii));
markup=0;
end
end
end
if norm(V-Vold)<epsilon
break;
end
end
%end Gauss-Seidel
if k==2000
fprintf('THE PROBLEM DOES NOT CONVERGE!\n');
end
fprintf('Iteration number: %d\n',k);
VM=zeros(MATSIZE,1);
VA=zeros(MATSIZE,1);
for ii=1:MATSIZE
VM(ii)=abs(V(ii));
VA(ii)=angle(V(ii))*180/pi;
end
fprintf('=======================================================\n');
fprintf(' THE NODAL VOLTAGE\n');
fprintf('=======================================================\n');
fprintf('Busname Voltage Magnitude Voltage Angle(degree) \n');
fprintf('=======================================================\n');
for ii=1:MATSIZE
fprintf('%5s',Bus(ii).name);
fprintf(' %8.3f',VM(ii)),fprintf(' %8.2f\n',VA(ii));
end
fprintf('=====================================================\n\n');
end
%End of function Gauss_Seidel

---------------------------------------------------- 65 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

4.2.2 Thuật toán Newton – Raphson

Start

Nhập Ybus,U(0),δ(0)

k=0

i=1

Yes i = i+1
i = UV

No
No Yes
i = PV

n n
Pi ( k ) = U i( k ) ∑ yijU (j k ) cos(δ i(k) − δ (j k ) − θij ) Pi ( k ) = U i( k ) ∑ yijU (j k ) cos(δ i(k) − δ (j k ) − θ ij )
j =1 j =1
n

∑yU
n
Q i
(k )
=U i
(k )
ij
(k )
j sin(δ i
(k)
−δ (k )
j − θij ) Qi( k ) = U i( k ) ∑ yijU (j k )sin(δ i(k) − δ (j k ) − θ ij )
j =1
j =1

Yes Yes
Qi(k) > Qimax Qi(k) < Qimin

No No

Qi(k) = Qimax Qi(k) = Qimin

ΔPi(k) = Pi – Pi(k)
ΔQi(k) = Qi – Qi(k) ΔPi(k) = Pi – Pi(k)

---------------------------------------------------- 66 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

No
i=i+1 i=n

Yes

ΔP < ε Yes
ΔQ < ε

Tính toán các thông số chế độ


No

⎡ J1( k ) J 2( k ) ⎤
⎢ (k ) ⎥ Stop
⎣ J3 J 4( k ) ⎦

⎡ Δδ ( k ) ⎤ ⎡ J1( k ) J 2( k ) ⎤ ⎡ ΔP ( k ) ⎤
⎢ (k ) ⎥
= ⎢ (k ) ⎥.⎢ ⎥
⎣ ΔU ⎦ ⎣ J 3 J 4( k ) ⎦ ⎣ ΔQ ( k ) ⎦

δ ( k +1) = δ ( k ) + Δδ ( k )
U ( k +1) = U ( k ) + ΔU ( k )

k=k+1

Điểm cần chú ý trong thuật toán này đó là ảnh hưởng của các nút PV
tới ma trận Jacobi, giả sử hệ thống có m nút PV. Khi đó trong ma trận Jacobi
∂P ∂Q
sẽ có m cột bằng 0 do = 0; = 0 với i là nút PV. Mặt khác sẽ có m
∂U i ∂U i

phương trình với vế phải là ΔQi(k) không được xét tới hay nói cách khác là
không sử dụng tới m biến ΔUi(k). Như vậy, việc giải hệ tuyến tính có ma trận hệ
số Jacobi thực chất là đi giải hệ 2(n-1) – m phương trình và 2(n-1) – m ẩn số.
Đối với các nút PV cần kiểm tra lại giá trị Qi(k) sau mỗi bước lặp, điều
này được thực hiện sau 3 bước lặp đầu tiên để đảm bảo hiệu chỉnh đúng khi

---------------------------------------------------- 67 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
đã có sự hội tụ nghiệm tương đối tốt. Khi bị vi phạm giới hạn Qimin và Qimax
thì Qi được đặt ngay bằng giá trị vi phạm và chuyển nút i thành nút PQ.
Tương nhự như phương pháp lặp Gauss – Seidel, để thoát khỏi vòng
lặp khi bài toán không hội tụ, ta đặt trước số lần lặp giới hạn cho chương
trình. Ở đây, số lần lặp tối đa ta chọn là 15.
Do chương trình chính và phương pháp nhập dữ liệu đã được trình
bày ở phần 4.1.2 nên ở đây ta chỉ trình bày code của module tính toán chế độ
xác lập bằng phương pháp Newton – Raphson.

Module tính toán CĐXL bằng phương pháp Newton – Raphson

function V = NR(Ybus,MATSIZE,Bus,S,PV)
fprintf('\nTHE PROGRAM TO COMPUTE LOAD FLOW BY N-R METHOD!\n\n');
%==============================================================
VM = zeros(MATSIZE,1);%Bien do dien ap cua cac nut (Voltage Magnitude)
VA = zeros(MATSIZE,1);%Goc dien ap cua cac nut (Voltage Angle)
V = zeros(MATSIZE,1);%Dien ap phuc cua cac nut (Voltage)
for ii = 1:MATSIZE
VM(ii) = Bus(ii).U;
end
YR = zeros(MATSIZE,MATSIZE);%luu tru goc cua cac tong dan bus
YI = zeros(MATSIZE,MATSIZE);%luu tru do lon cua cac tong dan bus

for ii = 1:MATSIZE
for jj = 1:MATSIZE
YR(ii,jj) = real(Ybus(ii,jj));
YI(ii,jj) = imag(Ybus(ii,jj));
end
end

---------------------------------------------------- 68 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
solancong = zeros(MATSIZE,1);
solantru = zeros(MATSIZE,1);
Scal = zeros(MATSIZE,1);
Pcal = zeros(MATSIZE,1);
Qcal = zeros(MATSIZE,1);
deltaP = zeros(MATSIZE-1,1);
deltaQ = zeros(MATSIZE-1,1);
J1 = zeros(MATSIZE-1,MATSIZE-1);
J2 = zeros(MATSIZE-1,MATSIZE-1);
J3 = zeros(MATSIZE-1,MATSIZE-1);
J4 = zeros(MATSIZE-1,MATSIZE-1);
% Main program
for kk = 1:15
for ii = 1:MATSIZE
V(ii) = VM(ii)*exp(i*VA(ii));
end
% Tinh cong suat cac nut
for ii = 2:MATSIZE
sum = 0;
for jj = 1:MATSIZE
sum = sum + conj(Ybus(ii,jj))*conj(V(jj));
end
Scal(ii) = V(ii)*sum;
end
for ii = 2:MATSIZE
Pcal(ii) = real(Scal(ii));
Qcal(ii) = imag(Scal(ii));
end
% Xet cong suat phan khang cua nut PV
for ii = 2:MATSIZE
if PV(ii) == 1
if Qcal(ii) <= (Bus(ii).Qmax - Bus(ii).Qt)
if Qcal(ii) < (Bus(ii).Qmin - Bus(ii).Qt)
VM(ii) = VM(ii) + 0.0000001;
solancong(ii) = solancong(ii) + 1;

---------------------------------------------------- 69 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
if solancong(ii) == 3
fprintf('EXCEED THE LOWER LIMIT OF COMPENSATOR at node : %s\n',Bus(ii).name);
Bus(ii).type = 'PQ';
PV(ii) = 0;
S(ii) = real(S(ii)) + i*Bus(ii).Qmin-i*Bus(ii).Qt;
end
end
else
VM(ii) = VM(ii) - 0.0000001;
solantru(ii) = solantru(ii) + 1;
if solantru(ii) == 3
fprintf('EXCEED THE UPPER LIMIT OF COMPENSATOR at node : %s\n',Bus(ii).name);
Bus(ii).type = 'PQ';
PV(ii) = 0;
S(ii) = real(S(ii)) + i*Bus(ii).Qmax-i*Bus(ii).Qt;
end
end
end
end
% So sanh do lech cong suat giua hai buoc lap
for ii = 2:MATSIZE
deltaP(ii-1) = real(S(ii)) - Pcal(ii);
if PV(ii) == 0
deltaQ(ii-1) = imag(S(ii)) - Qcal(ii);
end
end
if norm(deltaP)< 1.e-5 && norm(deltaQ) < 1.e-5
break;
end

---------------------------------------------------- 70 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
% Thanh lap ma tran Jacobi
% Khoi J1
for ii = 2:MATSIZE
for jj = 2:MATSIZE
if jj == ii
J1(ii-1,ii-1) = -Qcal(ii) - VM(ii)^2*YI(ii,ii);
else
J1(ii-1,jj-1)=VM(ii)*VM(jj)*(YR(ii,jj)*sin(VA(ii)-VA(jj))-YI(ii,jj)*cos(VA(ii)-VA(jj)));
end
end
end
% Khoi J3
for ii = 2:MATSIZE
for jj = 2:MATSIZE
if jj == ii
J3(ii-1,ii-1) = Pcal(ii) - VM(ii)^2*YR(ii,ii);
else
J3(ii-1,jj-1)=-VM(ii)*VM(jj)*(YR(ii,jj)*cos(VA(ii)-VA(jj))+YI(ii,jj)*sin(VA(ii)-VA(jj)));
end
end
end
% Khoi J2
for ii = 2:MATSIZE
for jj = 2:MATSIZE
if PV(jj) == 1
J2(ii-1,jj-1) = 0;
else
if jj == ii
J2(ii-1,ii-1) = Pcal(ii)/VM(ii) + VM(ii)*YR(ii,ii);
else
J2(ii-1,jj-1)=VM(ii)*(YR(ii,jj)*cos(VA(ii)-VA(jj))+YI(ii,jj)*sin(VA(ii)-VA(jj)));

---------------------------------------------------- 71 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
end
end
end
end
% Khoi J4
for ii = 2:MATSIZE
for jj = 2:MATSIZE
if PV(jj) == 1
J4(ii-1,jj-1) = 0;
else
if jj == ii
J4(ii-1,ii-1) = Qcal(ii)/VM(ii) - VM(ii)*YI(ii,ii);
else
J4(ii-1,jj-1)=VM(ii)*(YR(ii,jj)*sin(VA(ii)-VA(jj))-YI(ii,jj)*cos(VA(ii)-VA(jj)));
end
end
end
end
% Ma tran Jacobi
J = [J1 J2;J3 J4];
%Thanh lap vector chenh lech cong suat
delta = [deltaP;deltaQ];
% Rut gon ma tran Jacobi va vector chenh lech cong suat
zz = 0;
for ii = 2:MATSIZE
if PV(ii) == 1
J(MATSIZE-1+ii-1-zz,:) = [];
J(:,MATSIZE-1+ii-1-zz) = [];
delta(MATSIZE-1+ii-1-zz,:) = [];
zz = zz+1;
end
end
[nn,mm] = size(J);

---------------------------------------------------- 72 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
% Giai tim gia tri cac do lech ve goc va bien do
Result = GE(J,nn,delta); % DIEM QUAN TRONG NHAT
% Hieu chinh gia tri cua goc va bien do cac nut
for ii = 2:MATSIZE
VA(ii) = VA(ii) + Result(ii-1);
end
mm = MATSIZE;
for ii = 2:MATSIZE
if PV(ii) == 0;
VM(ii) = VM(ii) + Result(mm);
mm = mm + 1;
end
end
end
% spy(J)
% End of main program
% Hien thi ket qua
fprintf('Iteration number: %d\n',kk);
for ii=1:MATSIZE
VM(ii)=abs(V(ii));
VA(ii)=angle(V(ii))*180/pi;
end
fprintf('=======================================================\n');
fprintf(' THE NODAL VOLTAGE\n');
fprintf('=======================================================\n');
fprintf('Busname Voltage Magnitude Voltage Angle(degree) \n');
fprintf('=======================================================\n');
for ii=1:MATSIZE
fprintf('%5s',Bus(ii).name);
fprintf(' %8.3f',VM(ii)),fprintf(' %8.2f\n',VA(ii));
end
fprintf('======================================================\n\n');
%==============================================================
end
% end of function NR

---------------------------------------------------- 73 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

4.1.3 Thuật toán Newton – Raphson tính toán CĐXL của hệ thống điện
có thiết bị SVC.
4.1.3.1 Xây dựng thuật toán
Do thuật toán, sơ đồ khối và code chương trình tính toán CĐXL của
HTĐ bằng phương pháp Newton – Raphson đã được trình bày ở phần truớc
nên phần này sẽ không nhắc lại chi tiết các vấn đề đó mà chỉ đi sâu vào xem
xét sự thay đổi trong cấu trúc chương trình khi xét tới sự xuất hiện của thiết
bị SVC trong hệ thống.
Trước hết, do ta sử dụng mô hình điện dẫn phản kháng song song biến
thiên của thiết bị SVC là mô hình thực hiện nên phương trình tuyến tính hoá
đi kèm với nó là :
(i ) (i ) (i )
⎡ ΔPk ⎤ ⎡0 0 ⎤ ⎡ Δδ k ⎤
⎢ ΔQ ⎥ =⎢ ⎥ .⎢ ⎥
⎣ k⎦ ⎣0 Qk ⎦ ⎣ ΔBSVC / BSVC ⎦

Có thể dễ dàng nhận thấy rằng trong ma trận hệ số 2×2 ở vế phải có


tới 3 vị trí bằng 0, chỉ có một vị trí có giá trị là Qk. Thêm nữa, nút có thiết bị
SVC được coi là nút PV. Một cách thông thường nhất khi nút k là nút PV thì
∂Pk ∂Q ∂Pk ∂Qk
trong ma trận Jacobi các vị trí = 0; k = 0 . Hai vị trí còn lại là ;
∂U k ∂U k ∂δ k ∂δ k

∂Pk
thì chỉ có một vị trí có ý nghĩa là do vị trí còn lại nằm trong phương
∂δ k

trình có vế phải là ∆Qk nên không được xét tới. Nói cách khác, biến trạng
thái độ lệch biên độ ∆Uk sẽ không được sử dụng tới. Đi sâu khai thác tính
chất này, ta có thể thay thế một cách hợp lý biến trạng thái ∆BSVC/BSVC vào B

∂Qk
vị trí của ∆Uk cùng với giá trị hệ số Qk vào vị trí của . Để làm rõ hơn
∂U k

điều này ta đi biến đổi phần tử sau :


∂Q ∂Q ∂B ∂Q ∂Q ΔB ΔB
ΔU = . .ΔU = .ΔB = .B. = Q.
∂U ∂B ∂U ∂B ∂B B B

---------------------------------------------------- 74 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Xét một ví dụ có 4 nút. với nút 1 là nút cân bằng công suất, nút 4 là
nút PV, khi đó ta có hệ phương trình tuyến tính hoá là :
⎡ ∂P2 ∂P2 ∂P2 ∂P2 ∂P2 ⎤
⎢ ∂δ 0 ⎥
∂δ 3 ∂δ 4 ∂U 2 ∂U 3
⎢ 2 ⎥
⎢ ∂P3 ∂P3 ∂P3 ∂P3 ∂P3 ⎥
⎢ ∂δ 0 ⎥
∂δ 3 ∂δ 4 ∂U 2 ∂U 3 Δδ ΔP
⎢ 2 ⎥ ⎡⎢ 2 ⎤⎥ ⎡⎢ 2 ⎤⎥
⎢ ∂P4 ∂P4 ∂P4 ∂P4 ∂P4 ⎥ Δδ ΔP
⎢ 0 ⎥ ⎢ 3⎥ ⎢ 3⎥
⎢ ∂δ 2 ∂δ 3 ∂δ 3 ∂U 2 ∂U 3 ⎥ . ⎢⎢ Δδ 4 ⎥⎥ = ⎢⎢ ΔP4 ⎥⎥
⎢ ∂Q2 ∂Q2 ∂Q2 ∂Q2 ∂Q2 ⎥ ΔU ΔQ
⎢ 0 ⎥ ⎢ 2⎥ ⎢ 2⎥
⎢ ∂δ 2 ∂δ 3 ∂δ 4 ∂U 2 ∂U 3 ⎥ ⎢⎢ ΔU 3 ⎥⎥ ⎢⎢ ΔQ3 ⎥⎥
⎢ ∂Q3 ∂Q3 ∂Q3 ∂Q3 ∂Q3 ⎥ ⎢ ΔU ⎥ ⎢ ΔQ ⎥
⎢ 0 ⎥ ⎣ 4⎦ ⎣ 4⎦
⎢ ∂δ 2 ∂δ 3 ∂δ 4 ∂U 2 ∂U 3 ⎥
⎢ ∂Q ∂Q4 ∂Q4 ∂Q4 ∂Q4 ∂Q4 ⎥
⎢ 4 ⎥
⎣⎢ ∂δ 2 ∂δ 3 ∂δ 4 ∂U 2 ∂U 3 ∂U 4 ⎥⎦

Thực hiện phép đổi biến ta có :


∂Q4 ∂Q ∂B ∂Q ∂Q ΔB ΔB
ΔU 4 = 4 . 4 .ΔU 4 = 4 .ΔB4 = 4 .B4 . 4 = Q4 . 4
∂U 4 ∂B4 ∂U 4 ∂B4 ∂B4 B4 B4

Hệ phương trình bây giờ có dạng :


⎡ ∂P2 ∂P2 ∂P2 ∂P2 ∂P2 ⎤
⎢ ∂δ 0⎥
∂δ 3 ∂δ 4 ∂U 2 ∂U 3
⎢ 2 ⎥
⎢ ∂P3 ∂P3 ∂P3 ∂P3 ∂P3 ⎥
⎢ ∂δ 0 ⎥ ⎡ Δδ 2 ⎤
∂δ 3 ∂δ 4 ∂U 2 ∂U 3 ΔP
⎢ 2 ⎥ ⎢ Δδ ⎥ ⎡⎢ 2 ⎤⎥
⎢ ∂P4 ∂P4 ∂P4 ∂P4 ∂P4 ⎥ ⎢ 3 ⎥ ΔP
⎢ 0 ⎥ ⎢ Δδ 4 ⎥ ⎢ 3 ⎥
⎢ ∂δ 2 ∂δ 3 ∂δ 3 ∂U 2 ∂U 3 ⎥ . ⎢ ΔU ⎥ = ⎢⎢ ΔP4 ⎥⎥
⎢ ∂Q2 ∂Q2 ∂Q2 ∂Q2 ∂Q2 ⎥ ⎢ 2 ⎥ ΔQ
⎢ 0 ⎥ ⎢ ΔU 3 ⎥ ⎢ 2 ⎥
⎢ ∂δ 2 ∂δ 3 ∂δ 4 ∂U 2 ∂U 3 ⎥ ⎢ ⎥ ⎢ ΔQ3 ⎥
⎢ ∂Q3 ∂Q3 ∂Q3 ∂Q3 ∂Q3 ⎥ ⎢ 4 ⎥ ⎢⎢ ΔQ ⎥⎥
ΔB
⎢ 0 ⎥ ⎢⎣ B4 ⎥⎦ ⎣ 4 ⎦
⎢ ∂δ 2 ∂δ 3 ∂δ 4 ∂U 2 ∂U 3 ⎥
⎢ ∂Q ∂Q4 ∂Q4 ∂Q4 ∂Q4 ⎥
⎢ 4 Q4 ⎥
⎢⎣ ∂δ 2 ∂δ 3 ∂δ 4 ∂U 2 ∂U 3 ⎥⎦

---------------------------------------------------- 75 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Cũng cần phải nhắc lại rằng giá trị của Qk được tính bằng :
Qk(i) = - Vk2.BSVC(i)
Tại bước lặp thứ (i), giá trị của ∆Qk sẽ là :
∆Qk(i) = Q(i)k(tínhtoán) + Qk(i) = Q(i)k(tính toán) - Vk2.BSVC(i)
Ngoài ra, do tính chất đặc biệt của nút có chứa thiết bị SVC nên thay
vì đi so sánh giá trị Q(i)k(tínhtoán) với Qmin, Qmax và thực hiện hiệu chỉnh nút
PV, ta sẽ đi so sánh giá trị BSVC(i) với giá trị BHi, BLo được đưa vào từ dữ
liệu của SVC và hiệu chỉnh nút theo điều kiện đặt ra của các giá trị này.
Trên đây là những lập luận xây dựng code của chương trình, để kết thúc
phần này ta đi trình bày vấn đề vào dữ liệu SVC cho chương trình. Tương tự như
cách vào dữ liệu đã được trình bày ở chương 4, dữ liệu SVC sẽ được dọc vào
chương trình dưới dạng file *.txt. Các dữ liệu cần nhập lần lượt là : tên nút có thiết
bị SVC (SVCBus), giá trị B khởi đầu, giá trị nhỏ nhất BLo và giá trị lớn nhất BHi.

---------------------------------------------------- 76 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

4.1.3.2 Sơ đồ khối thuật toán.

No Yes
i = PV

Yes
No i = SVC

Pi(k),Qi(k) Pi(k),Qi(k) Pi(k)

ΔPi(k),ΔQi(k) So sánh Qi(k) với ΔPi(k)


Qimax và Qimin ΔQi(k) = Qi(k) – BSVC.Vi2

ΔPi(k)

No
i=n

Yes
Yes
ΔP,ΔQ<ε
Tính toán thông số chế độ
No

thành lập J

Stop
(k) (k)
Δδ , ΔU , ΔB/B

Hiệu chỉnh BSVC

δ ( k +1) = δ ( k ) + Δδ ( k )
U ( k +1) = U ( k ) + ΔU ( k )

k=k+1

---------------------------------------------------- 77 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Sơ đồ khối quá trình hiệu chỉnhB :

(ΔB/B)(k) > No (ΔB/B)(k) < -0,1/B(k) No


0,1/B(k)

Yes Yes
(k) (k) (k)
(ΔB/B) = 0,1/B (ΔB/B) = - 0,1/B(k)

B(k+1) = B(k) + (ΔB/B)(k).B(k)

B(k) < BHi Yes B(k) > BLo

Yes
No No

B(k) = BHi B(k) = BLo

---------------------------------------------------- 78 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

4.1.3.3 Module chương trình


function V = SVCNewtonRaphson(Ybus,MATSIZE,Bus,S,SVCdata)
% Doc du lieu tu SVCdata
SVCBus = zeros(MATSIZE,1);
B = zeros(MATSIZE,1);
BLo = zeros(MATSIZE,1);
BHi = zeros(MATSIZE,1);
in=fopen(SVCdata,'r');
if in==-1;
fprintf('Sorry ''%s'' NOT FOUND!!!\n',SVCdata);
fprintf('Please check the file address!');
return;
end
fgets(in);%Bo qua do'ng header
fgets(in);%Bo qua duong gach cham
while feof(in)==0
m=fscanf(in,'%s',1);
if strcmp(m,'')==1%kiem tra co phai da het du lieu nhung chua dat end of file
break;
end
for k=1:MATSIZE
if strcmp(Bus(k).name,m)==1
ii=Bus(k).number;
break;
end
end
SVCBus(ii) = 1;% The hien nut ii co thiet bi SVC
m = fscanf(in,'%lf',1);
B(ii) = m;%gia tri dau cua do cam ung
m = fscanf(in,'%lf',1);
BLo(ii) = m;%Gia tri min cua do cam ung
m = fscanf(in,'%lf',1);
BHi(ii) = m;%Gia tri max cua do cam ung
end
fclose(in);
% ket thuc doc du lieu tu SVCdata

---------------------------------------------------- 79 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
fprintf('THE PROGRAM TO COMPUTE LOAD FLOW BY N-R METHOD \n');
fprintf(' INCLUDING THE EXISTATION OF SVC DEVICES \n');
%==============================================================
VM = zeros(MATSIZE,1);%Bien do dien ap cua cac nut (Voltage Magnitude)
VA = zeros(MATSIZE,1);%Goc dien ap cua cac nut (Voltage Angle)
V = zeros(MATSIZE,1);%Dien ap phuc cua cac nut (Voltage)
for ii = 1:MATSIZE
VM(ii) = Bus(ii).U;
end
YR = zeros(MATSIZE,MATSIZE);%luu tru goc cua cac tong dan bus
YI = zeros(MATSIZE,MATSIZE);%luu tru do lon cua cac tong dan bus
for ii = 1:MATSIZE
for jj = 1:MATSIZE
YR(ii,jj) = real(Ybus(ii,jj));
YI(ii,jj) = imag(Ybus(ii,jj));
end
end
solancong = zeros(MATSIZE,1);
solantru = zeros(MATSIZE,1);
Scal = zeros(MATSIZE,1);
Pcal = zeros(MATSIZE,1);
Qcal = zeros(MATSIZE,1);
deltaP = zeros(MATSIZE-1,1);
deltaQ = zeros(MATSIZE-1,1);
J1 = zeros(MATSIZE-1,MATSIZE-1);
J2 = zeros(MATSIZE-1,MATSIZE-1);
J3 = zeros(MATSIZE-1,MATSIZE-1);
J4 = zeros(MATSIZE-1,MATSIZE-1);
deltaBpu = zeros(MATSIZE,1);

---------------------------------------------------- 80 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
% Chuong trinh chinh
for kk = 1:15
for ii = 1:MATSIZE
V(ii) = VM(ii)*exp(i*VA(ii));
end
% Tinh cong suat cac nut
for ii = 2:MATSIZE
sum = 0;
for jj = 1:MATSIZE
sum = sum + conj(Ybus(ii,jj))*conj(V(jj));
end
Scal(ii) = V(ii)*sum;
end
for ii = 2:MATSIZE
Pcal(ii) = real(Scal(ii));
Qcal(ii) = imag(Scal(ii));
end
% Xet cong suat phan khang cua nut PV khong co thiet bi SVC
for ii = 2:MATSIZE
if strcmp(upper(Bus(ii).type),'PV')==1 && SVCBus(ii) == 0
if Qcal(ii) <= (Bus(ii).Qmax-Bus(ii).Qt)
if Qcal(ii) < (Bus(ii).Qmin-Bus(ii).Qt)
VM(ii) = VM(ii) + 0.0000001;
solancong(ii) = solancong(ii) + 1;
if solancong(ii) == 10
fprintf('EXCEED THE LOWER LIMIT OF COMPENSATOR at node : %s\n',Bus(ii).name);
Bus(ii).type = 'PQ';
S(ii) = real(S(ii)) + i*Bus(ii).Qmin-i*Bus(ii).Qt;
end
end

---------------------------------------------------- 81 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
else
VM(ii) = VM(ii) - 0.0000001;
solantru(ii) = solantru(ii) + 1;
if solantru(ii) == 10
fprintf('EXCEED THE UPPER LIMIT OF COMPENSATOR at node : %s\n',Bus(ii).name);
Bus(ii).type = 'PQ';
S(ii) = real(S(ii)) + i*Bus(ii).Qmax-i*Bus(ii).Qt;
end
end
end
end
% Hieu chinh cong suat phan khang cua nut PV co thiet bi SVC
for ii = 2 :MATSIZE
if SVCBus(ii) == 1;
Qcal(ii) = Qcal(ii) - abs(V(ii))^2*B(ii);
end
end
% So sanh do lech cong suat giua hai buoc lap
for ii = 2:MATSIZE
deltaP(ii-1) = real(S(ii)) - Pcal(ii);
if strcmp(upper(Bus(ii).type),'PV')~=1 || SVCBus(ii) == 1
deltaQ(ii-1) = imag(S(ii)) - Qcal(ii);
end
end
if norm(deltaP)< 1.e-5 && norm(deltaQ) < 1.e-5
break;
end

---------------------------------------------------- 82 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
% Thanh lap ma tran Jacobi
% Khoi J1
for ii = 2:MATSIZE
for jj = 2:MATSIZE
if jj == ii
J1(ii-1,ii-1) = -Qcal(ii) - VM(ii)^2*YI(ii,ii);
else
J1(ii-1,jj-1) = VM(ii)*VM(jj)*(YR(ii,jj)*sin(VA(ii)-VA(jj))-YI(ii,jj)*cos(VA(ii)-VA(jj)));
end
end
end
% Khoi J3
for ii = 2:MATSIZE
for jj = 2:MATSIZE
if jj == ii
J3(ii-1,ii-1) = Pcal(ii) - VM(ii)^2*YR(ii,ii);
else
J3(ii-1,jj-1) = - VM(ii)*VM(jj)*(YR(ii,jj)*cos(VA(ii)-VA(jj))+YI(ii,jj)*sin(VA(ii)-VA(jj)));
end
end
end
% Khoi J2
for ii = 2:MATSIZE
for jj = 2:MATSIZE
if strcmp(upper(Bus(jj).type),'PV') == 1 && SVCBus(ii) == 0
J2(ii-1,jj-1) = 0;
else
if jj == ii
J2(ii-1,ii-1) = Pcal(ii)/VM(ii) + VM(ii)*YR(ii,ii);
else
J2(ii-1,jj-1) = VM(ii)*(YR(ii,jj)*cos(VA(ii)-VA(jj))+YI(ii,jj)*sin(VA(ii)-VA(jj)));

---------------------------------------------------- 83 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
end
end
end
end
% Khoi J4
for ii = 2:MATSIZE
for jj = 2:MATSIZE
if strcmp(upper(Bus(jj).type),'PV') == 1 && SVCBus(ii) == 0
J4(ii-1,jj-1) = 0;
else
if jj == ii
J4(ii-1,ii-1) = Qcal(ii)/VM(ii) - VM(ii)*YI(ii,ii);
else
J4(ii-1,jj-1) = VM(ii)*(YR(ii,jj)*sin(VA(ii)-VA(jj))-YI(ii,jj)*cos(VA(ii)-VA(jj)));
end
end
end
end
% Hieu chinh ma tran Jacobi boi cac nut co thiet bi SVC
for ii = 2:MATSIZE
if SVCBus(ii) == 1
J2(:,ii-1) = 0;
J4(:,ii-1) = 0;
% J3(ii-1,:) = 0;
%J4(ii-1,:) = 0;
J1(ii-1,ii-1) = J1(ii-1,ii-1) - VM(ii)^2*B(ii);
J4(ii-1,ii-1) = - VM(ii)^2*B(ii);
end
end

---------------------------------------------------- 84 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
% Ma tran Jacobi
J = [J1 J2;J3 J4];
%Thanh lap vector chenh lech cong suat
delta = [deltaP;deltaQ];
% Rut gon ma tran Jacobi va vector chenh lech cong suat
zz = 0;
for ii = 2:MATSIZE
if strcmp(upper(Bus(ii).type),'PV') == 1 && SVCBus(ii) == 0
J(MATSIZE-1+ii-1-zz,:) = [];
J(:,MATSIZE-1+ii-1-zz) = [];
delta(MATSIZE-1+ii-1-zz,:) = [];
zz = zz+1;
end
end
[nn,mm] = size(J);
% Giai tim gia tri cac do lech ve goc dien ap,bien do dien ap va do cam ung
Result = GE(J,nn,delta); % DIEM QUAN TRONG NHAT
% Hieu chinh gia tri cua goc va bien do dien ap cac nut, B cua SVC
for ii = 2:MATSIZE
VA(ii) = VA(ii) + Result(ii-1);
end
mm = MATSIZE;
for ii = 2:MATSIZE
if strcmp(upper(Bus(ii).type),'PV')~=1
VM(ii) = VM(ii) + Result(mm);
mm = mm + 1;
elseif SVCBus(ii) == 1
deltaBpu(ii) = Result(mm);
mm = mm + 1;
end
end

---------------------------------------------------- 85 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
% Hieu chinh gia tri do cam ung B cua thiet bi SVC
for ii = 2:MATSIZE
if SVCBus(ii) == 1
deltaBii = B(ii)*deltaBpu(ii);
if deltaBii > 0.1
deltaBpu(ii) = 0.1/B(ii);
elseif deltaBii < -0.1
deltaBpu(ii) = -0.1/B(ii);
end
B(ii) = B(ii) + B(ii)*deltaBpu(ii);
% So sanh voi thong so gioi han cua SVC
if B(ii) > BHi(ii)
B(ii) = BHi(ii);
elseif B(ii) < BLo(ii)
B(ii) = BLo(ii);
end
end
end
end
% Ket thuc chuong trinh chinh
% Hien thi ket qua
fprintf('Iteration number: %d\n',kk);
fprintf('The nodal voltage is:\n ');
for ii=1:MATSIZE
VM(ii)=abs(V(ii));
VA(ii)=angle(V(ii))*180/pi;
end
for ii=1:MATSIZE
fprintf('%10s =',Bus(ii).name);
fprintf(' %8.3f',VM(ii)),fprintf(' %8.3f\n',VA(ii));
end

---------------------------------------------------- 86 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
for ii = 2:MATSIZE
if SVCBus(ii) == 1
fprintf('The value of suscepstance of SVC at node %s',Bus(ii).name);
fprintf(' %8.4f\n',B(ii));
end
end
%==============================================================
end

Trên đây là toàn bộ phần lý luận và xây dựng code chương trình, phần
tiếp theo sau đây là các ví dụ minh hoạ chứng minh tính đúng đắn của
chương trình.

---------------------------------------------------- 87 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
4.2 VÍ DỤ MINH HỌA
Sẽ có 3 ví dụ để minh hoạ cho phần này, ví dụ đầu tiên là hệ thống 5
nút được cho bởi tài liệu tham khảo [1]. Hai ví dụ còn lại là hệ thống 30 bus
theo chuẩn test các chương trình của IEEE và vùng 2 của lưới điện miền
Trung lấy điện từ thanh cái 220 kV của trạm 500 kV Đà Nẵng.
4.2.1 Tính toán chế độ xác lập khi chưa có thiết bị SVC
Ví dụ 1 Hệ thống 5 bus

kết quả đưa ra theo tài liệu tham khảo này là :

---------------------------------------------------- 88 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Kết quả chạy chương trình cho như sau :
*Chương trình Gauss – Seidel:
============================================================================
THIS IS THE PROGRAM TO COMPUTE LOAD FLOW BY GAUSS-SEIDEL METHOD
============================================================================
Iteration number: 35
============================================================================
THE NODAL VOLTAGE
============================================================================
Busname Voltage Magnitude Voltage Angle(degree)
============================================================================
North 1.060 0.00
South 1.000 -2.06
Lake 0.987 -4.64
Main 0.984 -4.96
Elm 0.972 -5.76
============================================================================
THE EXACT POWER INJECTED INTO NETWORK
=======================================
Busname Pgen Qgen
=======================================
North +1.3109 +0.9082
South +0.4001 -0.6160
=======================================
======================THE LINE POWER FLOW =================================
FromBus ToBus Psend=====Qsend Prec=====Qrec Ploss=====Qloss
============================================================================
North South +0.893 +0.740 +0.868 +0.729 +0.025 +0.011
North Lake +0.418 +0.168 +0.403 +0.175 +0.015 -0.007
South Lake +0.245 -0.025 +0.241 +0.004 +0.004 -0.029
South Main +0.277 -0.017 +0.272 +0.008 +0.005 -0.026
South Elm +0.547 +0.056 +0.534 +0.048 +0.012 +0.007
Lake Main +0.194 +0.029 +0.193 +0.047 +0.000 -0.018
Main Elm +0.066 +0.005 +0.066 +0.052 +0.000 -0.047
============================================================================
The total of power loss on the lines: 0.0612 -0.1078

---------------------------------------------------- 89 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

*Chương trình Newton – Raphson:

THE PROGRAM TO COMPUTE LOAD FLOW BY NEWTON-RAPHSON METHOD!

Iteration number: 4
============================================================================
THE NODAL VOLTAGE
============================================================================
Busname Voltage Magnitude Voltage Angle(degree)
============================================================================
North 1.060 0.00
South 1.000 -2.06
Lake 0.987 -4.64
Main 0.984 -4.96
Elm 0.972 -5.76
============================================================================

THE EXACT POWER INJECTED INTO NETWORK


=======================================
Busname Pgen Qgen
=======================================
North +1.3112 +0.9082
South +0.4000 -0.6159
=======================================

====================== THE LINE POWER FLOW =================================


FromBus ToBus Psend=====Qsend Prec=====Qrec Ploss=====Qloss
============================================================================
North South +0.893 +0.740 +0.868 +0.729 +0.025 +0.011
North Lake +0.418 +0.168 +0.403 +0.175 +0.015 -0.007
South Lake +0.245 -0.025 +0.241 +0.004 +0.004 -0.029
South Main +0.277 -0.017 +0.273 +0.008 +0.005 -0.026
South Elm +0.547 +0.056 +0.534 +0.048 +0.012 +0.007
Lake Main +0.194 +0.029 +0.193 +0.047 +0.000 -0.018
Main Elm +0.066 +0.005 +0.066 +0.052 +0.000 -0.047
============================================================================
The total of power loss on the lines: 0.0612 -0.1078

Ví dụ 2
Hệ thống 30 bus ( IEEE test case)
Thông số chế độ do IEEE cung cấp cho dưới dạng file đã được lưu
trong đĩa CD chương trình đi kèm.

---------------------------------------------------- 90 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Sơ đồ lưới được cho như sau :
1 14

G
2

G 3

23
4 13
C
15
30

12 24
18
16

19

17 29
6 10
20 27
25
5

C 9 22
21
26 28
7
11
C

8
C

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


*Chương trình Gauss – Seidel:
============================================================================
THIS IS THE PROGRAM TO COMPUTE LOAD FLOW BY GAUSS-SEIDEL METHOD
============================================================================
Iteration number: 305
============================================================================
THE NODAL VOLTAGE
============================================================================
Busname Voltage Magnitude Voltage Angle(degree)
============================================================================
1 1.060 0.00
2 1.043 -5.50
3 1.022 -8.00
4 1.013 -9.66

---------------------------------------------------- 91 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
5 1.010 -14.38
6 1.012 -11.40
7 1.003 -13.15
8 1.010 -12.11
9 1.051 -14.43
10 1.044 -16.02
11 1.082 -14.43
12 1.057 -15.30
13 1.071 -15.30
14 1.042 -16.19
15 1.038 -16.27
16 1.045 -15.88
17 1.039 -16.18
18 1.028 -16.88
19 1.025 -17.05
20 1.029 -16.85
21 1.032 -16.46
22 1.033 -16.45
23 1.027 -16.66
24 1.022 -16.83
25 1.019 -16.42
26 1.001 -16.84
27 1.026 -15.91
28 1.011 -12.05
29 1.006 -17.13
30 0.994 -18.01
============================================================================
THE EXACT POWER INJECTED INTO NETWORK
=======================================
Busname Pgen Qgen
=======================================
1 +2.6094 -0.1701
2 +0.4000 +0.4881
5 +0.0000 +0.3597
8 +0.0000 +0.3082
11 +0.0000 +0.1612
13 +0.0000 +0.1043
=======================================

---------------------------------------------------- 92 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
*Chương trình Newton – Raphson.
THE PROGRAM TO COMPUTE LOAD FLOW BY NEWTON-RAPHSON METHOD!
Iteration number: 4
============================================================================
THE NODAL VOLTAGE
============================================================================
Busname Voltage Magnitude Voltage Angle(degree)
============================================================================
1 1.060 0.00
2 1.043 -5.50
3 1.022 -8.00
4 1.013 -9.66
5 1.010 -14.38
6 1.012 -11.40
7 1.003 -13.15
8 1.010 -12.12
9 1.051 -14.43
10 1.044 -16.02
11 1.082 -14.43
12 1.057 -15.30
13 1.071 -15.30
14 1.042 -16.19
15 1.038 -16.28
16 1.045 -15.88
17 1.039 -16.19
18 1.028 -16.88
19 1.025 -17.05
20 1.029 -16.85
21 1.032 -16.47
22 1.033 -16.45
23 1.027 -16.66
24 1.022 -16.83
25 1.019 -16.42
26 1.001 -16.84
27 1.026 -15.91
28 1.011 -12.06
29 1.006 -17.14
30 0.995 -18.01
============================================================================

---------------------------------------------------- 93 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
THE EXACT POWER INJECTED INTO NETWORK
=======================================
Busname Pgen Qgen
=======================================
1 +2.6100 -0.1702
2 +0.4000 +0.4882
5 -0.0000 +0.3597
8 +0.0000 +0.3083
11 -0.0000 +0.1612
13 -0.0000 +0.1042
=======================================

Ví dụ 3
Hệ thống lưới điện miền Trung (vùng 2) lấy điện từ thanh cái 220 kV của
trạm 500 kV Đà Nẵng.Các nút trong hệ thống được đánh số theo quy định
của trung tâm điều độ hệ thống điện quốc gia A0. Thanh cái 220 kV Đà
Nẵng mang số hiệu 82752.Thông số được cho trong chế độ cao điểm chiều.
Kết quả chạy chương trình :
THE PROGRAM TO COMPUTE LOAD FLOW BY NEWTON-RAPHSON METHOD!
Iteration number: 5
============================================================================
THE NODAL VOLTAGE
============================================================================
Busname Voltage Magnitude Voltage Angle(degree)
============================================================================
82752 1.054 9.55
80751 1.032 10.22
80754 1.083 9.79
80755 1.084 9.90
80811 1.018 4.36
80851 1.030 10.11
80854 1.073 9.03
80855 1.080 9.71
809MB 1.018 4.38
80904 1.036 0.70

---------------------------------------------------- 94 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
80905 0.994 1.81
80914 1.047 1.81
80915 1.002 2.57
80951 1.016 3.80
80954 1.061 2.92
80955 1.063 3.14
81101 1.033 10.28
81106 1.032 9.98
81107 1.033 10.25
81110 1.030 15.33
81120 1.030 15.33
81601 1.011 3.11
81604 0.904 -8.71
81605 1.016 3.09
81609 0.902 -3.57
81615 1.008 2.14
81625 0.925 -5.86
81651 1.030 3.53
81652 1.028 6.70
81653 1.092 4.73
81654 1.042 0.87
81655 0.987 0.55
81664 1.040 0.77
81665 0.988 0.77
81701 1.022 3.38
81704 1.151 0.62
81751 1.029 3.50
81755 1.066 1.85
8180B 1.060 4.80
81804 1.089 3.93
81805 1.039 3.99
8185B 1.034 3.61
81854 1.073 1.31
81855 1.076 1.78
81901 1.071 5.37
81904 1.071 5.01
81951 1.017 3.51

---------------------------------------------------- 95 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
81954 1.061 2.07
81955 1.064 2.44
82401 1.073 5.46
82404 1.073 5.25
82406 1.072 5.43
82414 1.107 5.21
82415 1.105 5.04
82421 1.073 5.46
82424 1.055 2.92
82434 1.057 2.85
82451 1.074 5.56
82452 1.049 9.09
82453 1.089 7.73
82454 1.182 1.38
82464 1.199 4.43
825MB 1.065 5.09
82504 1.044 1.00
82505 1.007 1.05
82506 1.076 5.62
82507 1.071 5.39
82514 1.053 3.05
82515 1.052 2.79
82551 1.076 5.47
82555 1.058 2.52
82565 1.069 4.48
826MB 1.079 5.71
82604 1.052 3.53
82607 1.078 5.67
82614 1.069 5.04
82615 1.075 5.46
82651 1.075 5.46
82654 1.104 4.01
82655 1.054 4.14
82656 1.077 5.52
82665 1.049 3.52
82701 1.075 5.41
82704 1.058 3.20

---------------------------------------------------- 96 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
82751 1.081 5.80
82753 1.153 7.30
82763 1.153 7.30
83401 1.077 5.51
83404 1.099 3.64
83405 1.096 3.16
83415 1.059 2.62
83451 0.998 1.75
83454 0.970 -0.65
83455 0.917 -1.40
83464 0.876 -0.80
83465 0.881 -1.21
83501 0.991 1.28
83504 1.007 -0.17
83505 0.958 -0.40
83514 0.806 -1.58
83515 0.903 -2.08
83601 0.995 1.06
83604 1.018 -0.12
83605 1.011 -0.90
83701 1.079 5.49
83704 1.070 3.80
83705 1.070 4.03
83801 1.079 5.41
83804 1.113 5.15
83805 1.061 4.97
84401 0.989 0.25
84404 0.992 -3.15
84405 0.999 -2.27
84464 1.031 -1.67
84465 1.028 -2.13
84501 0.998 1.31
84504 1.105 -0.76
84514 1.111 -0.37
84601 1.000 1.39
84602 1.016 5.36
84603 1.007 2.91

---------------------------------------------------- 97 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
84613 1.007 2.91
84701 0.988 -0.17
84704 0.930 -1.32
84705 0.935 -1.25
80908 1.043 4.38
81658 1.054 3.53
84458 1.014 -0.06
84451 0.990 -0.06
84454 1.019 -2.35
84455 0.962 -2.97
============================================================================
THE EXACT POWER INJECTED INTO NETWORK
=======================================
Busname Pgen Qgen
=======================================
82752 418.83 163.46
81110 32.00 -1.04
81120 32.00 -1.04
=======================================

======================== THE LINE POWER FLOW ===============================


FromBus ToBus Psend======Qsend Prec======Qrec Ploss=====Qloss
============================================================================
80751 80851 5.51 2.20 5.51 2.64 0.01 -0.44
80751 81107 -7.72 -3.22 -7.72 -3.12 0.00 -0.10
809MB 81106 -53.91 14.38 -55.94 10.94 2.04 3.44
809MB 80951 12.30 -3.92 12.25 -3.26 0.05 -0.66
809MB 81601 12.70 -1.94 12.59 -0.48 0.11 -1.46
80951 81951 7.85 -5.56 7.83 -5.06 0.02 -0.50
81101 81106 56.06 -10.75 55.94 -10.94 0.11 0.19
81101 81107 7.72 3.03 7.72 3.12 0.00 -0.09
81601 81651 -16.32 -17.57 -16.49 -17.19 0.17 -0.37
81651 81701 9.11 10.23 9.06 10.72 0.04 -0.48
81651 81751 4.30 2.07 4.30 2.25 0.00 -0.17
81651 8185B -7.22 -8.67 -7.23 -8.33 0.02 -0.34
81651 8185B -7.22 -8.67 -7.23 -8.33 0.02 -0.34
81652 82752 -67.75 -24.73 -68.48 -14.58 0.73 -10.15

---------------------------------------------------- 98 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
8180B 8185B 20.40 10.94 20.12 11.77 0.28 -0.83
8180B 81901 -12.42 -6.13 -12.49 -5.07 0.07 -1.05
8180B 8185B 20.40 10.94 20.12 11.77 0.28 -0.83
8180B 82406 -13.04 -6.33 -13.12 -5.25 0.08 -1.08
81901 82451 -13.93 -5.13 -13.96 -4.83 0.02 -0.30
82401 82421 1.82 0.46 1.82 0.56 0.00 -0.10
82401 82451 -6.03 -1.99 -6.03 -1.58 0.01 -0.41
82406 82451 -13.12 -5.25 -13.14 -5.02 0.02 -0.23
82421 82451 -5.22 -1.80 -5.23 -1.28 0.00 -0.52
82451 82506 -10.18 -7.96 -10.19 -7.79 0.01 -0.17
82451 82507 24.61 9.87 24.56 9.96 0.04 -0.09
82452 82752 -76.01 -28.51 -76.15 -27.12 0.14 -1.39
82506 826MB -10.19 -7.79 -10.21 -7.55 0.01 -0.23
82507 825MB 56.05 29.95 55.86 29.62 0.19 0.33
82507 82607 -31.49 -19.99 -31.60 -20.01 0.11 0.02
82551 82656 -14.62 -4.74 -14.62 -4.38 0.01 -0.35
826MB 82751 -23.54 -17.14 -23.56 -17.10 0.02 -0.04
82607 82751 -31.60 -20.01 -31.63 -20.02 0.03 0.01
82651 82656 -29.21 -14.28 -29.23 -14.09 0.02 -0.19
82651 82701 7.81 2.76 7.81 2.92 0.00 -0.16
82651 83401 -1.37 -0.02 -1.37 0.56 0.00 -0.58
82656 82751 -43.85 -18.48 -43.94 -18.05 0.10 -0.43
82751 83401 24.74 6.78 24.69 7.89 0.05 -1.12
82751 83451 47.60 25.39 45.56 22.34 2.04 3.04
82751 83701 12.34 -0.65 12.31 -0.13 0.03 -0.52
82752 84602 90.12 19.73 88.58 27.50 1.53 -7.77
83451 83501 18.55 6.43 18.47 6.72 0.08 -0.29
83501 84601 -3.16 -5.49 -3.18 -4.12 0.02 -1.37
83601 84601 -11.41 -5.31 -11.44 -4.81 0.03 -0.50
83701 83801 3.43 -2.66 3.43 1.38 0.00 -4.03
84401 84451 11.59 -6.93 11.57 -6.64 0.03 -0.29
84401 84601 -34.44 -4.75 -34.73 -4.92 0.29 0.16
84451 84601 -27.09 -2.00 -27.33 -1.77 0.23 -0.24
84451 84701 6.74 2.48 6.73 2.76 0.01 -0.28
84501 84601 -11.72 -5.75 -11.73 -5.24 0.01 -0.51
81701 81951 -0.65 6.97 -0.67 7.62 0.01 -0.65
80908 809MB 0.00 22.85 0.00 22.29 0.00 0.56

---------------------------------------------------- 99 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
81658 81651 0.00 22.24 0.00 21.72 0.00 0.52
84458 84451 0.00 21.61 0.00 21.08 0.00 0.53
80811 809MB -0.00 0.00 -0.00 1.11 0.00 -1.11
============================================================================
The total of power loss on the lines: 9.1160 -33.9461
Two-winding transformer : Ploss = 0.9314 Qloss = 17.4835
Three-winding transformer : Ploss = 1.6401 Qloss = 49.5797

Kết quả tính toán chế độ của A0 được cho dưới dạng file gửi kèm theo
đĩa CD chương trình.

4.2.2 Tính toán chế độ xác lập khi có thiết bị SVC


Ví dụ 1
Hệ thống 5 bus có thiết bị SVC tại nút Lake

----------------------------------------------------100 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
kết quả đưa ra theo tài liệu tham khảo này là:

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


THIS IS THE PROGRAM TO COMPUTE LOAD FLOW BY NEWTON-RAPHSON METHOD
INCLUDING THE EXISTATION OF SVC DEVICES
Iteration number: 5
============================================================================
THE NODAL VOLTAGE
============================================================================
Busname Voltage Magnitude Voltage Angle(degree)
============================================================================
North 1.060 0.00
South 1.000 -2.05
Lake 1.000 -4.84
Main 0.994 -5.11
Elm 0.975 -5.80
============================================================================
THE PARAMETERS OF SVC
=====================
SVCBus B
=====================
Lake 0.2047
=====================
THE EXACT POWER INJECTED INTO NETWORK
=======================================
Busname Pgen Qgen
=======================================
North +1.3106 +0.8534
South +0.4000 -0.7707
Lake -0.0000 +0.2047
=======================================

----------------------------------------------------101 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
====================== THE LINE POWER FLOW =================================
FromBus ToBus Psend=====Qsend Prec=====Qrec Ploss=====Qloss
============================================================================
North South +0.891 +0.741 +0.866 +0.730 +0.025 +0.011
North Lake +0.419 +0.113 +0.406 +0.124 +0.014 -0.011
South Lake +0.245 -0.095 +0.241 -0.067 +0.004 -0.028
South Main +0.277 -0.073 +0.272 -0.048 +0.005 -0.025
South Elm +0.545 +0.027 +0.533 +0.021 +0.012 +0.007
Lake Main +0.196 +0.112 +0.196 +0.130 +0.001 -0.018
Main Elm +0.068 +0.033 +0.067 +0.079 +0.001 -0.047
============================================================================
The total of power loss on the lines: 0.0606 -0.1125

Ví dụ 2
Hệ thống 30 bus.
Đặt SVC tại nút 30.
Kết quả chạy chương trình như sau :
THIS IS THE PROGRAM TO COMPUTE LOAD FLOW BY NEWTON-RAPHSON METHOD
INCLUDING THE EXISTATION OF SVC DEVICES
Iteration number: 5
============================================================================
THE NODAL VOLTAGE
============================================================================
Busname Voltage Magnitude Voltage Angle(degree)
============================================================================
1 1.060 0.00
2 1.043 -5.50
3 1.022 -8.00
4 1.013 -9.66
5 1.010 -14.38
6 1.012 -11.40
7 1.004 -13.15
8 1.010 -12.11
9 1.051 -14.43
10 1.045 -16.02

----------------------------------------------------102 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
11 1.082 -14.43
12 1.058 -15.30
13 1.071 -15.30
14 1.043 -16.18
15 1.038 -16.27
16 1.045 -15.87
17 1.039 -16.18
18 1.028 -16.88
19 1.026 -17.04
20 1.030 -16.85
21 1.032 -16.46
22 1.033 -16.45
23 1.028 -16.66
24 1.022 -16.83
25 1.021 -16.43
26 1.003 -16.85
27 1.028 -15.93
28 1.011 -12.06
29 1.010 -17.18
30 1.000 -18.10
============================================================================
THE PARAMETERS OF SVC
=====================
SVCBus B
=====================
30 0.0081
=====================
THE EXACT POWER INJECTED INTO NETWORK
=======================================
Busname Pgen Qgen
=======================================
1 +2.6098 -0.1706
2 +0.4000 +0.4870
5 -0.0000 +0.3591
8 +0.0000 +0.3038
11 +0.0000 +0.1602
13 +0.0000 +0.1030
30 +0.0000 +0.0081
=======================================

----------------------------------------------------103 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Ví dụ 3

Kết quả tính toán vùng 2 miền Trung trong chế độ cao điểm chiều và
chế độ thấp điểm cho thấy :
+ Trong chế độ cao điểm chiều :
• Có 14 nút có điện áp lệch ≥ ± 10% khỏi giá trị 1 p.u
+ Trong chế độ thấp điểm :
• Có 43 nút có điện áp lệch ≥ ± 10% khỏi giá trị 1 p.u
+ Dao động điện áp lớn nhất thuộc về nút Tịnh Phong (84404) với giá
trị là 0,115 p.u .
Từ đó ta đưa tới giả thiết đặt thiết bị SVC tại nút có dao động điện áp
lớn nhất để phân tích lại chế độ vận hành xác lập của hệ thống. Kết quả tính
toán cho thấy :
+ Trong chế độ cao điểm chiều :
• Có 15 nút có điện áp lệch ≥ ± 10% khỏi giá trị 1 p.u
+ Trong chế độ thấp điểm :
• Có 31 nút có điện áp lệch ≥ ± 10% khỏi giá trị 1 p.u
+ Dao động điện áp lớn nhất thuộc về nút Văn Xá (81604) với giá trị
là 0,081 p.u.
Có thể thấy rằng thiết bị SVC đã làm giảm dao động điện áp trong hệ
thống khi có sự thay đổi phụ tải giữa 2 chế độ. Đó là một trong những chức
năng quan trọng của thiết bị SVC nhằm ổn định điện áp trong lưới.
Các kết quả tính toán cho bởi file *.xls (excell) gửi kèm trong đĩa CD
chương trình đi kèm.

----------------------------------------------------104 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

TỔNG KẾT
Sự phát triển ngày càng lớn cả về mặt quy mô lẫn công nghệ trong
ngành công nghiệp điện năng là sự phát triển tất yếu trong xu thế ngày nay
đối với mọi quốc gia. Tính chất phức tạp của hệ thống cũng vì đó mà tăng
lên nhanh chóng, đòi hỏi ngày càng phải có nhiều thiết bị mới để đáp ứng
yêu cầu vận hành tối ưu hệ thống, đảm bảo chất lượng điện năng tới hộ tiêu
thụ. FACTS chính là ví dụ tiêu biểu nhất của xu thế mới đó.
Những mô hình của FACTS ngày nay không ngừng được cải thiện
nhằm tăng cường độ chính xác trong mô phỏng đã đóng góp một phần
không nhỏ trong việc đưa ra các quyết định quan trọng trong vận hành cũng
như thiết kế hệ thống. Các mô hình thiết bị được cụ thể hoá qua các chương
trình tính toán chế độ xác lập của hệ thống điện đã chứng minh được sự
thành công trong tính toán chế độ, sát hợp với chế độ vận hành thực tế ,thể
hiện được sự ưu việt của các mô hình mới.
Phần I của đồ án là sự khái quát hoá về lý thuyết tính toán chế độ xác
lập của hệ thống điện, đưa ra các mô phỏng phần tử cơ bản trong hệ thống
điện cũng như các thiết bị mới ngày nay đang được ứng dụng rộng rãi ở
nhiều nơi. Trong phạm vi hạn hẹp của đồ án, tuy không thể xây dựng được
tất cả các module tính toán chế độ xác lập của hệ thống điện khi có các thiết
bị FACTS nhưng một phần nào đó, chương trình tính toán CĐXL của hệ
thống điện có thiết bị SVC đã giúp cho ta hiểu thêm về cách mô phỏng thiết
bị cũng như các bước xây dựng chương trình. Từ đó, đặt nền tảng để phát
triển chương trình ngày càng hoàn thiện hơn, đa năng hơn.

----------------------------------------------------105 ---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

PHẦN II
NGHIÊN CỨU LÝ THUYẾT VÀ ÁP DỤNG MỘT SỐ
KỸ THUẬT XỬ LÝ MA TRẬN THƯA TRONG
BÀI TOÁN TÍNH TOÁN CĐXL CỦA HTĐ

---------------------------------------------------- 106 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

ĐẶT VẤN ĐỀ
Như đã biết, bài toán tính toán CĐXL là trung tâm của bài toán tính toán
phân tính hệ thống điện. Nó liên quan đến một loạt các bài toán về vấn đề
thực hiện thiết kế, cải tạo, quy hoạch, kiểm tra khả năng tải, vấn đề ổn định hệ
thống; xây dựng phương thức vận hành, giám sát, phân tích sự cố ngẫu
nhiên,…Đặc biệt, đối với bài toán phân tích sự cố ngẫu nhiên trong hệ thống
điện-tức là kiểm tra xem với trạng thái vận hành hiện tại, hệ thống có đạt
được điều kiện về ổn định tĩnh và động hay không nếu xảy ra một sự cố ngẫu
nhiên bất kì trong hệ thống (mất máy phát, mất tải, nhảy máy cắt,…) để có thể
đưa ra các phương thức vận hành hợp lý nhằm ngăn chặn sụp đổ hệ thống-
trong điều kiện hệ thống điện ngày nay là một hệ thống điện có kích thước và
số lượng các phần tử lên tới hàng ngàn, tương ứng số lượng các sự cố cần
xem xét là vô cùng lớn. Tuy nhiên, vì hệ thống điện là một hệ thống cân bằng
động, các thông số về máy phát và tải và một loạt các thông số khác luôn biến
động theo thời gian, còn các dữ liệu được thu thập đưa về trung tâm tính toán
lại là một thống kê dữ liệu tại một thời điểm vận hành nhất định của hệ thống.
Chính vì vậy, nếu thời gian xử lý dữ liệu quá lâu, các kết quả vận hành chỉ ra
sau quá trình tính toán sẽ được coi là không chính xác, vì khi đó hệ thống đã
chuyển sang một trạng thái mới không còn là trạng thái ban đầu. Do đó, ngoài
việc chỉ lựa chọn một số các sự cố tiêu biểu trong phân tích ngẫu nhiên, một
yêu cầu cấp thiết là phải rút ngắn tối đa thời gian tính toán CĐXL của hệ
thống điện.
Với bài toán tính toán CĐXL của hệ thống điện bằng hai phương pháp
lặp Gauss_Seidel và Newton_Raphson ở trên. Có thể nhận thấy rằng ngoài
đặc điểm trội chéo của ma trận tổng dẫn Y thì ma trận này còn có một đặc
điểm quan trọng nữa là “tính thưa “ của nó. Thậm chí, ma trận Jacobi cũng có
tính thưa tương tự như vậy. Với ma trận 14 nút (IEEE) thì số phần tử khác 0

---------------------------------------------------- 107 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

trên tổng số phần tử trong ma trận tổng dẫn Y là 54/142 = 27,55% , với ma
trận Y của hệ thống 30 nút(IEEE) là 112/302 = 12,44%. Con số này suy giảm
nhanh chóng khi kích cỡ của ma trận tăng lên, hay nói cách khác là số nút của
hệ thống tăng lên. Sở dĩ như vậy là bởi trong thực tế một nút trong hệ thống
thông thường chỉ nối tới một số hữu hạn các nút chứ không phải là tất cả, do
dó phần tử trong ma trận tổng dẫn Y của nút này với các nút không nối có giá
trị bằng 0. Để tăng tốc quá trình tính toán, cần thiết phải khai thác tính thưa
này, tức giảm yêu cầu lưu trữ và khối lượng tính toán.
Thêm nữa, trong bài toán CĐXL của HTĐ dựa trên hai phương pháp
Gauss-Seidel và Newton – Raphson thì điểm quan trọng trong từng bước lặp
là giải hệ phương trình tuyến tính hoá, với G – S đó là Y.U = J, với N – R đó
là [J].[Δδ; ΔU] = [ΔP; ΔQ]. Các phương pháp giải trực tiếp (direct solution
methods) tỏ ra rất hiệu quả khi kích thước của hệ phương trình là nhỏ và trung
bình. Tuy nhiên, tính hiệu quả của nó sẽ ngày càng giảm đi khi kích thước các
hệ phương trình này tăng lên và cần thiết phải sử dụng các phương pháp giải
lặp (iteration solution methods). Việc lựa chọn phương pháp nào là một vấn
đề gây nhiều tranh luận trong khoa học tính toán.
Với những lý do nêu trên, các chương trình tính toán thương mại ngày
nay đều đưa ra các module lưu trữ thưa và các lựa chọn về phương pháp giải
cho người dùng. Điều đó phần nào thể hiện được sự quan trọng trong việc
nghiên cứu và áp dụng các kỹ thuật xử lí ma trận thưa cũng như là các
phương pháp giải lặp trong bài toán tính toán CĐXL của hệ thống điện. Cũng
có thể coi đó là lý do để đi tới phần II của bản đồ án này.

---------------------------------------------------- 108 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

CHƯƠNG 5
LÝ THUYẾT CHUNG VỀ MA TRẬN THƯA
VÀ MỘT SỐ KỸ THUẬT XỬ LÝ MA TRẬN THƯA

A. LÝ THUYẾT CHUNG VỀ MA TRẬN THƯA, CÁC PHƯƠNG PHÁP


LƯU TRỮ VÀ TÍNH TOÁN TRÊN MA TRẬN THƯA
5.1 ĐỊNH NGHĨA VÀ ĐẶC ĐIỂM CỦA MA TRẬN THƯA
Một ma trận thưa, về cơ bản được định nghĩa là ma trận có rất ít các
phần tử có giá trị khác 0. Tuy nhiên, thực tế là một ma trận chỉ có thể được
coi là thưa khi có thể áp dụng được các kỹ thuật tính toán đặc biệt để khai
thác đặc điểm đặc biệt về số lượng và vị trí phân bố các phần tử khác 0 của
ma trận. Một trong những phép toán cơ bản thường xuyên phải thực hiện
trong đại số tuyến tính đó là phép nhân ma trận - vectơ. Do đó một điều tất
yếu có thể khai thác ở ma trận thưa là việc không cần thiết phải lưu trữ các
phần tử bằng 0 và tính toán các phép tính nhân đối với các phần tử này.
Ý tưởng về việc khai thác các đặc điểm của ma trận thưa đã được đưa
ra bởi các kỹ sư ở rất nhiều các lĩnh vực khác nhau, trong đó, ngay từ những
năm 1960, các kỹ sư hệ thống điện, khi nghiên cứu các bài toán về tính toán
phân tích hệ thống điện là những người đầu tiên áp dụng kỹ thuật ma trận
thưa vào thực tế. Nội dung chủ yếu của kỹ thuật ma trận thưa lúc đó là phải
tìm ra một thuật toán giải trực tiếp các bài toán sinh ra từ các hệ thống tuyến
tính có kích thước lớn. Các thuật toán này, ngoài việc phải bảo đảm độ chính
xác của lời giải, còn phải đảm bảo yêu cầu về tính “kinh tế” khi lưu trữ dữ
liệu và khối lượng tính toán.
Về cơ bản, ma trận thưa được chia làm hai loại lớn : ma trận thưa có
cấu trúc và ma trận thưa không có cấu trúc.

---------------------------------------------------- 109 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Một ma trận thưa có cấu trúc là ma trận mà vị trí các phần tử khác 0
của nó tạo nên một cấu trúc xác định, thông thường là phân bố trên một số
lượng nhỏ các đường chéo. Ngoài ra, các phần tử khác 0 có thể phân bố thành
các khối con (các ma trận “dày”) cùng kích thước và vị trí các khối này tạo
thành một cấu trúc xác định, cũng thường là nằm trên một số lượng nhỏ các
(khối) đường chéo của ma trận.

Hình5.1 Ma trận thưa có cấu trúc,


các phần tử khác 0 phân bố trên một số hữu hạn đường chéo
Một ma trận thưa không cấu trúc là ma trận có các phần tử khác 0 phân
bố một cách ngẫu nhiên, không có quy tắc bên trong ma trận.

Hình5.2 Ma trận thưa không cấu trúc, các phần tử khác 0 phân bố ngẫu nhiên

---------------------------------------------------- 110 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Việc phân biệt các ma trận thưa thành hai loại như trên không có ý
nghĩa đối với các thuật toán giải thông thường khi thao tác bình đẳng đối với
mọi phần tử của ma trận, và chính vì vậy nó không được quan tâm nghiên cứu
trước đây. Tuy vậy, đối với các phương pháp giải lặp hệ thống phương trình
tuyến tính, việc phân chia như vậy rất quan trọng bởi vì, như đã nói ở trên,
loại ma trận là cấu trúc hay không cấu trúc có ảnh hưởng lớn đến hiệu quả
tính toán trên các phép nhân ma trận-vectơ, đặc biệt là khi thực hiện trên các
máy tính hiệu năng cao.
Mục tiếp theo sẽ trình bày về việc sử dụng graph để biểu diễn cấu trúc
của ma trận, một công cụ lý tưởng để minh hoạ ma trận thưa và nghiên cứu
các kỹ thuật xử lý ma trận thưa.

5.2 CÁCH BIỂU DIỄN MA TRẬN THƯA BẰNG BIỂU ĐỒ KỀ


Một biểu đồ (graph) được định nghĩa bằng hai tập hợp : tập hợp các

{ }
đỉnh V và tập các cạnh E, trong đó V = v , v ,..., vn và E là tập các cặp đỉnh
1 2
(vi,vj) trong đó vi, vj là phần tử của tập đỉnh V, tức là E ⊆ V ×V
Một biểu đồ G = (V,E) được biểu diễn bởi một tập hợp các điểm trong
mặt phẳng, liên kết với nhau bằng các đường thẳng nối giữa chúng. Biểu đồ
chính là cách biểu diễn mối quan hệ số học giữa các phần tử của tập V. Ví dụ,
V có thể biểu diễn tập hợp các nút (thanh cái) trong hệ thống điện. Sẽ tồn tại
đường thẳng nối giữa 2 điểm của V nếu có đường dây truyền tải nối giữa 2 nút
(thanh cái) đó trong thực tế. Như vậy, mối quan hệ số học như trên giữa 2 nút
(thanh cái) là đối xứng, tức là công suất có thể truyền từ nút này sang nút
khác theo cả 2 chiều. Trong những trường hợp như vậy, biểu đồ được gọi là
vô hướng, trường hợp ngược lại, biểu đồ được gọi là có hướng.

---------------------------------------------------- 111 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Hình5.3 Ví dụ về biểu đồ của ma trận thưa 4×4


Quay trở lại với ma trận thưa, một biểu đồ liền kề (adjacency graph)
của một ma trận thưa là một biểu đồ G = (V,E) , trong đó n đỉnh của V biểu
diễn n biến. Các cạnh của G biểu diễn mối quan hệ số học giữa các đỉnh của V
được thiết lập từ hệ phương trình đã cho theo nghĩa sau: Tồn tại một cạnh nối
giữa nút i và nút j nếu aij ≠ 0. Khi đó biểu đồ là có hướng, trừ khi ma trận có
cấu trúc đối xứng, tức là aij ≠ 0 khi và chỉ khi aji ≠ 0.
Khi ma trận có cấu trúc đối xứng, tức là aij và aji luôn đồng thời khác
0, khi đó biểu đồ là vô hướng. Vì vậy, với biểu đồ vô hướng, mọi cạnh có thể
chỉ theo hai hướng của 2 đầu mút.
Để lấy ví dụ cho việc ứng dụng của biểu đồ kề, ta đưa ra ví dụ về việc
sử dụng biểu đồ kề để tìm ra thứ tự khử tối ưu nhằm giảm thiểu số phần tử
điền thêm (bảo toàn tính thưa của ma trận) trong quá trình khử Gauss.

Hình5.4 Ví dụ ứng dụng biểu đồ kề

---------------------------------------------------- 112 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Hai hình vẽ trên biểu diễn cấu trúc của ma trận tại mỗi bước khử, trong
đó ô màu xanh biểu diễn phần tử ban đầu, ô màu đỏ biểu diễn phần tử điền
thêm. Nếu như bằng một cách nào đó, ta hoán vị được ma trận phía trên (bên
trái) về dạng ma trận như ở phía dưới thì phép khử Gauss lúc này là tối ưu,
không có phần tử điền thêm nào trong suốt quá trình tính toán.

5.3 HOÁN VỊ MA TRẬN


Như đã thấy ở hai hình vẽ minh hoạ trên, nếu trật tự khử đều là từ nút
số 1 đến nút số 6 thì đối với trường hợp ban đầu, ngay từ sau khi khử nút đầu
tiên, ma trận đã bị điền đầy, mất hẳn tính chất thưa mà ta mong muốn. Trong
khi đó với trường hợp thứ 2, ở mọi bước khử số phần tử điền thêm là ít nhất
(ở đây là môt trường hợp đặc biệt, không xuất hiện một phần tử điền thêm
nào). Để có được tính chất tốt như đã chỉ ra ở hình vẽ thứ 2, chúng ta phải
thực hiện việc sắp xếp lại ma trận, thực chất là sắp xếp lại thứ tự các phương
trình và (hoặc) đánh lại tên của các phần tử trong ma trận. Đó chính là thao
tác của phép hoán vị ma trận. Ở những phần tiếp theo đây, chúng ta sẽ nghiên
cứu các phép hoán vị ma trận (bao gồm hoán vị hàng, cột, hàng và cột) và
mối quan hệ của nó với biểu đồ kề của ma trận.
5.3.1 Các khái niệm cơ bản
Định nghĩa 5.3.1: Gọi A là ma trận và π = {i , i ,..., in } là một hoán vị của
1 2

tập hợp {1,2,...n} . Khi đó ma trận


⎧ ⎫
A = ⎨a
π ,* ⎩ π (i), j ⎬⎭i=1,2,...,n; j =1,2,...m
⎧ ⎫
A = ⎨ ai,
*,π ⎩ π (i) ⎬⎭i=1,2,...,n; j =1,2,...m

lần lượt được gọi là hoán vị hàng thứ tự л và hoán vị cột thứ tự л của ma trận A.

---------------------------------------------------- 113 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Dễ dàng nhận thấy bất kỳ một phép hoán vị nào của tập {1,2,...n} đều là

kết quả của nhiều nhất n phép hoán vị cơ sở, trong đó mỗi phép hoán vị cơ sở
chỉ thực hiện hoán vị 2 phần tử của tập.
Ma trận hoán vị cơ sở là ma trận đơn vị trong đó chỉ có 2 hàng của nó
được hoán vị cho nhau, kí hiệu Xij, trong đó i và j lần lượt là chỉ số hai hàng
cần hoán vị của ma trận. Như vậy, giả sử ma trận hoán vị hàng 2 và 3 của ma
trận kích thước 5×5 sẽ có dạng như sau:

⎡1 0 0 0 0⎤
⎢0 0 1 0 0 ⎥⎥

X 23 = ⎢0 1 0 0 0⎥
⎢ ⎥
⎢0 0 0 1 0⎥
⎢⎣0 0 0 0 1 ⎥⎦

Để thực hiện hoán vị hàng i và j của một ma trận bất kì, ta chỉ cần nhân
trước ma trận đó với ma trận hoán vị cơ sở Xij.

{ }
Do đó, nếu gọi π = i , i ,..., in là một thứ tự hoán vị bất kỳ, thì hoán vị
1 2
này là kết quả của phép nhân liên tiếp n hoán vị cơ sở σ(ik,jk), k=1,2,…m.
Tương ứng, các hàng của ma trận sẽ được hoán vị bằng cách lần lượt hoán đổi
hàng i1,j1 sau đó là i2,j2 ….. cuối cùng hoán vị hàng in,jn. Mỗi một phép hoán
đổi được thực hiện bằng cách nhân trước ma trận cần hoán đổi với ma trận
hoán vị cơ sở Xik,jk.
Tương tự như vậy, để hoán vị các cột của một ma trận theo thứ tự hoán

{ }
vị π = i , i ,..., in ta cũng tiến hành như trên, chỉ khác một điểm là: để hoán vị
1 2
2 cột i và j của một ma trận, ta chỉ cần nhân sau ma trận đó với ma trận hoán
vị cơ sở Xij. Từ các nhận xét trên đây, ta đưa ra định lý sau

---------------------------------------------------- 114 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Định lý 5.3.1: Gọi л là thứ tự hoán vị, có được từ phép nhân liên tiếp
các hoán vị cơ sở σ(ik,jk), k=1,2,…n thì
A = Pπ A, A = AQπ
π ,* *,π

trong đó
Pπ = X in, jn X ...X
in−1, jn−1 i1, j1
Qπ = X X ...X
i1, j1 i 2, j 2 in, jn

Pл,Qл lần lượt được gọi là ma trận hoán vị hàng và ma trận hoán vị cột
*Tính chất của ma trận hoán vị :
Pπ Qπ = I
Q = PT = P−1
π π π
Pπ = I
π ,*
Qπ = I
π ,*

Từ đó ta có kết quả sau :


A =I A = Pπ A; A = AI = APπT
π ,* π ,* *,π *,π

Bản chất của phép hoán vị ma trận là việc sắp xếp lại thứ tự các
phương trình trong hệ phương trình và (hoặc) đặt lại tên biến.
Ta minh hoạ bằng ví dụ sau:
Xét một hệ phương trình tuyến tính Ax=b
⎡ a11 0 a13 0⎤
⎢0 a a23 a24 ⎥⎥
A=⎢ 22

⎢ a31 a32 a33 0⎥


⎢ ⎥
⎣ 0 a42 0 a44 ⎦

và π = {1,3, 2, 4} thì hệ phương trình thu được sau khi hoán vị cột như sau

⎡ a11 a13 0 0 ⎤ ⎡ x1 ⎤ ⎡b1 ⎤


⎢0 a a22 a24 ⎥⎥ ⎢⎢ x3 ⎥⎥ ⎢⎢b2 ⎥⎥
⎢ 23
=
⎢ a31 a33 a32 0 ⎥ ⎢ x2 ⎥ ⎢ b3 ⎥
⎢ ⎥⎢ ⎥ ⎢ ⎥
⎣0 0 a42 a44 ⎦ ⎣ x4 ⎦ ⎣b4 ⎦

---------------------------------------------------- 115 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Trong ví dụ trên, chỉ có các cột của A được hoán vị, tức là các biến
được sắp xếp lại thứ tự, và do đó vế phải ko thay đổi.
Phép hoán vị một chiều như trên ít được sử dụng trong các kỹ thuật xử
lý ma trận thưa. Lý do là vì đối với các hệ thống tuyến tính, các phần tử trên
đường chéo đóng một vai trò cực kì quan trọng, ví dụ trong các bài toán tính
toán chế độ xác lập của hệ thống điện, ma trận tổng dẫn Y là chéo trội, các
phần tử trên đường chéo chính lớn hơn hẳn các phần tử ngoài đường chéo và
do đó, phép hoán vị cần thiết phải đảm bảo được đặc tính quý báu này. Điều
này không thực hiện được bởi phép hoán vị một chiều, thay vào đó người ta
sử dụng phép hoán vị hai chiều, tức thực hiện hoán vị cùng lúc trên hàng và
trên cột, theo cùng một thứ tự hoán vị. Phép hoán vị như vậy được gọi là hoán
vị đối xứng. Nếu kí hiệu ma trận hoán vị đối xứng là Aл,л thì ta có công thức
sau đây của hoán vị đối xứng
Aπ ,π = PπT AP

Hệ thống thu được sau khi hoán vị thực chất là phép đặt lại tên các biến
đồng thời sắp xếp lại thứ tự các phương trình trong hệ phương trình theo cùng
một thứ tự như trên.
Đối với ví dụ đã xét ở trên, nếu thực hiện phép hoán vị đối xứng, tức là
các hàng cũng được hoán vị theo cùng thứ tự hoán vị các cột, ta sẽ thu được
hệ thống mới như sau:
⎡ a11 a13 0 0 ⎤ ⎡ x1 ⎤ ⎡b1 ⎤
⎢a 0 ⎥⎥ ⎢⎢ x3 ⎥⎥ ⎢⎢ b3 ⎥⎥
⎢ 31 a33 a32
=
⎢ 0 a23 a22 a24 ⎥ ⎢ x2 ⎥ ⎢b2 ⎥
⎢ ⎥⎢ ⎥ ⎢ ⎥
⎣0 0 a42 a44 ⎦ ⎣ x4 ⎦ ⎣b4 ⎦

Các phần tử trên đường chéo chính vẫn là các phần tử trên đường chéo
chính của hệ thống ban đầu, chỉ khác là thứ tự đã bị thay đổi.

---------------------------------------------------- 116 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

5.3.2 Mối quan hệ với biểu đồ kề


Từ góc độ của lý thuyết biểu đồ (graph), phép hoán vị đối xứng thực
chất là việc đặt lại tên các đỉnh của biểu đồ đó mà không thay đổi các cạnh
nối giữa chúng. Vì thế, biểu đồ của ma trận sau hoán vị không bị thay đổi mà
chỉ có tên các đỉnh của nó thay đổi mà thôi. Trái lại, phép hoán vị không đối
xứng không bảo toàn biểu đồ kề của ma trận. Nó có thể chuyển một biểu đồ
vô hướng thành biểu đồ có hướng.
Một điều rất quan trọng là, đối với hoán vị đối xứng, ma trận sau hoán
vị có thể bị thay đổi hoàn toàn cấu trúc của nó, trong khi biểu đồ kề của nó thì
không thay đổi.
Ví dụ: Ta xem xét ma trận được minh hoạ dưới đây cùng với biểu đồ kề của
nó. Những ma trận như vậy thường được gọi là ma trận “hình mũi tên”, chính
xác hơn chúng được gọi là các ma trận “sao” vì hình dáng biểu đồ kề của nó.

Hình5.5 Cấu trúc một ma trận “hình mũi tên”và biểu đồ kề tương ứng

Hình5.6 Biểu đồ kề và cấu trúc của ma trận mới sau khi sắp xếp

---------------------------------------------------- 117 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Nếu hoán vị ma trận ban đầu theo thứ tự {9,8,7…,1} thì ta sẽ thu được
biểu đồ kề và ma trận tương ứng của nó ở hình dưới. Mặc dù không có sự
khác biệt nào về hình dạng giữa hai biểu đồ kề của 2 trường hợp trên, nhưng
ma trận tương ứng của chúng lại hoàn toàn khác biệt nhau về cấu trúc. Điều
này ảnh hưởng rất lớn đến thuật toán áp dụng để giải hệ thống tương ứng với
ma trận thu được. Nếu như áp dụng phép loại trừ Gauss trên ma trận sau hoán
vị, sẽ không có phần tử điền thêm nào. Ngược lại, với ma trận ban đầu, ngay
từ phép khử Gauss đầu tiên, ma trận thu được đã bị điền đầy, mất hẳn tính
chất thưa.
Như vậy, đối với các kỹ thuật xử lý ma trận thưa dựa trên cách giải trực
tiếp, cần thiết phải tìm ra các thuật toán sắp xếp lại ma trận sao cho giảm
thiểu tối đa các phần tử điền thêm trong suốt quá trình thực hiện loại trừ
Gauss. Ở mục tiếp theo, ta sẽ trình bày các thuật toán thao tác trên biểu đồ kề
để đưa ra được thứ tự hoán vị nhằm mục đích đưa ma trận ban đầu về một ma
trận mới có cấu trúc mong muốn.

5.4 CÁC PHƯƠNG PHÁP CƠ BẢN SẮP XẾP BIỂU ĐỒ KỀ ĐỂ ĐƯA RA


THỨ TỰ HOÁN VỊ MA TRẬN
Việc lựa chọn cách sắp xếp (hoặc hoán vị) như thế nào hoàn toàn tuỳ
thuộc vào phương pháp giải là trực tiếp hay lặp. Ở đây ta sẽ trình bày một số
phương pháp thường gặp trong các phương pháp lặp giải quyết hệ phương
trình tuyến tính.
5.4.1 Phương pháp sắp xếp dựa trên việc xây dựng tập mức (Level-set)
Sắp xếp theo tập mức bao gồm rất nhiều các thuật toán sắp xếp khác
nhau, nhưng chúng đều giống nhau ở điểm là đều dựa trên việc duyệt biểu đồ
bằng cách xây dựng các tập mức.

---------------------------------------------------- 118 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Một tập mức được định nghĩa là một tập hợp các đỉnh liền kề (có cạnh
nối tới) chưa đánh dấu (đã duyệt) của tất cả các đỉnh (đã đánh dấu) của một
tập mức xây dựng trước đó.
Ban đầu, tập mức chỉ bao gồm một đỉnh duy nhất, mặc dù việc chọn
đỉnh khởi đầu cũng rất quan trọng và ảnh hưởng đáng kể đến thứ tự sắp xếp
tiếp theo, nhưng ở đây chúng ta sẽ không đi sâu vào vấn đề này. Mỗi khi một
tập mức mới được thiết lập, các đỉnh của tập đó sẽ được đánh dấu và được
đánh số, có thể theo trình tự nút được duyệt qua. Thứ tự duyệt các đỉnh khác
nhau sẽ tạo nên các phương pháp sắp xếp khác nhau. Ở đây chúng ta sẽ xem
xét 2 phương pháp : Tìm kiếm mở rộng (Breadth First Search) và Cuthill-
McKee.

Phương pháp Tìm kiếm mở rộng (Breadth First Search)


Trong phương pháp tìm kiếm mở rộng, các đỉnh của một tập mức được
xem xét theo thứ tự tự nhiên mà nó được liệt kê trong danh sách. Các bước
tiến hành xây dựng một tập mức mới như sau:
+Bắt đầu từ một đỉnh xuất hiện đầu tiên của tập mức hiện tại, xem xét
các đỉnh liền kề của nó.
9 Nếu đỉnh đó đã đánh dấu thì chuyển sang đỉnh tiếp theo.
9 Đỉnh đó chưa đánh dấu thì thêm đỉnh đó vào danh sách và
đánh dấu đỉnh đó là phần tử tiếp theo của tập mức mới.
+Xem xét đỉnh tiếp theo của tập mức hiện tại, thực hiện tương tự như
bước trên.
+Tiếp tục quá trình trên cho tới khi tất cả mọi đỉnh của tập mức hiện
tại đã được xem xét.
Thứ tự hoán vị sẽ thu được theo thứ tự các đỉnh được liệt kê trong
danh sách các tập mức.

---------------------------------------------------- 119 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Phương pháp Cuthill-McKee


Phương pháp Cuthill-McKee cũng tiến hành tương tự như phương
pháp tìm kiếm mở rộng ở trên, chỉ khác ở chỗ, thứ tự các đỉnh được duyệt sẽ
tiến hành theo bậc tăng dần của từng đỉnh, từ đỉnh có bậc thấp nhất đến đỉnh
có bậc cao nhất, trong đó bậc của một đỉnh trong biểu đồ (graph) là số lượng
các đỉnh liền kề của nó.
Thuật toán của phương pháp Cuthill-McKee
1.Input: initial node i1; Output: permutation array iperm.
2.Start: Set levset:={i1}; next = 2;
3.Set maker(i1) = 1; iperm(1) = i1
4.While (next < n) Do:
5. Next_levset = ∅
6. Traverse levset in order of increasing degree and for each visited node
Do:
7. For each neighbor i of j such that marker(i) = 0 Do:
8. Add i to the set Next_levset
9. marker(i):=1; iperm(next) = i
10. next = next + 1
11. EndDo
12. EndDo
13. Levset:= Next_levset
14.EndWhile
Mảng số liệu thu được iperm liệt kê thứ tự các đỉnh được xem xét và
đó chính là thứ tự hoán vị л cần tìm.
Mục tiêu của phương pháp sắp xếp Cuthill-McKee là tìm ra một thứ
tự hoán vị để đưa các phần tử khác 0 của ma trận sau hoán vị (đối xứng) về
phân bố tập trung trên một số hữu hạn các đường chéo của ma trận (ma trận
dải – banded matrix) để có thể áp dụng các phương pháp giải kiểu skyline.

---------------------------------------------------- 120 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Một điều cần lưu ý là thuật toán Cuthill-McKee còn có thể được thực
hiện theo thứ tự ngược lại (từ đỉnh có bậc cao về bậc thấp), khi đó ta có thuật
toán Cuthill-McKee đảo. Kết quả của ma trận thu được sau khi hoán vị theo
Cuthill-McKee đảo có tính chất rất tốt khi thực hiện các phép khử Gauss bởi
vì nó đưa ma trận về dạng các ma trận “hình mũi tên” hướng xuống như đã
chỉ ra trong ví dụ ở mục 5.3.2 và phép khử Gauss sinh ra số lượng tối thiểu
các phần tử điền thêm.
5.4.2.Phương pháp sắp xếp dựa trên việc xây dựng các tập độc lập (Independent set)
Một tập độc lập là tập các đỉnh sao cho giữa hai đỉnh bất kì của tập,
không có đường liên kết chúng với nhau. Về mặt toán học, tập độc lập được
định nghĩa như sau: cho biểu đồ kề G=(V,E) của một ma trận và kí hiệu (x,y)
là đường liên kết giữa đỉnh x và đỉnh y thì một tập độc lập S là một tập con
của tập đỉnh V sao cho
Với x ∈ S , nếu ( x, y ) ∈ E hoặc ( y, x) ∈ E thì ta có y ∉ S
Một tập độc lập được gọi là cực đại nếu không thể tìm thêm được một
đỉnh nào nữa trong phần bù của S thoả mãn điều kiện trên để bổ sung vào tập
S. Tuy nhiên việc tìm ra cực đại của tập S là một công việc rất khó (bậc N-P)
và tốn nhiều công sức tính toán. Chính vì vậy trong thực tế người ta hay dùng
các phương pháp kinh nghiệm để xây dựng tập S. Dưới đây ta sẽ trình bày 2
phương pháp thường gặp.
Thuật toán “loang” (greedy algorithm)
Các bước tiến hành của thuật toán như sau:
+Xem xét các đỉnh theo thứ tự từ 1 đến n
9 Nếu đỉnh đó chưa đánh dấu : thêm đỉnh đó vào tập S, đánh
dấu đỉnh đó và tất cả các đỉnh liền kề của nó.
9 Nếu đỉnh đó đã đánh dấu,chuyển sang đỉnh tiếp theo.

---------------------------------------------------- 121 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

+Xem xét các đỉnh tiếp theo tương tự như trên cho tới khi tất cả các
đỉnh đều đã được đánh dấu.
Ở đây ta duyệt các đỉnh theo thứ tự từ 1 đến n. Tuy nhiên cũng có thể duyệt
theo thứ tự bất kì.
Thuật toán duyệt theo bậc tăng dần (Increasing Degree Traversal)
+Sắp xếp các đỉnh theo thứ tự bậc tăng dần .
+Xem xét các đỉnh theo thứ tự từ 1 đến n.
9 Nếu đỉnh đó chưa đánh dấu : thêm đỉnh đó vào tập S, đánh
dấu đỉnh đó và tất cả các đỉnh liền kề của nó.
9 Nếu đỉnh đó đã đánh dấu,chuyển sang đỉnh tiếp theo.
+Xem xét các đỉnh tiếp theo tương tự như trên cho tới khi tất cả các
đỉnh đều đã được đánh dấu.

Mục tiêu của phương pháp sắp xếp dựa trên việc xây dựng tập độc lập
là đưa ra một thứ tự hoán vị để hoán vị (đối xứng) ma trận về dạng sau
⎛D E⎞
A=⎜ ⎟
⎝F C⎠
trong đó D là ma trận đường chéo còn C,E,D là các ma trận thưa.

Hình5.7 Ví dụ một ma trận hoán vị theo tập độc lập.

---------------------------------------------------- 122 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

5.4.2 Phương pháp đa màu (multi – colour)


Việc đánh màu cho biểu đồ là bài toán thường gặp trong nghành khoa
học máy tính, trong đó liên quan tới yêu cầu với một số màu ít nhất có thể,
phải tìm cách đánh màu tất cả các đỉnh của biểu đồ sao cho hai đỉnh liền kề
bất kì của nó không được đánh cùng màu với nhau. Tuy nhiên, cũng như với
trường hợp xây dựng tập độc lập ở trên, việc tìm bài toán tối ưu (tối thiểu) số
màu ở đây cũng yêu cầu khối lượng tính toán lớn và do đó người ta thường
dùng các phương pháp kinh nghiệm để đưa ra được một kết quả đánh màu
tương đối chấp nhận được.
Các thuật toán cơ bản để đánh màu một biểu đồ bất kì là tương đối đơn
giản, chủ yếu dựa vào thuật toán “loang”. Dưới đây là một trong số các thuật
toán hay sử dụng.
Thuật toán đánh màu “loang”
1.For i = 1,2,…,n Do:set Color(i) = 0
2.For i= 1,2,…,n Do:
3. Set Color(i) = min {k>0 | k≠ Color(i), ∀j ∈ Adj (i) }
4.EndDo
trong đó Adj(i) là một mảng lưu trữ các đỉnh liền kề của đỉnh i trong biểu đồ
Chỉ số màu được đánh cho đỉnh thứ i ở dòng lệnh thứ 3 là chỉ số màu
dương, khác với các đỉnh liền kề và nhỏ nhất có thể.
Ví dụ minh hoạ quá trình đánh màu cho một nút như sau

Hình5.8 Ví dụ minh họa cho thuật toán đánh màu”loang”

---------------------------------------------------- 123 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Đỉnh cần được đánh màu là đỉnh có dấu mũi tên trong biểu đồ. Đỉnh đó

được đánh màu số 3, chỉ số màu nhỏ nhất, dương và khác với các chỉ số xung

quanh là 1,2,4,5.

Ngoài việc duyệt các đỉnh theo thứ tự từ 1 đến n, ta cũng có thể duyệt

theo thứ tự bất kì.

Trong trường hợp đặc biệt có thể sử dụng 2 màu duy nhất để đánh màu

toàn bộ các đỉnh của biểu đồ, khi đó biểu đồ được gọi là bipartite.

Mục tiêu của phương pháp đa màu là tìm ra một thứ tự hoán vị sao cho

ma trận thu được sau khi hoán vị có cấu trúc dạng khối, trong đó các khối ma

trận con trên đường chéo là các ma trận đường chéo.

Ma trận minh hoạ của phép hoán vị (đối xứng) theo phương pháp đa

màu được chỉ ra trong hình vẽ dưới đây.

Hình5.9 Ma trận sau khi thực hiện thuật toán đánh màu “loang”

---------------------------------------------------- 124 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
5.5 PHƯƠNG PHÁP TỔ CHỨC DỮ LIỆU ĐỂ LƯU TRỮ MA TRẬN THƯA
VÀ CÁC PHÉP TOÁN CƠ BẢN
5.5.1 Tổ chức dữ liệu
5.5.1.1 Lưu trữ kiểu hàng thưa thu gọn (Compressed Sparse Row)
Để có thể khai thác được lợi thế của ma trận thưa là có rất ít các phần
tử có giá trị khác 0, phải phát triển một phương pháp tổ chức dữ liệu mới để
lưu trữ ma trận, sao cho chỉ phải lưu trữ các phần tử khác 0 của ma trận đó và
thực hiện được hiệu quả các phép toán thông thường của đại số ma trận. Có
rất nhiều các phương pháp tổ chức dữ liệu khác nhau để lưu trữ ma trận thưa,
ở đây chúng ta chỉ trình bày những phương pháp hay được sử dụng nhất.
Sơ đồ lưu trữ đơn giản nhất thông dụng là sơ đồ lưu trữ sử dụng 3
mảng số, và thường được gọi là sơ đồ lưu trữ theo toạ độ.
+Mảng thứ nhất là mảng số thực (hoặc phức), sử dụng để lưu trữ các
phần tử khác 0 của ma trận theo một thứ tự bất kỳ.
+Mảng thứ 2 là một mảng số nguyên, sử dụng để lưu trữ chỉ số hàng
của các phần tử tương ứng của mảng 5.
+Mảng thứ 3 là một mảng số nguyên, sử dụng để lưu trữ chỉ số cột của
các phần tử tương ứng của mảng 5.
Cả 3 mảng trên đều có tổng số phần tử là Nz = tổng số phần tử khác 0
của ma trận thưa đã cho.
Ví dụ: Ma trận
⎛ 1. 0. 0. 2. 0. ⎞
⎜ ⎟
⎜ 3. 4. 0. 5. 0. ⎟
A = ⎜ 6. 0. 7. 8. 9. ⎟
⎜ ⎟
⎜ 0. 0. 10. 11. 0. ⎟
⎜ 0. 0. 0. 0. 12. ⎟⎠

Nz = 12

---------------------------------------------------- 125 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
sẽ được lưu trữ như sau:

AA 12. 9. 7. 5. 1. 2. 15. 3. 6. 4. 8. 10.

JR 5 3 3 2 1 1 4 2 3 2 3 4

5 5 3 4 1 4 4 1 1 2 4 3
JC

Ở cách lưu trữ trên, các phần tử của ma trận A được lưu trữ theo thứ tự
ngẫu nhiên. Tuy nhiên, người ta thường không làm như vậy mà sẽ liệt kê các
phần tử theo hàng hoặc theo cột. Nếu thực hiện lưu trữ theo hàng, khi đó ma
trận JC sẽ chứa thông tin thừa không cần thiết và do đó JC được thay bằng
một mảng số nguyên chứa địa chỉ bắt đầu của mỗi hàng trên mảng AA. Điều
này khiến mảng JC mới chỉ chứa một số lượng dữ liệu ít hơn nhiều so với
trường hợp ở trên.
Như vậy, sơ đồ lưu trữ mới sẽ bao gồm 3 mảng dữ liệu với các chức
năng sau đây:
+Mảng các số thực (hoặc phức) AA chứa các giá trị aij khác 0 của ma
trận A lưu trữ theo hàng. AA có độ dài là Nz.
+Mảng số nguyên JA chứa chỉ số cột tương ứng của các phần tử aij lưu
trữ trong AA. JA có độ dài là Nz.
+Mảng số nguyên IA chứa địa chỉ bắt đầu một hàng mới của ma trận A
trên mảng AA và JA (tương tự như một con trỏ). Độ dài của IA là
(n+1) với n là số hàng của ma trận A. Phần tử thứ (n+1),
IA(n+1)=IA(1)+Nz chứa địa chỉ một hàng giả tưởng n+1 của AA và
JA.

---------------------------------------------------- 126 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Như thế, ma trận A sẽ được lưu trữ theo sơ đồ lưu trữ mới như sau:

AA 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 15. 12.

JA 1 4 1 2 4 1 3 4 5 3 4 5

IA 1 3 6 10 12 13

Đây là sơ đồ lưu trữ phổ biến nhất để lưu trữ các ma trận thưa dạng
tổng quát, được gọi là sơ đồ lưu trữ hàng thưa thu gọn CSR (Compressed
Sparse Row). Sơ đồ này có nhiều ưu điểm hơn sơ đồ lưu trữ theo toạ độ vì nó
thuận tiện hơn trong việc thực hiện các phép toán đại số ma trận. Tuy nhiên
sơ đồ lưu trữ theo toạ độ lại đơn giản và linh hoạt hơn nhiều so với CSR và
thường được sử dụng làm dạng lưu trữ đầu vào cho các gói phần mềm về xử
lý ma trận thưa.
Với sơ đồ lưu trữ mới này, lượng dữ liệu tiết kiệm được là rất đáng kể.
Đối với Matlab, để lưu trữ một phần tử số thực, cần sử dụng 8bytes dữ liệu,
một phần tử nguyên, cần 4 bytes dữ liệu. Như vậy, với một ma trận kích
thước n×n, với Nz là số phần tử khác không thì:
+Cần (n2×8) bytes để lưu trữ theo dạng đầy đủ.
+Cần (Nz×8) bytes lưu trữ số thực + 4×(Nz+n+1) bytes lưu trữ số
nguyên để lưu trữ theo CSR.
Như vậy, với một ma trận kích thước 1000×1000, Nz=105 (tức mật độ là 10%)
+Lưu trữ dạng đầy đủ cần 8×1000×1000 = 8.000.000 bytes=7,6Mb
+Dạng CSR, cần 105×8+4×(105+1000+1) = 1204004 bytes=1,1Mb

---------------------------------------------------- 127 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Bên cạnh dạng lưu trữ CSR theo hàng, người ta cũng thường lưu trữ
theo cột thu gọn CSC (Compressed Sparse Column) và còn một số biến thể
khác của phương pháp lưu trữ kiểu này.
Ngoài ra thực tế cho thấy trong rất nhiều các bài toán ứng dụng, các
phần tử trên đường chéo của ma trận thường có giá trị khác 0 và thường được
truy cập đến nhiều hơn các phần tử khác, do đó thực hiện lưu trữ riêng biệt
các phần tử này. Sơ đồ lưu trữ hàng thưa biến thể MSR (Modified Sparse
Row) bao gồm 2 mảng số: mảng AA lưu trữ số thực (hoặc phức) và mảng các
số nguyên JA.
Mảng AA
+ n phần tử đầu tiên của AA lưu trữ các phần tử trên đường chéo của
AA theo thứ tự.
+Phần tử thứ (n+1) của AA có thể không sử dụng hoặc sử dụng để
chứa thông tin khác về ma trận A.
+Từ phần tử (n+2) trở đi của AA lưu trữ các phần tử khác không của A,
trừ phần tử trên đường chéo, lần lượt theo hàng.
Đối với mảng JA
+Tương ứng với phần tử AA(k), JA(k) chứa chỉ số cột của nó trong A.
+(n+1) giá trị đầu tiên của JA chứa vị trí bắt đầu của n hàng trong AA
và JA.
Do đó ma trận A được lưu trữ như sau

AA 1. 4. 7. 15. 12. * 2. 3. 5. 6. 8. 9. 10.

7 8 10 13 14 14 4 1 4 1 4 5 3
JA
Dấu * tượng trưng cho vị trí không được sử dụng. Chú ý rằng
JA(n)=JA(n+1)=14 chỉ ra rằng hàng cuối cùng là một hàng rỗng.

---------------------------------------------------- 128 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

5.5.1.2 Lưu trữ theo đường chéo


Một số ma trận có cấu trúc đường chéo (ví dụ các ma trận dải-banded
matrix), tức là các phần tử khác 0 chỉ phân bố trên một số lượng nhỏ các
đường chéo của ma trận. Các đường chéo này có thể được lưu trữ trong một
ma trận chữ nhật DIAG(1:n,1:Nd) trong đó n là tổng số hàng của ma trận ban
đầu, Nd là tổng số đường chéo trên đó phân bố các phần tử khác không.
Vị trí tương đối của mỗi đường chéo so với đường chéo chính được cho
trước và được lưu trữ trong một mảng số nguyên IOFF(1:Nd). Do đó phần tử có
vị trí (i,j) trong mảng DIAG sẽ chính là phần tử ai,i+IOFF(j) của ma trận ban đầu A.
Thứ tự lưu trữ của các đường chéo lưu trữ trong các cột của DIAG
thường không phải là vấn đề quá quan trọng, nhưng vì rất nhiều các phép toán
thường được thực hiện với các phần tử trên đường chéo chính nên người ta
thường lưu trữ đường chéo chính trên cột đầu tiên của ma trận DIAG. Lưu ý
là các đường chéo xung quanh đường chéo chính có số phần tử ít hơn n, nên
sẽ có những vị trí trong ma trận DIAG không được sử dụng.
Ví dụ: Ta sử dụng ma trận A sau đây để minh hoạ phương pháp lưu trữ theo
đường chéo
⎛ 1. 0. 2. 0. 0. ⎞
⎜ ⎟
⎜ 3. 4. 0. 5. 0. ⎟
A = ⎜ 0. 6. 7. 0. 8. ⎟
⎜ ⎟
⎜ 0. 0. 9. 10. 0. ⎟
⎜ 0. 0. 0. 11. 12. ⎟⎠

Nz = 12
Ma trận A sẽ được lưu trữ trong hai ma trận sau đây

1. * 2.
4. 3. 5.
DIAG = 7. 6. 8. IOFF = 0 -1 2
10. 9. *
12. 15. *

---------------------------------------------------- 129 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Lưu trữ theo dạng Ellpack-Itpack


Phương pháp lưu trữ này thường được sử dụng trên các máy tính vectơ
với giả thiết mỗi hàng của ma trận A, chỉ có tối đa Nd phần tử khác không,
trong đó Nd là một số nguyên nhỏ. Khi đó để lưu trữ A, cần sử dụng hai ma
trận kích thước n×Nd: COEF tương tự như DIAG và JCOEF chứa chỉ số cột
của các phần tử trong COEF.
+COEF(n×Nd) chứa các phần tử của A liệt kê theo hàng, thêm các phần
tử 0 vào COEF nếu hàng tương ứng của A có ít hơn Nd phần tử khác
không.
+JCOEF(n×Nd) chứa chỉ số cột tương ứng của các phần tử trong
COEF
Như vậy ma trận A sẽ được lưu trữ như sau

1. 2. 0. 1 3 1
3. 4. 5. 1 2 4
COEF = 6. 7. 8. JCOEF = 2 3 5
9. 10. 0. 3 4 4
15. 12. 0. 4 5 5

Như đã thấy trên ma trận COEF, một số hàng của ma trận được điền
vào phần tử 0 vì số phần tử khác 0 của hàng đó ít hơn Nd=3. Tương ứng với
vị trí đó, trong ma trận JCOEF, phải điền thêm một giá trị cụ thể tương ứng vì
JCOEF lưu trữ chỉ số cột của các phần tử trong COEF. Ta có thể lấy một giá
trị tuỳ ý, có thể trong khoảng từ 1 đến n, nhưng không nên cho những giá trị
quá đặc biệt (ví dụ cho tất cả là một hằng số) vì có thể ảnh hưởng đến hiệu
quả tính toán. Ở đây, trong JCOEF, ta chèn chỉ số hàng tương ứng vào những
phần tử 0 điền thêm trong COEF ( hàng 1, 4 và 5).

---------------------------------------------------- 130 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

5.5.2 Các phép toán cơ bản trên ma trận lưu trữ theo dạng thưa
Phép nhân ma trận-vectơ là phép toán rất quan trọng trong phần lớn các
thuật toán ứng dụng để giải các hệ thống tuyến tính thưa.
Sau đây ta sẽ trình bày một số thuật toán để thực hiện phép tính trên đối
với các sơ đồ lưu trữ đã trình bày ở mục trên, bao gồm
+Phép nhân ma trận-vectơ và giải hệ Lx = y trên ma trận lưu trữ theo
dạng hàng thưa thu gọn CSR.
+Phép nhân ma trận-vectơ trên ma trận lưu trữ theo dạng cột thưa thu
gọn CSC.
+Phép nhân ma trận-vectơ trên ma trận lưu trữ theo dạng đường chéo
5.5.2.1 Dạng thưa thu gọn
Thuật toán nhân ma trận-vectơ
1.Do i=1,2,…n
2. K1 = IA(i)
3. K2 = IA(i+1)-1
4. Y(i) = tíchvôhưóng(A(K1:K2), X(JA(K1:K2)))
5.EndDo
trong đó X(JA(K1:K2)) chính là vectơ X được thu gọn theo JA, chỉ lấy những
phần tử của X tương ứng với một giá trị khác 0 của hàng thứ i của ma trận A.
Mỗi một bước lặp, tương ứng với giá trị i, chỉ tính toán kết quả của
một phần tử Y(i). Đây là một ưu điểm của thuật toán, vì có thể áp dụng kỹ
thuật tính toán song song để tăng tốc độ tính toán.
Thuật toán giải hệ phương trình tuyến tính dạng tam giác dưới theo
phương pháp quét Lx = y
1.X(1)=Y(1)
2.Do i = 1,2,…n
3. K1 = IL(i)
4. K2 = IL(i+1)-1
5. X(i) = Y(i) – tíchvôhướng(AL(K1:K2),X(JL(K1:K2)))
6.EndDo

---------------------------------------------------- 131 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
trong đó AL,JL,IL lần lượt là ma trận lưu trữ phần tử khác 0 của ma trận tam
giác dưới L, mảng số nguyên chứa chỉ số cột của AL và con trỏ chỉ tới vị trí
bắt đầu các hàng mới trong AL và JL.
5.5.2.2 Dạng cột thưa thu gọn (Compressed Sparse Column)
1.Do i=1,2,…n
2. K1 = IA(i)
3. K2 = IA(i+1)-1
4. Y(JA(K1:K2)) = Y(JA(K1:K2) + X(i)*A(K1:K2)
5.EndDo
Ban đầu giả sử vectơ Y là vectơ không. Mỗi vòng lặp thứ i, vectơ Y
được cộng thêm một lượng bằng phần tử ứng với cột i của A (trên tất cả các
hàng) nhân với phần tử X(i).
Ở thuật toán này, vòng lặp bên ngoài không còn độc lập với nhau nữa,
vì thế không thể tính toán song song các thành phần như ở thuật toán của
CSR. Thực ra, cũng có thể thực hiện tính toán song song trong vòng lặp Do,
khi tính toán các thành phần của Y, nhưng vì ma trận là thưa nên số lượng các
phép tính có thể tính toán song song là khá nhỏ và vì thế không hiệu quả.
Chính vì vậy, trong trường hợp tính toán trên các máy tính hiệu năng cao, nếu
cần thiết thực hiện tính toán song song, chúng ta phải tìm cách thay đổi cấu
trúc dữ liệu cho phù hợp.
5.5.2.3 Lưu trữ theo hàng biến thể MSR
1.Do j=1,2,…Nd
2. JOFF = IOFF(j)
3. Do i=1,2,…n
4. Y(i) = Y(i) +DIAG(i,j)*X(JOFF+i)
5. EndDo
6.EndDo

---------------------------------------------------- 132 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Giả sử ban đầu Y là vectơ không. Tại mỗi vòng lặp, mỗi đường chéo
được nhân với vectơ X sau đó cộng kết quả vào vectơ Y.
Thuật toán này cũng có nhược điểm về khả năng tính toán song song
như thuật toán của cách lưu trữ theo CSC ở trên, nhưng nếu vẫn thực hiện tính
toán song song trong nội bộ vòng lặp thì nó vẫn tốt hơn phương pháp CSC.
Tuy nhiên phương pháp này nhìn chung là không tổng quát.

TỔNG KẾT

Nội dung phần A này đã trình bày một cách khái quát những khái niệm
chung nhất về ma trận thưa, về các dạng đặc biệt của ma trận thưa, lý thuyết
biểu đồ kề mô tả ma trận thưa, các thuật toán sắp xếp biểu đồ kề đưa ra thứ tự
hoán vị ma trận, các phương pháp tổ chức dữ liệu lưu trữ ma trận thưa và phát
triển các thuật toán để thực hiện các phép toán trên dạng dữ liệu ma trận thưa
vừa xây dựng. Các bước lớn cần tiến hành khi cần thiết phải xử lý một ma
trận thưa có thể tiển hành theo trình tự sau đây:
1.Kiểm tra tính thưa của ma trận (nếu cần thiết).
2.Xây dựng biểu đồ kề của ma trận.
3.Áp dụng thuật toán sắp xếp biểu đồ kề đưa ra thứ tự hoán vị ma trận p.
4.Hoán vị ma trận theo thứ tự p vừa tìm được .
5.Lưu trữ ma trận sau hoán vị theo dạng thưa.
6.Xây dựng thuật toán thực hiện các phép toán trên ma trận lưu trữ thưa
vừa thu được của bước trên.
Thứ tự biến đổi của ma trận được xử lý theo phương pháp đa màu có thể
biểu diễn như minh hoạ dưới đây.

---------------------------------------------------- 133 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
1.Ma trận tổng dẫn nút (thưa) của hệ thống 30bus-IEEE
0

10

15

20

25

30
0 5 10 15 20 25 30
nz = 112

2.Ma trận thu được sau khi hoán vị theo thuật toán đa màu
0

10

15

20

25

30
0 5 10 15 20 25 30
nz = 112

Tuy nhiên, như đã trình bày ở nội dung phần A, ta thấy rằng, có rất nhiều
dạng ma trận thưa khác nhau, mỗi một loại có một cấu trúc phân bố các phần

---------------------------------------------------- 134 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
tử rất riêng đặc trưng và tương ứng với nó là các thuật toán sắp xếp để hoán vị
ma trận đã cho về một dạng ma trận đặc biệt nào đó mong muốn. Ngoài ra
còn có một loạt các phương án tổ chức dữ liệu khác nhau nhằm lưu trữ ma
trận và đi kèm là các thuật toán tính toán tương ứng (chủ yếu là nhằm xử lý
phép nhân ma trận-vectơ). Chính vì vậy, việc lựa chọn phương pháp cụ thể
nào hoàn toàn phụ thuộc vào đặc điểm của bài toán ứng dụng (tức đặc điểm
ma trận ban đầu tương ứng) và phụ thuộc vào phương pháp giải (lặp hay giải
trực tiếp) được lựa chọn. Mỗi phương pháp giải lại có một quy trình và đặc
điểm riêng, áp dụng riêng cho từng lớp các bài toán và vì thế, để tận dụng ưu
thế và đảm bảo hiệu quả cao nhất của phép giải, cần lựa chọn các phương
pháp xử lý ma trận thích hợp nhất. Nội dung của phần B tiếp theo đây sẽ trình
bày một số các phương pháp giải lặp chủ yếu được sử dụng để giải hệ thống
phương trình tuyến tính Ax = b.

B. MỘT SỐ PHƯƠNG PHÁP LẶP TÌM NGHIỆM CỦA HỆ PHƯƠNG


TRÌNH TUYẾN TÍNH
Như đã trình bày ở các mục trên, các phương pháp giải một hệ thống các
phương trình tuyến tính có thể chia làm hai nhóm lớn:
-Nhóm các phương pháp giải trực tiếp (direct methods).
-Nhóm các phương pháp giải lặp (Iterative methods).
Ưu điểm của phương pháp giải trực tiếp là độ ổn định cao, lời giải chính
xác, tốc độ tính toán nhanh, thích hợp với nhiều lớp các bài toán. Tuy nhiên,
khi kích thước bài toán trở nên cực lớn, tới hàng triệu phương trình, thì
phương pháp giải trực tiếp bộc lộ ngay nhược điểm của mình chính là việc
yêu cẩu một khối lượng lớn dữ liệu cần được lưu trữ và xử lý, không dễ để
đáp ứng trong các ứng dụng thực tiễn. Ngược lại, các phương pháp lặp, tuy
tốc độ tính toán chậm hơn nhưng yêu cầu một lượng dữ liệu cần lưu trữ nhỏ

---------------------------------------------------- 135 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
và dễ dàng triển khai thực hiện trên các máy tính hiệu năng cao so với phương
pháp giải trực tiếp. Bên cạnh đó, cũng cần phải chỉ ra ngay các nhược điểm cơ
bản của phương pháp lặp đó là: mỗi phương pháp được áp dụng riêng cho
từng lớp các bài toán, độ ổn định số là không bảo đảm, yêu cầu thực hiện các
phép toán preconditioning,
Tuy nhiên xu thế hiện nay là nghiên cứu tìm ra các phương pháp giải lặp,
ngày càng xuất hiện nhiều các thuật toán mới hoàn toàn có thể cạnh tranh
được với các phương pháp giải trực tiếp.
Các kỹ thuật ma trận thưa hiện đã được nghiên cứu và áp dụng trong cả
các phương pháp giải trực tiếp và phương pháp giải lặp trong bài toán phân
tích tính toán hệ thống điện. Tuy nhiên, vấn đề áp dụng kỹ thuật ma trận thưa
trong các phương pháp giải trực tiếp đã được trình bày trong nội dung bản
“Đồ án tốt nghiệp” của anh Trần Quý Dương-HTĐ K45 , chính vì thế ở đây
chỉ trình bày nghiên cứu việc áp dụng kỹ thuật ma trận thưa trong nhóm các
phương pháp giải lặp giải hệ phương trình tuyến tính hoá.

5.6 CÁC PHƯƠNG PHÁP LẶP CƠ BẢN


Các phương pháp lặp đầu tiên sử dụng để giải các hệ thống tuyến tính
lớn đều dựa trên việc giảm dư theo toạ độ (relaxation). Khởi đầu với một giá
trị nghiệm xấp xỉ đầu, các phương pháp này thực hiện hiệu chỉnh một hoặc
một số phần tử của vectơ nghiệm theo thứ tự nhất định cho đến khi đạt được
sự hội tụ. Hiện nay, các phương pháp lặp này ít khi được sử dụng riêng biệt
mà kết hợp sử dụng với các phương pháp hiệu quả khác. Bên cạnh đó, trong
một số lĩnh vực vẫn sử dụng một số biến thể của các phương pháp lặp cơ bản
mà vẫn chứng tỏ được tính hiệu quả của nó. Dưới đây chúng ta sẽ trình bày
các phương pháp lặp sau:
+Phương pháp lặp Jacobi
+Phương pháp lặp Gauss-Seidel
+Phương pháp lặp SOR

---------------------------------------------------- 136 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

5.6.1 Phương pháp lặp Jacobi, Gauss-Seidel, SOR


Cho ma trận số thực A kích thước n×n và một vectơ số thực b kích
thước n. Bài toán đặt ra là: tìm vectơ x thuộc không gian Rn sao cho
Ax = b (5.1)
Phương trình trên là một hệ thống tuyến tính, A là ma trận hệ số, b là
vectơ vế phải và x là vectơ nghiệm (hay vectơ ẩn). Hầu hết các phương pháp
lặp này đều được xây dựng trên nguyên tắc: hiệu chỉnh một hoặc một số thành
phần của vectơ nghiệm để có được một xấp xỉ nghiệm mới tốt hơn xấp xỉ
nghiệm hiện tại cho đến khi phép lặp hội tụ. Có nhiều phương pháp thực hiện
hiệu chỉnh, một trong số đó là trong mỗi bước ta tìm cách triệt tiêu một hoặc
một số thành phần của vectơ dư r = b – Ax. Sau đây ta sẽ đi vào cụ thể từng
phương pháp.
Ma trận hệ số A được tách thành tổng sau:
A = D –E –F (5.2)
trong đó D là ma trận đường chéo của A (giả thiết tất cả các phần tử
trên đường chéo của A đều khác 0;
-E là ma trận tam giác trên chặt
-F là ma trận tam giác dưới chặt

Hình 5.10 Cấu trúc của ma trận A

---------------------------------------------------- 137 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Phương pháp Jacobi tính toán thành phần thứ i của xấp xỉ tiếp theo của
vectơ nghiệm x dựa trên điều kiện triệt tiêu thành phần thứ i của vectơ dư r
= b – Ax. Kí hiệu ξi( k ) là thành phần thứ i của xấp xỉ nghiệm xk và βi là thành
phần thứ i của vectơ vế phải b thì thì ta có điều kiện lặp
(b – Axk+1)i= 0
trong đó (b – Axk+1)i kí hiệu thành phần thứ i của vectơ b – Axk+1.
Từ đó dẫn tới công thức khai triển của phép lặp Jacobi:
n
aiiξi( k +1) = −∑ aijξ (j k ) + β i
j =1
j ≠i

⎛ n ⎞
1 ⎜ − a ξ ( k ) + β ⎟ i = 1, 2,..., n
⎜ ∑
hay ξ i
( k +1)
= ij j i⎟ (5.3)
aii ⎜ jj =≠1i ⎟
⎝ ⎠
Nếu viết dưới dạng ma trận, ta có:
xk +1 = D −1 ( E + F ) xk + D −1b (5.4)
Tương tự như vậy, phương pháp Gauss-Seidel cũng hiệu chỉnh thành
phần thứ i của xấp xỉ nghiệm hiện tại, theo thứ tự 1,2,…,n theo hướng triệt
tiêu thành phần thứ i của vectơ dư r = b – Ax. Tuy nhiên, khác với phương
pháp Jacobi, đối với phương pháp Gauss-Seidel, mỗi khi tìm được một thành
phần của xấp xỉ nghiệm mới, thành phần này sẽ được cập nhật ngay vào xấp
xỉ nghiệm mới và tham gia vào quá trình tính toán các thành phần xấp xỉ
nghiệm tiếp theo. Do đó, điều kiện triệt tiêu thành phần thứ i của của vectơ dư
r được viết như sau:
i −1 n
βi − ∑ aijξ (j k +1) − aiiξi( K +1) − ∑aξ ij
(k )
j =0 (5.5)
j =1 j =i +1

---------------------------------------------------- 138 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Từ đó ta có công thức lặp của Gauss-Seidel tiến
1 ⎛ i −1 n ⎞
ξ i
( k +1)
= ⎜ ∑ aijξ j − ∑ aijξ (j k ) +β i ⎟ i = 1, 2,..., n
( k +1)
(5.6)
aii ⎝ j =1 j =i +1 ⎠
Công thức (6.5) viết dưới dạng ma trận :
b + Exk+1 − Dxk +1 + Fxk = 0

hay xk +1 = ( D − E ) −1 Fxk + ( D − E ) −1 b (5.7)


Như vậy xấp xỉ mới xk+1 có thể được tính bằng hai cách: hoặc tính theo công
thức (5.6) hoặc giải hệ tuyến tính tam giác dưới (5.7) với ma trận hệ số (D-E)
Ngoài ra, phương pháp lặp Gauss-Seidel còn có thể được tính toán theo
thứ tự lùi :
( D − F ) xk +1 = Exk + b
Công thức khai triển của Gauss-Seidel lùi :
i −1 n
1
ξi( k +1) = (−∑ aij .ξ (j k ) − ∑ aij .ξ (j k +1) + β i ); i = n, n − 1,...,1
aii j =1 j =i +1

Tổng quát, phương pháp lặp Jacobi và Gauss-Seidel đều có cùng dạng công thức lặp :
Mxk +1 = Nxk + b = ( M − A) xk + b
trong đó A = M-N
+Đối với Jacobi M = D
+Đối với Gauss-Seidel tiến M = D –E
+Đối với Gauss-Seidel lùi M = D-F
Phương pháp giảm dư trội (overrelaxation) dựa trên công thức tách sau đây
ω A = ( D − ω E ) − (ω F + (1 − ω ) D)
Dựa trên công thức tách ma trận ở trên ta có công thức lặp của phương pháp
giảm dư trội liên tiếp (Successive Over Relaxation- SOR).
( D − ω E ) xk +1 = [ω F + (1 − ω ) D] xk + ω b

---------------------------------------------------- 139 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
ở dạng khai triển
ξ i( k +1) = ωξiGS + (1 − ω )ξ i( k ) , i = 1, 2,..., n

với ξi là thành phần xấp xỉ nghiệm mới tính theo phương pháp Gauss-Seidel
GS

1 ⎛ i −1 n ⎞
ξ i
GS
= ⎜ ∑ aijξ j − ∑ aijξ (j k ) +β i ⎟
( k +1)

aii ⎝ j =1 j = i +1 ⎠
5.6.2 Sơ đồ giảm dư theo khối (Block relaxation)
Sơ đồ giảm dư theo khối là phép tổng quát hoá của phương pháp giảm
dư theo “điểm” của các thuật toán trình bày ở trên. Khác với sơ đồ điểm, chỉ
hiệu chỉnh một thành phần nghiệm của vectơ xấp xỉ hiện tại, sơ đồ khối thực
hiện hiệu chỉnh một khối con vectơ nghiệm trong cùng một bước tính toán.
Khi đó ma trận A, vectơ vế phải và vectơ nghiệm được phân thành các
khối ma trận con như sau:

⎡ A11 A12 . . . A1 p ⎤ ⎡ ξ1 ⎤ ⎡ β1 ⎤
⎢A ⎥ ⎢ ⎥ ⎢β ⎥
⎢ξ 2 ⎥
⎢ 21 A22 . . . A2 p ⎥
⎢ 2⎥
⎢ . . . . ⎥ ⎢.⎥ ⎢ . ⎥
A=⎢ ⎥ ; x = ⎢ ⎥ ;b = ⎢ ⎥
⎢ . . . . ⎥ ⎢.⎥ ⎢ . ⎥
⎢ . . . . ⎥ ⎢.⎥ ⎢ . ⎥
⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎣⎢ Ap1 Ap 2 . . . App ⎦⎥ ⎣⎢ξ p ⎦⎥ ⎣⎢ β p ⎦⎥

trong đó việc phân tập của b và x thành các khối vectơ con βi và ξi là
duy nhất và phải tương ứng với cách phân khối của ma trận A. Khi đó, với
p

mọi vectơ x ta có ( A.x )i = ∑ Aij .ξ j


j =1

trong đó (y)i là thành phần thứ i của vectơ y tương ứng với cách phân
khối như trên. Các khối ma trận con trên đường chéo là các ma trận vuông
Aii và giả thiết chúng khả nghịch.

---------------------------------------------------- 140 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Tương tự như phương pháp điểm, ta tách ma trận A thành tổng sau:

A=D – E – F

⎛ A11 ⎞ ⎛ 0 ⎞
⎜ ⎟ ⎜ ⎟
⎜ A22 ⎟ ⎜ A21 0 ⎟
⎜ . ⎟ ⎜ . . . ⎟
với D = ⎜ ⎟ ; E = −⎜ . . .

⎜ . ⎟ ⎜ ⎟
⎜ . ⎟ ⎜ . . . ⎟
⎜ ⎟ ⎜ ⎟
⎜ App ⎟⎠ ⎜ Ap1 Ap 2 . . . 0 ⎟⎠
⎝ ⎝

⎛0 A12 . . . A1 p ⎞
⎜ ⎟
⎜ 0 . . . A2 p ⎟
⎜ . . ⎟
F = −⎜ ⎟
⎜ . . ⎟
⎜ . . ⎟
⎜⎜ ⎟
⎝ 0 ⎟⎠

Từ đó ta xây dựng được công thức lặp tổng quát hoá (dạng khối) của 3
phương pháp lặp “điểm” kể trên.

Phương pháp Jacobi khối


Thành phần nghiệm thứ i của xấp xỉ nghiệm mới được tính toán như sau:
Aiiξi( k +1) = (( E + F ) xk )i + βi

hay ξi( k +1) = Aii −1 (( E + F ) xk )i + Aii −1β i


viết dưới dạng ma trận
xk +1 = D −1 ( E + F ) xk + D −1b

lúc này βi , ξi( k ) là các vectơ con của vectơ b và x; ma trận D, E, F là các ma
trận với các phần tử là các khối ma trận con như đã định nghĩa ở trên.

---------------------------------------------------- 141 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Thuật toán Jacobi khối được xây dựng dựa trên cách phân khối của ma
trận ở trên. Gọi S là tập các ẩn của hệ S = {1, 2,..., n} . Giả sử bằng cách nào đó,

ta tìm ra được một cách phân tập của S thành các tập con Si(i=1,2,…p) sao
p
cho Si ⊆ S , ∪S
i =1
i = S , tức là các tập con Si phải khác nhau, nhưng có thể trùng

lên nhau một phần.


Si = {mi (1), mi (2),..., mi (ni )}

với ni là kích thước của Si và mi là các vectơ cơ sở của Si


⎧⎪Vi = [emi (1) , e mi (2) ,..., e mi ( ni ) ] ; i = 1, 2, ..., p
Kí hiệu ⎨
⎪⎩ Wi = [η mi (1) .e mi (1) ,ηmi (2) .emi (2) ,...,ηmi ( ni ) .emi ( ni ) ] ; i = 1, 2, ..., p

Trong đó :
ej : cột thứ j của ma trận đơn vị n x n ; j = mi(1), mi(2), …, mi(ni)
ηj : hệ số trọng lượng được chọn sao cho WiT.Vi = I(ni x ni)
Trong trường hợp các tập con Si tạo thành một phân hoạch của S, tức là
⎧ S ∩ S = ∅(i ≠ j )
⎪ i j

⎨ Si , S j ⊆ S ,ta có ηj = 1 ⇒ Wi = Vi

∪ Si = S
⎪⎩i =1,2,.., p

Gọi Aij là ma trận kích thước ni×nj thì ma trận Aij có thể tách từ A theo
công thức sau :
Aij = WiT AVi

và các vectơ phân hoạch ξi = Wi T x, β i = WiT b

chính là phép chiếu từ không gian Rn vào


T
Nhận xét rằng tích VW
i i

không gian con Ki có cơ sở là các vectơ cột {mi (1), mi (2),..., mi (ni )} .

---------------------------------------------------- 142 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

+Vectơ ni - chiều Wi x biểu diễn phép chiếu từ không gian Rn vào


T

T
không gian con Ki. Vì thế Wi được gọi là toán tử thu gọn.
+Ngược lại, Vi thực hiện mở rộng một vectơ y trong không gian con Ki
thành một vectơ Viy trong không gian Rn. Vì thế Vi được gọi là toán tử mở rộng.
p

Do đó ta có x = ∑ Vi .ξi
i =1

Mỗi một thành phần của xấp xỉ nghiệm mới trong phép lặp Jacobi khối
thu được dựa trên việc áp dụng điều kiện là: phép chiếu của vectơ dư trên
không gian con sinh bởi Si bằng 0, tức là:
⎡ ⎛ p
⎞⎤
Wi ⎢b − A ⎜ VW
T
i i
T
xk +1 + ∑ V jW j k ⎟⎥ = 0
T
x
⎢⎣ ⎝ j ≠ i ⎠ ⎥⎦
Để xây dựng công thức lặp dạng khai triển, ta thực hiện biến đổi phương trình
trên như sau:
⎡ ⎛ p
⎞⎤
WiT ⎢b − A ⎜ VW
i i
T
xk +1 + ∑ V jW jT xk ⎟ ⎥ = 0
⎣⎢ ⎝ j ≠i ⎠ ⎦⎥
⎡ ⎛ p
⎞⎤
⇔ WiT ⎢b − A ⎜ VW
i i
T
xk +1 + ∑ V jW T
x
j k − VW
i i
T
xk ⎟⎥ = 0
⎣⎢ ⎝ j = 1 ⎠ ⎦⎥
⇔ WiT ⎡⎣b − A VW (
i i xk +1 + xk − VW
T

i i xk ⎦ = 0
T
)
⇔ WiT b − WiT A VW (
i i xk +1 + xk − VW
T
i i xk = 0
T
)
⇔ WiT b − WiT AVW
i i xk +1 + Wi Axk − Wi AVW
T T T
i i xk = 0
T

⇔ WiT b − AiiWi T xk +1 + WiT Axk − AiiWi T xk = 0


⇔ WiT xk +1 = WiT xk + Aii−1WiT ( b − Axk )

viết dưới dạng khai triển :

ξi( k +1) = ξi( k ) + Aii−1WiT (b − Axk ); i = 1, p

---------------------------------------------------- 143 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Từ đó ta có thuật toán lặp Jacobi khối


1. For k = 0, 1, …, until convergence Do:
2. For i = 1,2, …, p Do :
3. Solve Aii.δi = WiT.(b – A.xk)
4. Set xk+1 : = xk + Vi.δi
5. EndDo.
6. EndDo.

Cũng tương tự như phương pháp lặp điểm, phương pháp Gauss-Seidel
khối cũng chỉ khác Jacobi khối ở điểm là các thành phần nghiệm hiệu chỉnh
ngay sau khi tính toán được sẽ cập nhật ngay vào xấp xỉ nghiệm mới và tham
gia vào quá trình tính toán các thành phần nghiệm tiếp theo.
Thuật toán lặp Gauss-Seidel khối
1.Until convergence Do:
2. For i = 1,2, …, p Do :
3. Solve Aii.δi = WiT.(b – A.x)
4. Set x : = x + Vi.δi
5. EndDo
6.EndDo

Phương pháp Gauss-Seidel có ưu điểm hơn hẳn phương pháp Jacobi


về phương diện lưu trữ dữ liệu vì xấp xỉ nghiệm mới được ghi đè lên vectơ
nghiệm hiện tại nên chỉ cần khai báo một vectơ để lưu trữ nghiệm và vì thế
phương pháp này cũng hội tụ nhanh hơn.
Tuy nhiên phương pháp Jacobi lại có ưu điểm về khả năng tính toán
song song do tính độc lập lẫn nhau giữa quá trình tính toán các thành phần
nghiệm.

---------------------------------------------------- 144 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

5.6.3 Điều kiện hội tụ của các phương pháp lặp cơ bản
A - Phương pháp Jacobi và Gauss-Seidel
Định nghĩa Một ma trận A gọi là
+Chéo trội yếu nếu
n
aii ≥ ∑ aij , i = 1, 2,..., n
j =1
j ≠i

+Chéo trội chặt nếu


n
aii > ∑ aij , i = 1, 2,..., n
j =1
j ≠i

+Chéo trội tối giản nếu A là tối giản và


n
aii ≥ ∑ aij , i = 1, 2,..., n
j =1
j ≠i

và tồn tại ít nhất một giá trị i thoả điều kiện chéo trội chặt.

Định lý Cho hệ tuyến tính Ax = b


Nếu ma trận A là chéo trội chặt hoặc chéo trội tối giản thì bài toán lặp
Jacobi hoặc Gauss-Seidel tương ứng sẽ hội tụ với mọi giá trị xấp xỉ đầu x0.

B - Phương pháp SOR


Định lý Cho hệ tuyến tính Ax = b
Nếu ma trận A đối xứng, với các phần tử trên đường chéo chính là các số
dương và với 0<ω<2, phương pháp lặp SOR sẽ hội tụ với mọi giá trị xấp xỉ
đầu x0 nếu và chỉ nếu A là xác định dương.

---------------------------------------------------- 145 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
5.7 PHƯƠNG PHÁP LẶP DỰA TRÊN PHÉP CHIẾU
5.7.1 Phép chiếu
Phần lớn các phương pháp giải lặp hiện tại được sử dụng để giải quyết
các hệ thống tuyến tính lớn là dựa trên việc áp dụng phép chiếu theo cách này
hay cách khác. Phép chiếu chính là một phương pháp chính tắc để tìm một
xấp xỉ nghiệm của hệ trong một không gian con. Dưới đây ta sẽ trình bày
những khái niệm cơ sở về phép chiếu và một số phương pháp lặp dựa trên nội
dung của phép chiếu.
5.7.1.1 Các khái niệm và thuật toán cơ bản
Xem xét một hệ thống tuyến tính Ax = b
trong đó A là ma trận số thực n×n. Trong phần này ta sử dụng chung kí hiệu
A để kí hiệu ma trận hệ số của hệ tuyến tính đã cho và phép ánh xạ tuyến tính
trong không gian Rn mà nó biểu diễn.
Ý tưởng chính của phép chiếu là việc giải hệ tuyến tính đã cho bằng cách
tìm một xấp xỉ nghiệm trong một không gian con của Rn. Nếu gọi K là không
gian con tìm kiếm và m là số chiều của K thì, tổng quát, cần tìm kiếm m điều
kiện ràng buộc để giải ra xấp xỉ nghiệm đó trong không gian con K. Thông
thường người ta thường biểu diễn m ràng buộc trên bằng cách áp dụng m điều
kiện trực giao độc lập. Cụ thể, vectơ dư r = b-Ax phải trực giao với m vectơ
độc lập tuyến tính. Điều kiện này dẫn đến phải định nghĩa một không gian
con m chiều L và được gọi là không gian con ràng buộc hay không gian trái.
Phương pháp đơn giản trên được sử dụng trong rất nhiều các phương pháp
toán học khác nhau và được gọi là điều kiện Petrov-Galerkin.
Người ta chia các phương pháp chiếu ra thành hai nhóm lớn: Nhóm các
phương pháp chiếu trực giao và nhóm các phương pháp chiếu xiên. Trong
phương pháp chiếu trực giao, không gian con K và L trùng nhau. Ngược lại,

---------------------------------------------------- 146 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
trong phép chiếu xiên, không gian con K và L khác nhau và có thể hoàn toàn
không liên hệ gì với nhau.
1.Phương pháp chiếu tổng quát
Gọi A là ma trận thực n×n và K, L là 2 không gian con m chiều của
không gian Rn. Một phép chiếu trên không gian con K và trực giao với không
gian con L là một quá trình tìm xấp xỉ nghiệm x của hệ tuyến tính Ax = b
bằng cách áp đặt hai điều kiện x thuộc K và vectơ dư tương ứng trực giao với
L, tức là :
Tìm x ∈ K sao cho b − Ax ⊥ L
Nếu cần sử dụng thêm điều kiện về xấp xỉ nghiệm ban đầu x0, thì xấp xỉ
nghiệm lúc này cần tìm trong không gian affin x0 + K và bài toán được diễn
đạt lại như sau :
Tìm x ∈ x0 + K sao cho b − Ax ⊥ L
Gọi r0 là vectơ dư ban đầu, ta có r0 = b-Ax0 và điều kiện b − Ax ⊥ L
được mô tả như sau : b − A( x0 + δ ) ⊥ L

hay r0 + Aδ ⊥ L

Và bài toán trở về :


x = x0 + δ ; δ ∈ K
(5.8)
( r0 − Aδ , ω ) = 0; ∀ω ∈ L
Nội dung bài toán được minh hoạ như hình vẽ dưới đây

Hình5.11 Giải thích phép chiếu trực giao

---------------------------------------------------- 147 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Đây chính là nội dung của một bước thực hiện phép chiếu ở dạng tổng
quát nhất của nó. Rất nhiều các phương pháp giải chuẩn hiện tại đều thực hiện
áp dụng liên tiếp các bước chiếu như trên. Tổng quát, mỗi bước thực hiện
phép chiếu lại sử dụng một cặp không gian tìm kiếm và không gian ràng buộc
mới cùng với xấp xỉ nghiệm ban đầu x0 chính là xấp xỉ nghiệm vừa thu được
sau khi thực hiện một bước chiếu trước đó.
Phương pháp chiếu chính là cơ sở của hầu như tất cả các phương pháp
tính toán đang được sử dụng trong khoa học ứng dụng. Cụ thể, các phương
pháp lặp cơ bản mà ta đã trình bày ở mục 6.1 ở trên chính là một dạng của
phương pháp chiếu. Với phương pháp lặp Gauss-Seidel, một bước lặp cơ bản
tính toán thành phần nghiệm thứ i của xấp xỉ nghiệm chính là một phép chiếu
trực giao, với không gian con K= L = span{ei}. Bất cứ khi nào một xấp xỉ
nghiệm được tính toán thông qua m bậc tự do (m ẩn) và m điều kiện ràng
buộc, thì khi đó một phép chiếu được định nghĩa.
2. Dạng ma trận của phương pháp chiếu
Gọi V = {v1 , v2 ,..., vm } W = {w1 , w2 ,..., wm } lần lượt là ma trận kích thước

n×m trong đó các vectơ cột của V tạo thành một cơ sở của không gian K,
vectơ cột của W tạo thành cơ sở của không gian L. Nếu xấp xỉ nghiệm được
viết dưới dạng x = x0 + Vy thì từ điều kiện trực giao của vectơ dư r với không
gian con L, ta có :
( r0 − AVy , ω ) = 0; ∀ω ∈ L

hay W T AVy = W T r0

Giả thiết ma trận W T AV là khả nghịch, ta sẽ có công thức để tìm xấp xỉ


nghiệm x :
x = x0 + V (W T AV ) −1W T r0

---------------------------------------------------- 148 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Thuật toán chiếu mẫu (Prototype Projection Method)


1. Until convergence , Do:
2. Select a pair of subspace K and L
3. Choose bases V = [ v1, v2, …, vm] n x m and W = [w1, w2, …, wm] n x m for
K &L
4. r : = b – Ax
5. y : = (WTAV)-1.WT.r
6. x : = x + Vy
7. EndDo
Cần lưu ý rằng điều kiện để thuật toán trên thực hiện được là ma trận
W T AV khả nghịch, điều mà chưa chắc được thoả mãn ngay cả khi ma trận A
là khả nghịch.
Chính vì điều kiện khả nghịch của ma trận W T AV như đã nói ở trên,
dưới đây ta sẽ đưa ra một mệnh đề để phần nào giới hạn các phép chọn không
gian con L và K sao cho phép toán trên luôn đảm bảo điều kiện thực hiện.
Mệnh đề Nếu A,L,K là các ma trận thoả mãn một trong hai điều kiện sau
1.A là xác định dương và L = K hoặc
2.A khả nghịch và L =AK
Khi đó ma trận B = W T AV khả nghịch với mọi cơ sở V và W của K và L.
Ngoài ra nếu A là đối xứng xác định dương thì B cũng đối xứng xác
định dương (tức khả nghịch).

5.7.1.2 Lý thuyết tổng quát


Trong nội dung của mục này, chúng ta sẽ đưa ra các cơ sở lý luận để có
thể đánh giá được một cách tổng quan về mức độ chính xác của xấp xỉ
nghiệm thu được từ quá trình thực hiện phép chiếu tổng quát.

---------------------------------------------------- 149 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

1.Các mệnh đề về kết quả tối ưu của phép chiếu


Mệnh đề 1 Giả thiết A là ma trận đối xứng xác định dương và L = K. Khi đó,
vectơ x là kết quả của phép chiếu trực giao lên không gian K với xấp xỉ
nghiệm ban đầu x0 khi và chỉ khi nó cực tiểu hoá chuẩn A của sai số trên
không gian x0 + K , tức là :

E ( x ) = min E ( x )
x0 + K

với E ( x ) ≡ ( A( x* − x ), x* − x ) , 2 x* là vectơ nghiệm chính xác của hệ tuyến


tính Ax=b.
Mệnh đề 2 Nếu A là một ma trận vuông và giả thiết L = AK. Khi đó vectơ x
là kết quả của một phép chiếu xiên lên không gian K và trực giao với L với
xấp xỉ nghiệm ban đầu x0 nếu và chỉ nếu nó cực tiểu hoá chuẩn 2 của vectơ dư
(b-Ax) trên không gian x0 + K , tức là :

R ( x ) = min R ( x )
x0 + K

trong đó R ( x) ≡ b − Ax 2

2.Biểu diễn dưới dạng ma trận chiếu


Ở đây chúng ta sẽ xem xét hai trường hợp quan trọng của phép chiếu,
đó là trường hợp L=K và L=AK. Trong các trường hợp này, kết quả của phép
chiếu sẽ được biểu diễn thông qua khái niệm về phép chiếu trực giao trên
vectơ dư ban đầu và vectơ sai số ban đầu.
Trường hợp L = AK
Gọi r0 = b-Ax0 là vectơ dư ban đầu và r = b − Ax là vectơ dư tương
ứng thu được sau phép chiếu lên không gian K và trực giao với L = AK. Khi
đó ta có :
r = b − A( x0 + δ ) = r0 − Aδ

---------------------------------------------------- 150 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Vì δ được tính toán từ điều kiện trực giao của r0 − Aδ với AK. Vì thế
vectơ Aδ chính là kết quả của phép chiếu trực giao vectơ r0 lên không gian
con AK.

Hình 5.12 Quá trình chiếu khi L = AK


Từ đó ta có mệnh đề sau :
Mệnh đề 1 Gọi x là xấp xỉ nghiệm thu được từ phép chiếu lên không gian K
và trực giao với L=AK và gọi r = b − Ax là vectơ dư thu được tương ứng.
Khi đó ta có:
r = ( I − P ) r0
−1
trong đó P là ma trận chiếu trực giao lên không gian AK, P = V (W V ) W
H H

Từ mệnh đề 1 ta có thể suy ra rằng chuẩn 2 của vectơ dư thu được sau
khi thực hiện một phép chiếu sẽ không lớn hơn chuẩn 2 của vectơ dư ban đầu.
r 2
≤ r0 2

Và do vậy, các phương pháp chiếu dạng này được gọi tên là phương pháp
chiếu dựa trên vectơ dư.
Trường hợp L = K

Giả sử A là đối xứng xác định dương. Gọi d 0 = x* − x0 là sai số ban

đầu và d = x* − x với x = x0 + δ là vectơ xấp xỉ nghiệm thu được từ phép


chiếu. Khi đó ta có :

Ad = r = A( d 0 − δ )

---------------------------------------------------- 151 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Trong đó δ thu được từ việc áp dụng điều kiện trực giao của vectơ dư
r0 − Aδ với không gian K :

( r0 − Aδ , ω ) = 0, ∀ω ∈ K
Điều kiện trên tương đương với :
( A( d 0 − δ ), ω ) = 0, ∀ω ∈ K
Khi A là đối xứng xác định dương thì biểu thức trên chính là một nội tích và
được kí hiệu (.,.)A. Do đó điều kiện trên được viết lại như sau:
( d 0 − δ , ω ) A = 0, ∀ω ∈ K

Ý nghĩa của nó như sau: vectơ δ chính là phép chiếu trực giao theo ma
trận A của vectơ sai số ban đầu d0 lên không gian con K.
Mệnh đề 2 Gọi x là xấp xỉ nghiệm thu được từ phép chiếu trực giao lên

không gian K và gọi d = x* − x là vectơ sai số tương ứng. Khi đó

d = ( I − PA ) d 0
trong đó PA là ma trận chiếu lên không gian con K, và phép chiếu là trực giao
theo nghĩa của tích trong với A.
Từ mệnh đề trên, kết hợp với mệnh đề 1 của mục 1, ta suy ra, chuẩn A
của vectơ sai số d thu được sau một phép chiếu không vượt quá chuẩn A của

vectơ sai số ban đầu d 0 .

d ≤ d0 A
A

Các phương pháp chiếu dạng này được gọi tên là phương pháp chiếu
dựa trên vectơ sai số.

---------------------------------------------------- 152 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

3.Giới hạn sai số tổng quát của phép chiếu


Nếu như không tồn tại một vectơ nào của không gian con K đủ gần với
vectơ nghiệm x thì khi đó không thể nào tìm được trong K một xấp xỉ nghiệm
tốt x của vectơ nghiệm x cần tìm. Chính vì vậy, các kết quả thu được khi áp
dụng phép chiếu trên không gian con K sẽ cho sai số lớn. Mặt khác, nếu xung
quanh nghiệm x tồn tại một số vectơ có khoảng cách đến nó rất nhỏ thì một
câu hỏi đặt ra là : Làm cách nào để đánh giá được một xấp xỉ nghiệm thu
được từ phép chiếu là tốt hay không tốt? Nội dung mục này sẽ tìm cách để trả
lời câu hỏi trên.

L
Gọi PK là ma trận chiếu trực giao lên không gian con K và QK là ma
trận chiếu xiên lên không gian con K và trực giao với không gian L. Các ma
trận chiếu này được định nghĩa như sau:
PK x ∈ K , x − PK x ⊥ L
QKL x ∈ K , x − QKL x ⊥ L
Kí hiệu Am là một toán tử Am = QKL APK và không mất tính tổng quát, ta
giả sử x0 = 0. Từ đó bài toán chiếu ( 6.8) được diễn đạt như sau:
Tìm x ∈ K sao cho QKL (b − Ax) = 0
hoặc Am x = QKL b, x ∈ K
Tức là một hệ tuyến tính n chiều đã được xấp xỉ bởi một hệ tuyến tính m chiều.

---------------------------------------------------- 153 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Mệnh đề Giả thiết không gian con K là bất biến với A, x0 = 0 và b ∈ K. Khi
đó lời giải xấp xỉ thu được từ bất kì phép chiếu (trực giao hay xiên) nào trên
không gian con K đều là lời giải chính xác.
Một đại lượng rất quan trọng đặc trưng cho tính chất hội tụ của các
phương pháp chiếu đó chính là khoảng cách ( I − PK ) x* 2 của nghiệm chính xác

x* đến không gian con K. Một xấp xỉ nghiệm tốt không thể tìm kiếm được
trong không gian con K nếu như đại lượng ( I − PK ) x* 2
có giá trị lớn, bởi vì

x − x* 2 ≥ ( I − PK ) x* 2

( I − PK ) x*
Mặt khác, đại lượng 2
chính là sin của góc nhọn hợp bởi
x* 2

vectơ nghiệm x* và không gian con K. Định lý dưới đây chỉ ra giới hạn trên
cho chuẩn vectơ dư của lời giải chính xác ứng với toán tử xấp xỉ Am.
Định lý Gọi γ = QKL A( I − PK ) 2 và giả thiết b ∈ K và x0 = 0. Khi đó nghiệm

chính xác x* của bài toán Ax = b thoả mãn bất đẳng thức sau:
b − Am x* 2 ≤ γ ( I − PK ) x* 2

5.7.2 Các thuật toán lặp dựa trên phép chiếu


5.7.2.1 Các phép chiếu trên không gian một chiều
Dưới đây ta sẽ xem xét một số phương pháp chiếu dựa trên các không
gian con K và L được chọn là các không gian con một chiều. Các không gian
một chiều là các không gian sinh bởi một vectơ sinh, tức là K = span {v} và L
= {w} với v và w là 2 vectơ sinh lần lượt của K và L.
Kí hiệu r = b –Ax là vectơ dư của vectơ nghiệm xấp xỉ hiện tại x.
Xấp xỉ nghiệm hiện tại sẽ có dạng x ← x + α v , nghĩa là tính toán x + α v
(r , ω )
và ghi đè lên vectơ x.Điều kiện Petrov-Galerkin r − Aδ ⊥ ω dẫn tới α =
( Av, ω )

---------------------------------------------------- 154 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

1.Thuật toán độ giảm cực đại (Steepest Descent)


Độ giảm cực đại được sử dụng khi ma trận A là đối xứng xác định
dương, bao gồm việc chọn v = r và w = r tại mỗi bước thực hiện phép chiếu.
Thuật toán Steepest Descent
1. Untill convergence, Do:
2. r ← b – A.x
3. α ← (r,r)/(Ar,r)
4. x ← x + α.r
5. EndDo
Mỗi bước của phép lặp thực hiện cực tiểu hoá hàm
2
f ( x) = x − x* A
= ( A( x − x* ), ( x − x* ))

Định lý Giả thiết A là ma trận đối xứng xác định dương. Khi đó chuấn A của
vectơ sai số d k = x* − xk có được từ thuật toán Steepest Descent thoả mãn bất
đẳng thức sau:
λmax − λmin
d k +1 ≤ d
A
λmax + λmin k A

và thuật toán Steepest Descent hội tụ với mọi giá trị xấp xỉ đầu x0.

2.Thuật toán cực tiểu chuẩn dư (Minimal Residual)


Ở đây giả thiết ma trận A không cần thiết phải đối xứng nhưng nhất
thiết phải xác định dương. Tại mỗi bước lặp, chọn v = r và w = Ar
Thuật toán Minimal Residual (MR)
1. Untill convergence, Do:
2. r ← b – A.x
3. α ← (r,r)/(Ar,Ar)
4. x ← x + α.r
5. EndDo

---------------------------------------------------- 155 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
2
Mỗi bước của phép lặp, thực hiện cực tiểu f ( x) = b − Ax 2 theo hướng r.

Thuật toán sẽ hội tụ khi A là xác định dương.


Định lý Gọi A là ma trận số thực xác định dương và kí hiệu
( A + AT )
μ = λmin ,σ = A 2
2
khi đó vectơ dư có được sau mỗi bước lặp của thuật toán MR thoả mãn bất
1/ 2
⎛ μ2 ⎞
đẳng thức rk +1 ≤ ⎜1 − 2 ⎟ rk 2 . Và thuật toán MR hội tụ với mọi giá trị xấp
⎝ σ ⎠
2

xỉ đầu x0.

3.Thuật toán độ giảm cực đại chuẩn dư (Residual Norms Steepest Descent)
Ở đây chỉ giả thiết ma trận A là ma trận (vuông) khả nghịch. Tại mỗi
bước lặp, chọn v = AT r và ω = Av . Thứ tự tính toán sẽ như sau
r ← b − Ax, v = AT r
2 2
α ← v 2 / Av 2

x ← x +αv

Tuy nhiên để giảm số phép tính nhân ma trận-vectơ (3 phép tính), ta


hiệu chỉnh một chút thuật toán đã cho, thuật toán mới chỉ yêu cầu thực hiện 2
phép toán nhân ma trận-vectơ.
Thuật toán Residual Norms Steepest Descent (RNSD)
1. Compute r : = b – Ax
2. Until convergence , Do :
3. v : = ATr
4. Compute Av and α : = v 2
2 / Av 2
2

5. x : = x + α.v
6. r : = r - α.A.v
7. EndDo
2
Mỗi bước lặp thực hiện cực tiểu hoá f ( x) = b − Ax 2 theo hướng −∇f

---------------------------------------------------- 156 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Thực chất, thuật toán RNSD chính là thuật toán Độ giảm cực đại thực
hiện trên hệ phương trình chuẩn tắc của hệ Ax =b, tức là hệ tương đương
AT Ax = AT b . Vì AT A là đối xứng xác định dương khi A khả nghịch nên theo

định lý ở mục 1 (6.6.6.1), thuật toán RNSD hội tụ với mọi xấp xỉ đầu x0.
5.7.2.2 Thuật toán chiếu cộng và chiếu nhân (Additive and Muliplicative Processes)
Hai thuật toán chiếu cộng và chiếu nhân (Additive and Multiplicative
Processes) thực chất là phép tổng quát hoá của 2 thuật toán Jacobi và Gauss-
Seidel khối đã trình bày ở trên. Mỗi một bước lặp của Jacobi và Gauss-Seidel
khối bên trong vòng lặp chính (dòng số 2 đến số 5) chính là một phép chiếu
trực giao lên không gian Ki=span{Vi} (K=L) và thực hiện hiệu chỉnh một
nhóm các thành phần xấp xỉ nghiệm mới tương ứng với không gian con Ki.
Tổng quát, thuật toán chiếu cộng cho phép chọn một thứ tự bất kì của
không gian con Ki, không chỉ là không gian sinh bởi các cột của ma trận đơn
vị. Các không gian con Ki có thể trùng nhau nhưng nên khác nhau.
Nếu cho trước n hệ trực giao Vi và span{Vi} ≠ span{Vj} nếu i≠j.
Với Vi = ⎡⎣emi (1) , emi (2) ,...emi ( ni ) ⎤⎦ và kí hiệu Ai = ViT AVi

Khi đó thuật toán chiếu cộng được biểu diễn như sau:
yi = Ai−1Vi T (b − Axk ), i = 1,..., p
p
xk +1 = xk + ∑ Vi yi
i =1

Thuật toán chiếu cộng


1.For k=0,1,…Until convergence, Do:
2. For i=1,2,…,p Do:
3. Solve Ai yi = ViT (b − Axk )
4. EndDo
p
5. Set xk +1 = xk + ∑ Vi yi
i =1

6.EndDo

---------------------------------------------------- 157 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Thông thường, thuật toán chiếu cộng được kết hợp sử dụng một hệ số gia tốc w :
yi = Ai−1Vi T (b − Axk ), i = 1,..., p
p
xk +1 = xk + ω ∑ Vi yi
i =1

Tổng quát hơn nữa, mỗi một phép chiếu lại sử dụng một hệ số gia tốc riêng wi :
yi = Ai−1Vi T (b − Axk ), i = 1,..., p
p
xk +1 = xk + ∑ ωiVi yi
i =1

Tương tự như phương pháp Jacobi và Gauss-Seidel, thuật toán chiếu


nhân chỉ khác thuật toán chiếu cộng ở một điểm là : các thành phần nghiệm
vừa tính toán được sẽ được cập nhật vào xấp xỉ nghiệm hiện tại và tham gia
vào quá trình tính toán các thành phần nghiệm tiếp theo.
Thuật toán chiếu nhân (Multiplicative Projection)
1.Until convergence, Do:
2. For i=1,2,…,p Do:
3. Solve Ai yi = ViT (b − Axk )
4. Set xk +1 = xk + Vi yi
5. EndDo
6.EndDo

5.8 PHƯƠNG PHÁP LẶP DỰA TRÊN HỆ PHƯƠNG TRÌNH CHÍNH TẮC
(NORMAL EQUATIONS)
5.8.1 Hệ phương trình chính tắc
Trong trường hợp phải giải các hệ thống tuyến tính Ax = b khi ma trận
hệ số A là không đối xứng (không vuông), ta có thể chuyển bài toán đã cho về
bài toán tương đương như sau:
AT Ax = AT b

---------------------------------------------------- 158 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
khi đó hệ là đối xứng xác định dương vì ma trận AT A là đối xứng xác định
dương. Các hệ thống phương trình được xây dựng như vậy được gọi là hệ
phương trình chính tắc, nó tương ứng với việc giải bài toán bình phương cực
tiểu, tức là cực tiểu hoá đại lượng b − Ax 2 .

Cách biến đổi như trên thường được sử dụng cho các bài toán quá xác
định (overdetermined), tức là ma trận A là ma trận kích thước n×m và m<n.
Ngoài ra hệ phương trình trên cũng được biến đổi như sau: sử dụng một
ẩn phụ x = AT u và giải hệ phương trình tương đương để tìm u:

AAT u = b
Khi đã tìm được u, có thể tìm x bằng cách tính tích x = AT u . Tuy nhiên,
hầu hết các thuật toán mà ta sẽ xem xét sau đây không sử dụng biến u một
cách trực tiếp mà chỉ sử dụng biến x. Cách biến đổi như trên thường được sử
dụng với hệ thống dưới xác định (underdetermined), tức là ma trận hệ số A
kích thước n×m với n<m. Hệ phương trình trên tương đương việc xây dựng
hệ phương trình chuẩn tắc cho bài toán cực tiểu hoá đại lượng x* − AT u 2 , tức

là tìm vectơ xấp xỉ nghiệm x sao cho khoảng cách của nó tới vectơ nghiệm
thực là cực tiểu theo chuẩn 2 của vectơ. Điều đáng chú ý ở đây là mặc dù có
vô số vectơ x* thoả mãn hệ Ax=b nhưng giá trị u cực tiểu x* − AT u 2 là cố định,

không phụ thuộc giá trị của x* được sử dụng.

5.8.2 Phương pháp chiếu hàng


Khi sử dụng các phương pháp giảm dư cơ bản trên hệ phương trình chính
tắc, như Jacobi hay SOR, chúng ta cần chú ý khai thác đặc điểm là tích ma
trận AT A hoặc AAT không cần thiết phải tính toán cụ thể. Như sẽ trình bày
dưới đây, trong mỗi một bước giảm dư, chỉ cần thiết sử dụng các phần tử trên
một hàng hoặc một cột của ma trận A. Các phương pháp này được gọi là

---------------------------------------------------- 159 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
phương pháp chiếu hàng (row projection method) bởi vì nó thực hiện phép
chiếu trên hàng của ma trận A hoặc AT. Dưới đây ta sẽ trình bày thuật toán
chiếu hàng dạng “điểm”, thuật toán chiếu hàng “khối” cũng được trình bày
tương tự như dạng “điểm”.
5.8.2.1 Phương pháp Gauss-Seidel trên hệ phương trình chính tắc
*Hệ phương trình dạng AATu = b
Xuất phát từ một vectơ xấp xỉ nghiệm ban đầu, thực hiện hiệu chỉnh từng
thành phần nghiệm theo thứ tự nhất định theo phương pháp giảm dư liên tiếp
với dạng sau:
u ← u + δ i ei

với ei là cột thứ i của ma trận đơn vị. Hệ số δ i được chọn sao cho thành
phần thứ i của vectơ dư r = b - Ax triệt tiêu ( x = AT u ), tức là:
(b − AAT (u + δ i ei ), ei ) = 0

Từ đó ta có
(r , ei )
δi = 2
AT ei
2

Kí hiệu βi là thành phần thứ i của vectơ b. Khi đó, một bước giảm dư
thực hiện tính toán:
βi − ( AT u, AT ei ) β i − ( x, AT ei )
δi = 2
= 2
AT ei AT ei
2 2

Sau đó, xấp xỉ nghiệm mới được tính toán như sau:
x ← x + δ i AT ei (5.9)
Biến phụ ở đây đã được thay thế bằng biến ban đầu x = AT u
Ở đây, việc tính toán xấp xỉ nghiệm mới theo công thức (5.9) yêu cầu
thực hiện phép tính nội tích của xấp xỉ hiện tại x = AT u với AT ei là vectơ hàng
của A. Phép tính nội tích này thường không yêu cầu nhiều khối lượng tính

---------------------------------------------------- 160 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
toán nếu như ma trận A là ma trận thưa. Tất cả điều cần làm là lưu trữ dữ liệu
của A theo từng hàng một cách thích hợp để thực hiện thuật toán trên. Nếu
cần sử dụng hệ số gia tốc w, ta chỉ cần thay giá trị δ i bằng ωδ i .
Thuật toán Forward NE-SOR Sweep (FNESORS)
1.Choose an initial x
2.For i=1,2,…,n Do:
βi − ( x, AT ei )
3. δi = ω 2
AT ei
2

4. x = x + δ i AT ei

5.EndDo
*Hệ phương trình dạng ATAx = ATb
Tương tự như trên, một bước quét của Gauss-Seidel bao gồm các bước
tính toán liên tiếp vectơ x theo dạng sau : x ← x + δ i ei
Hệ số δi được chọn sao cho thành phần thứ i của vectơ dư triệt tiêu, tức là :
( AT b − AT A( x + δ i ei ), ei ) = 0 (5.10)
Từ đó ta có :
(r , ei )
δi = 2
AT ei
2

Và thuật toán được trình bày như dưới đây.


Thuật toán quét SOR tiến, chuẩn vectơ dư (Forward NR-SOR Sweep)
1.Choose an initial x, Compute r = b-Ax
2.For i=1,2,…,n Do:
βi − ( x, AT ei )
3. δi = ω 2
AT ei
2

4. x = x + δ i ei
5. r = r − δ i Aei
6.EndDo

---------------------------------------------------- 161 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Khác với thuật toán NE ở trên, thuật toán NR chỉ yêu cầu sử dụng các
phần tử trên cột của ma trận A.
Một điều cần lưu ý ở đây là ma trận AT A và AAT có thể là ma trận dày
hoặc tổng quát, có độ thưa thấp hơn nhiều so với ma trận A. Tuy nhiên, yêu
cầu tính toán của cả hai phương pháp chiếu hàng nêu trên chỉ phụ thuộc duy
nhất vào cấu trúc của ma trận A. Đó chính là một lợi thế rất cơ bản của các
phương pháp chiếu hàng trên hệ phương trình chính tắc.
5.8.2.2 Phương pháp Jacobi trên hệ phương trình chính tắc-Thuật toán Cimmino
Mỗi bước lặp của phương pháp Jacobi giải hệ AT Ax = AT b sẽ thực hiện
tính toán thành phần xấp xỉ mới của nghiệm thông qua điều kiện triệt tiêu
thành phần tương ứng của vectơ dư :
( AT b − AT A( x + δ i ei ), ei ) = 0

Từ đó ta có (b − A( x + δ i ei ), Aei ) = 0 hay (r − δ i Aei , Aei ) = 0


Hệ số δ i được tính như :
(r , Aei )
δi = 2
Aei 2

và thành phần mới tương ứng của vectơ nghiệm


x ← x + δ i ei

Tuy xuất phát từ cùng công thức của phương pháp Gauss-Seidel (5.10) ở
mục 5.8.2.1, nhưng do vectơ x không được cập nhật ngay sau mỗi bước lặp
nên hệ số δ i trong phương pháp này khác với phương pháp Gauss-Seidel kể
trên.
Để tăng tốc độ hội tụ của phương pháp, người ta thường sử dụng thêm
một hệ số gia tốc w (thường lấy trong khoảng 0 < w < 2)

---------------------------------------------------- 162 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Thuật toán Cimmino-NR


1.Choose initial guess x0.Set x =x0; r=b-Ax0
2.Until convergence Do:
3. For i=1,2,…n Do:
(r , Aei )
4. δi = 2
Aei 2

5. EndDo
n
6. x=x+d where d = ∑ δ i ei
i =1

7. r=r-Ad
8.EndDo

5.8.3 Phương pháp thành phần liên hợp trên hệ phương trình chính tắc
( Conjugate Gradient Methods).
Đây là một phương pháp đặc biệt hiệu quả đối với các ma trận thưa, tuy

nhiên do số điều kiện (condition number) của ATA và AAT bằng bình phương

số điều kiện của A nên tốc độ hội tụ của phương pháp có thể chậm. Để cải tạo

tính hội tụ của phương pháp thì cần phải thực hiện preconditioning tốt, đây là

một trong những yếu tố quan trọng nhất quyết định sự hiệu quả khi thực hiện

phương pháp thành phần liên hợp.

Nếu A vuông và khả nghịch thì ATA và AAT là đối xứng xác định

dương và do vậy có thể áp dụng phương pháp thành phần liên hợp (Conjugate

Gradient).

---------------------------------------------------- 163 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
THUẬT TOÁN CGNR (Áp dụng cho hệ ATAx = ATb)

1. Compute r0 = b – Ax0 , z0 = ATr0, p0 = z0


2. For i = 0, …, until convergence Do:
3. ωi = Api
2
zi
4. α i = 2
ω i 2
2

5. xi+1 = xi + αi.pi
6. ri+1 = ri - αi.ωi
7. zi+1 = AT.ri+1
zi +1 22
8. βi =
zi 22
9. pi+1 = zi+1 + βi.pi
10. EndDo.
THUẬT TOÁN CGNE (Craig’s Method) (Áp dụng cho hệ AATu = b)
1. Compute r0 = b – Ax0 , p0 = ATr0
2. For i = 0, 1, …, until convergence Do:
3. α i = (ri , ri ) /( pi , pi )
4. xi+1 = xi + αi.pi
5. ri+1 = ri - αi.A.pi
6. βi = (ri +1 , ri +1 ) /(ri , ri )
7. pi+1 = AT.ri+1 + βi.pi
8. EndDo.

---------------------------------------------------- 164 -----------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

CHƯƠNG 6
ÁP DỤNG KỸ THUẬT XỬ LÝ MA TRẬN THƯA TRONG BÀI TOÁN
TÍNH TOÁN CĐXL CỦA HTĐ BẰNG PHƯƠNG PHÁP LẶP

Từ các cơ sở lý luận về các phương pháp tính toán để giải hệ phương


trình tuyến tính đã được trình bày ở chương 5, ta có thể tổng kết các phương
pháp lặp có thể sử dụng để giải một hệ phương trình tuyến tính Ax = b như
bảng dưới đây:

Số thứ Phạm vi
Phương pháp lặp Điều kiện hội tụ
tự áp dụng
A trội chéo chặt hoặc
1 Jacobi A vuông
trội chéo tối giản
A trội chéo chặt hoặc
2 Gauss-Seidel A vuông
trội chéo tối giản
A đối xứng ,
3 SOR A vuông xác định dương,
0<w<2
A trội chéo chặt hoặc
4 Jacobi khối A vuông
trội chéo tối giản
A trội chéo chặt hoặc
5 Gauss-Seidel khối A vuông
trội chéo tối giản
6 Chiếu mẫu (prototype) A vuông Ma trận WTAV khả nghịch
A đối xứng,
7 Độ giảm cực đại-SD A vuông
xác định dương
8 Cực tiểu chuẩn dư -MR A vuông A xác định dương
9 RNSD A vuông A khả nghịch
Chiếu cộng và nhân (AP và A trội chéo chặt hoặc
10 A vuông
MP) trội chéo tối giản
11 FNESORS & FNRSORS A vuông -
12 Cimmino A vuông -
A có thể
13 CGNE & CGNR -
không vuông

--------------------------------------------------- 165 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Ta sẽ lần lượt đánh giá từng phương pháp


NHẬN XÉT:
1.Phương pháp Jacobi
Thực hiện rất tốt trong bài toán tính toán chế độ hệ thống điện do ma trận
tổng dẫn nút thường là trội chéo chặt, hội tụ với mọi giá trị xấp xỉ đầu của
nghiệm. Có khả năng vectơ hoá để thực hiện tính toán song song. Tuy nhiên
tốc độ hội tụ chậm do vậy thời gian tính toán lâu.
2.Phương pháp Gauss-Seidel
Là phương pháp hiệu chỉnh của Jacobi, mang đầy đủ tính chất của Jacobi
ngoại trừ tính chất vectơ hoá. Tốc độ hội tụ nhanh hơn Jacbobi, yêu cầu về
lưu trữ dữ liệu ít hơn Jacobi.
3.Phương pháp SOR
Thực chất cũng là phương pháp Jacbobi và Gauss-Seidel, tuy nhiên có sử
dụng thêm một hệ số gia tốc w. Yêu cầu hội tụ của phương pháp là ma trận
A đối xứng, xác định dương và 0<w<2, một điều kiện không phải lúc nào
cũng thoả mãn đối với ma trận tổng dẫn nút của hệ thống điện.
4.Phương pháp Jacbobi khối và Gauss-Seidel khối
Là tổng quát hoá của phương pháp Jacobi “điểm” và Gauss-Seidel “điểm”
trình bày ở trên. Tốc độ hội tụ có thể tốt hơn Jacobi và Gauss-Seidel điểm.
Do trong bước tính của thuật toán có thực hiện giải hệ phương trình cho khối
con vectơ nghiệm Aii.δi = WiT.(b – A.xk) (cần nghịch đảo ma trận Aii) và đặc
tính của ma trận sau hoán vị theo phương pháp đa màu (Aii là các vectơ
đường chéo, nghịch đảo Aii chỉ cần nghịch đảo các phần tử đường chéo) nên
ta sẽ khai thác đặc điểm này để xây dựng phương pháp Jacobi khối và
Gauss-Seidel khối.

--------------------------------------------------- 166 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

5.Thuật toán chiếu mẫu (prototype)


Thực chất là phương pháp tổng quát hoá của phương pháp Jacobi khối, yêu
cầu ma trận WTAV khả nghịch. Có thể thoả mãn bằng cách chọn không gian
con L = K hoặc L = AK. Tuy nhiên cần nghiên cứu thêm để có thể tìm được
cặp không gian con L,K có hiệu quả.
6.Phương pháp SD,MR,RNSD
SD yêu cầu ma trận A đối xứng, xác định dương. MR yêu cầu A xác định
dương. Hai phương pháp này không thích hợp trong tính toán CĐXL.
NRSD chỉ yêu cầu A khả nghịch, tuy nhiên tốc độ hội tụ rất chậm, yêu cầu
sai số nghiệm rất nhỏ để không gây sai số tích luỹ, ảnh hưởng đến kết quả
tính toán khi đưa vào trong vòng lặp của phương pháp Newton-Raphson.
Thời gian tính toán lâu.
7.Phương pháp chiếu cộng và chiếu nhân
Thực chất là phương pháp Jacobi và Gauss-Seidel khối tổng quát.
8.Phương pháp FNESORS và FNRSORS
Tương tự như RNSD, tốc độ hội tụ của hai phương pháp này chậm, yêu cầu
sai số nghiệm nhỏ.
9.Phương pháp Cimmino
Thực chất là phương pháp Jacbobi tổng quát thực hiện đối với ma trận A
không vuông.
10.Phương pháp CGNR và CGNE
Là một trong những phương pháp lặp hay được sử dụng hiện nay, có thể áp
dụng đối với một hệ thống bất kỳ (vuông hoặc không vuông). Yêu cầu lưu
trữ dữ liệu nhỏ. Tuy nhiên, tốc độ hội tụ có thể chậm.
Từ những nhận xét trên, các thuật toán sau đây sẽ được lựa chọn để xây
dựng chương trình tính toán
+Gauss-Seidel điểm

--------------------------------------------------- 167 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

+Gauss-Seidel khối
+CGNR và CGNE
Sau đây, ta sẽ lần lượt đi xây dựng các module xử lí tính thưa, lưu trữ
graph, xắp xếp lại theo thuật toán tô màu và áp dụng các phương pháp lặp
trong bài toán tính toán CĐXL. Phần cuối cùng là các ví dụ minh hoạ và
tổng kết, đánh giá chương trình.

6.1 THUẬT TOÁN LƯU TRỮ THƯA THEO HÀNG (CSR)

NhậpAn x m

t = 1, k =1, flag = 1

i=1

j=1

A(i,j) ≠0 No

Yes

AA(k) = A(i,j)
JA(k) = j

--------------------------------------------------- 168 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

flag = 1 No

Yes
IA(t) = k
t=t+1
flag = 0
j = j +1

k=k+1

No j=m

i=i+1 Yes

flag = 1

No i=n

Yes
IA(t) = IA(1) + length(AA)

Stop

--------------------------------------------------- 169 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Module lưu trữ :
%luu tru dang CSR (Compress Sparse Row)
function [AA,JA,IA,n] = luutru(A)
[n,m] = size(A);
t=1;
k = 1;
flag = 1;
for ii = 1:n
for jj = 1:m
if A(ii,jj)~=0
AA(k)=A(ii,jj);
JA(k)=jj;
if flag ==1
IA(t)=k;
t = t+1;
flag = 0;
end
k = k +1;
end
end
flag = 1;
end
IA(t)= IA(1) + length(AA);
end

--------------------------------------------------- 170 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

6.2 THUẬT TOÁN LƯU TRỮ GRAPH VÀ TÔ MÀU GRAPH.


Sơ đồ khối thuật toán lưu trữ Graph theo kiểu Adjacent list (danh sách
các nút liền kề) :
Nhập An x m

i=1

diachi = 1

j=1

[A(i,j) ≠ 0 or
A(j,i) ≠ 0] and
No (i≠j) j=j+1

Adj(i,diachi) = j
diachi = diachi + 1

j=m No

i=i+1
Yes
Yes
diachi =1
No
IS(i) = 0 IS(i) = 1
len(i) = diachi - 1

No
i=n Stop
Yes

--------------------------------------------------- 171 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Code 1 của module sắp xếp : lưu trữ Graph theo Adjacent list
%Luu tru graph theo kieu Adj list
[n,m]= size(A);
IS = ones(n,1);
len = zeros(n,1);
for ii = 1:n
diachi = 1;
for jj = 1:m
if (A(ii,jj)~= 0 || A(jj,ii)~=0) && ii ~= jj
Adj(ii,diachi) = jj;
diachi = diachi + 1;
end
end
if diachi ~= 1
IS(ii) = 0;%ii la mot nut co noi voi nut khac
len(ii) = diachi - 1;%do dai cua mang chua cac nut noi voi nut ii
else
IS(ii) = 1;%ii la mot nut doc lap, khong noi voi nut nao ca
end
end

--------------------------------------------------- 172 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Sơ đồ khối thuật toán tô màu Graph tương ứng với Adjacent list :

Start

i=1 i=i+1

No

IS(i) = 1 Yes i=n


Yes
No
color(i) = 1 Stop
flag = 1

flag = 1 No

Yes

flag = 0

h=1 h=h+1

No

color(i) = h=
No
color(Adj(i,h)) len(i)

Yes
Yes

color(i) = color(i) + 1
flag = 1

--------------------------------------------------- 173 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Code 2 của module sắp xếp : tô màu Graph


color = zeros(n,1);
for ii = 1:n
if IS(ii)==1
color(ii)=1;
else
color(ii) = 1;
flag = 1;
while flag == 1
flag = 0;
for hh = 1:len(ii)
if color(ii) == color(Adj(ii,hh))
color(ii)= color(ii)+1;
flag = 1;
break
end
end
end
end
end
Trên đây là 2 module quan trọng bậc nhất trong chương trình, module
sắp xếp là cơ sở để thành lập nên vectơ hoán vị p, thành lập ma trận Vkhối
(hoán vị các cột của ma trận đơn vị), thành lập ma trận P (hoán vị các hàng
của ma trận đơn vị) và thành lập ma trận A1 (đã được hoán vị lại theo vectơ
hoán vị tìm được từ thuật toán tô màu
Thật vậy, phần code sau đây sẽ tìm ra ma trận A1 :
%tim ma tran hoan vi
z=1;%so mau
t=1;%dia chi tung phan tu cua vector hoan vi
h = 1;%nhom thu 1

--------------------------------------------------- 174 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
v = 0;
p = zeros(1,n);
while t<=n
for ii = 1:n
if color(ii)==z
p(t)=ii;
t = t+1;
end
end
C(h) = t - 1- v;
v = t - 1;
h = h + 1;
z = z + 1;
end
I=eye(n,n);
Vkhoi = I(:,p);
P=I(p,:);
%Tim ma tran da duoc sa xep lai A1
A1 = P*A*P';
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Phần tiếp sau đây là các module giải lặp hệ phương trình tuyến tính
bao gồm phương pháp Gauss-Seidel khối, CGNE và CGNR có ứng dụng kỹ
thuật xử lý ma trận thưa và thuật toán tô màu. Tuy nhiên, trước khi các
module này được thực hiện, ta cần phải nhắc lại rằng phép toán quan trọng
để thực hiện các phương pháp lặp chính là phép nhân ma trận với vectơ khi
sử dụng kỹ thuật lưu trữ ma trận thưa. Vì vậy, để tránh đi sự phức tạp trong
cấu trúc chương trình, module nhân ma trận thưa với vectơ sẽ được thực
hiện trước tiên .
Code của module nhân ma trận với vectơ
%Ham nhan ma tran thua voi vector
function Ax = product(AA,JA,IA,x,n)
Ax = zeros(n,1);
for ss = 1 : n
K1 = IA(ss);
K2 = IA(ss+1)-1;
for ii = K1:K2
Ax(ss) = Ax(ss) + AA(ii)*x(JA(ii));
end
end
end

--------------------------------------------------- 175 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

6.3 THUẬT TOÁN LẶP GAUSS – SEIDEL KHỐI

Nhập A,b

lưu trữ A

sắp xếp A

k=1

i=1

giải Aii.δi = Wi .(b – A.xk)


T

xk+1 : = xk + Vi.δi

i=i+1 No i=p

Yes

k=k+1 No sai số < ε

Yes
Stop

--------------------------------------------------- 176 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Module giải hệ tuyến tính theo phương pháp lặp Gauss – Seidel khối
function x = giai(A,b)
[AA,JA,IA,n] = luutru(A);
[A,C,Vkhoi] = sapxep(A);
x0 = ones(n,1);
x = x0;
%**********************************************
% Giai theo phuong phap lap Gauss - Seidel khoi
%**********************************************
for vonglap = 1:2000
cotdau = 1;
cotcuoi = C(1);
for ii = 1:length(C)
%lay gia tri cua Aii va Vi
Aii = A(cotdau:cotcuoi,cotdau:cotcuoi);
Vi = Vkhoi(:,cotdau:cotcuoi);
if ii ~= length(C)
cotdau = cotdau + C(ii);
cotcuoi = cotcuoi + C(ii+1);
end
% tim gia tri cua sigmaii
Ax = product(AA,JA,IA,x,n);
sigmaii = (inv(Aii))*(transpose(Vi))*(b-Ax);
x = x + Vi*sigmaii;
end
if norm(x-x0,1)< 1.e-8
break;
end
x0 = x;
end
end

--------------------------------------------------- 177 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

6.4 THUẬT TOÁN LẶP CGNR VÀ CGNE


Thuật toán lặp CGNR :

Nhập A,b

lưu trữ A

Lưu trữ AT

r0 = b – Ax0 z0 = ATr0, p0 = z0 ; i =1

ωi = Api
& zi &22
αi =
& ωi & 22

xi+1 = xi + αi.pi
ri+1 = ri - αi.ωi
zi+1 = AT.ri+1
& zi +1 &22
βi =
& zi &22

pi+1 = zi+1 + βi.pi

i=i+1 No sai số < ε

Yes
Stop

--------------------------------------------------- 178 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Module giải hệ phương trình tuyến tính bằng phương pháp lặp CGNR
function x = CGNR(A,b)
[AA,JA,IA,n] = luutru(A);
[AAT,JAT,IAT] = luutru(transpose(A));
x0 = ones(n,1);
Ax0 = product(AA,JA,IA,x0,n);
r = b - Ax0;
z0 = product(AAT,JAT,IAT,r,n);
p = z0;
x = x0;
delta = ones(n,1);
while norm(delta,1) > 1e-8
omega = product(AA,JA,IA,p,n);
bien1 = 0;
for hh = 1 : n
bien1 = bien1 + z0(hh)^2;
end
bien2 = 0;
for hh = 1 : n
bien2 = bien2 + omega(hh)^2;
end
anpha = bien1/bien2;
x = x + anpha*p;
r = r - anpha*omega;
z = product(AAT,JAT,IAT,r,n);
bien1 = 0;
for hh = 1 : n
bien1 = bien1 + z(hh)^2;
end
bien2 = 0;
for hh = 1 : n
bien2 = bien2 + z0(hh)^2;
end
beta = bien1/bien2;
z0 = z;
p = z + beta*p;
delta = x - x0;
x0 = x;
end
end

--------------------------------------------------- 179 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Thuật toán lặp CGNE :

Nhập A,b

lưu trữ A

Lưu trữ AT

r0 = b – Ax0 , p0 = ATr0; i =1

α i = (ri , ri ) /( pi , pi )

xi+1 = xi + αi.pi
ri+1 = ri - αi.A.pi
β i = (ri +1 , ri +1 ) /(ri , ri )

pi+1 = AT.ri+1 +βi.pi

i=i+1 No sai số < ε

Yes
Stop

--------------------------------------------------- 180 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Module giải hệ phương trình tuyến tính bằng phương pháp lặp CGNE
function x = CGNE(A,b)
[AA,JA,IA,n] = luutru(A);
[AAT,JAT,IAT] = luutru(transpose(A));
x0 = ones(n,1);
Ax0 = product(AA,JA,IA,x0,n);
r0 = b - Ax0;
p = product(AAT,JAT,IAT,r0,n);
r = r0;
delta = ones(n,1);
while norm(delta,1) > 1e-8
bien1 = 0;
for hh = 1 : n
bien1 = bien1 + r(hh)^2;
end
bien2 = 0;
for hh = 1 : n
bien2 = bien2 + p(hh)^2;
end
anpha = bien1/bien2;
x = x0 + anpha*p;
Ap = product(AA,JA,IA,p,n);
r = r0 - anpha*Ap;
bien1 = 0;
for hh = 1 : n
bien1 = bien1 + r(hh)^2;
end
bien2 = 0;
for hh = 1 : n
bien2 = bien2 + r0(hh)^2;
end
beta = bien1/bien2;
r0 = r;
ATr = product(AAT,JAT,IAT,r,n);
p = ATr + beta*p;
delta = x - x0;
x0 = x;
end
end
Trên đây là những bước chuẩn bị cơ bản về các module, tiếp theo ta sẽ
đi thực hiện ghép các module này vào chương trình tính toán chế độ xác lập
của hệ thống điện với 2 phương pháp lặp kinh điển là Gauss – Seidel và
Newton – Raphson.

--------------------------------------------------- 181 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Sơ đồ khối chung của chương trình chính

Start

Nhập dữ liệu từ các bản ghi dữ liệu

Thành lập ma trận Ybus

Lựa chọn phương pháp giải

Tính toán vectơ điện áp U theo phương pháp đã lựa chọn

Tính toán phân bố dòng công suất trên lưới điện

Hiển thị kết quả

End

Trong đó các phương pháp biến thể khác nhau của chương trình tính

toán CĐXL sẽ được thực hiện trong bước 4 và được xây dựng theo các module

riêng biệt và được trình bày lần lượt như ở các phần tiếp theo đây.

6.5 PHƯƠNG PHÁP LẶP GAUSS – SEIDEL SỬ DỤNG LƯU TRỮ THƯA

Sơ đồ khối của thuật toán Gauss-Seidel có kết hợp lưu trữ theo phương pháp CSR

--------------------------------------------------- 182 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
Đọc Uđặt trong file dữ liệu

Lưu trữ Ybus theo dạng thưa

k<kmax

Vold = V; i=1

i< MATSIZE N Vold = V


V − Vold < ε
k=k+1

Y
Y End
i=1

Tính Qi theo dạng lưu trữ thưa

N
i≡PV

Y
Qi>
Qimax Qi =Qimax; PVÆPQ

Qi< Y
Qmin Qi =Qimin; PVÆPQ

Tính Ui

Hiệu chỉnh Ui về giá trị đặt nếu i là nút PV

i = i +1

--------------------------------------------------- 183 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

6.6 PHƯƠNG PHÁP LẶP GAUSS – SEIDEL KHỐI


Sắp xếp lại Ybus theo phương pháp đa màu

Lưu trữ đường chéo của Ybus trong mảng Aii

Lưu trữ Ybus theo dạng thưa

Hoán vị vectơ điện áp U theo vectơ hoán vị p

Đọc giá trị đặt về điện áp của các nút PV

Tính vectơ dòng điện J

Tính Qi của các nút PV theo xấp xỉ đầu của điện áp

Y
ss<eps
k<kmax
End

N
Uold = U; ii =1

ss = U old − U N ii< số khối


k=k+1 nghiệm

Tính tích Ybus*U và (J-Ybus*U) ứng với khối nghiệm ii

Tính tích Ybus*U và (J-Ybus*U) ứng với khối nghiệm ii

δ ii = Aii−1.( J − Ybus.U )ii

ii=1 N

Y
δ ii (1) = 0

V = V + δ ii ii=ii+1

Tính vectơ J ứng với khối nghiệm ii

Hiệu chỉnh các nút PV184


--------------------------------------------------- về điện áp và CSPK (nếu cần)
---------------------------------------------------
Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Thuật toán Gauss – Seidel khối biến thể

Thành lập ma trận Ycắt trên cơ sở ma trận Ybus

lưu trữ Ycắt và đường chéo Ycắt

Sắp xếp lại Ycắt bằng tô màu

Tính nguồn dòng ban đầu J(0)

k=1

Dùng G-S khối giải hệ Y.U = J (lấy vectơ hoán vị p làm vectơ địa
chỉ khi tính toán các khối nghiệm,không dùng khối chéo con Aii)

Hiệu chỉnh nút PV

Tính lại nguồn dòng J

k=k+1 No sai số < ε Yes Tính toán thông số ≠

Stop

6.7 PHƯƠNG PHÁP LẶP CGNR VÀ CGNE TRONG BÀI TOÁN TÍNH
TOÁN CĐXL CỦA HTĐ BẰNG PHƯƠNG PHÁP NEWTON –RAPHSON
Trong trường hợp này, hệ phương trình tuyến tính hoá với ma trận hệ
số Jacobi sẽ được giải bằng phương pháp lặp CGNR và CGNE thay vì
phương pháp giải trực tiếp thông thường (khử Gauss).

--------------------------------------------------- 185 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Sơ đồ khối của thuật toán được trình bày như sau :

Start

Nhập Ybus,U(0),δ(0)

k=0

i=1

Yes i = i+1
i = UV

No
No Yes
i = PV

n n
Pi ( k ) = U i( k ) ∑ yijU (j k ) cos(δ i(k) − δ (j k ) − θij ) Pi ( k ) = U i( k ) ∑ yijU (j k ) cos(δ i(k) − δ j( k ) − θ ij )
j =1 j =1
n

∑yU
n
Q i
(k )
=U i
(k )
ij
(k )
j sin(δ i
(k)
−δ (k )
j − θij ) Qi( k ) = U i( k ) ∑ yijU (j k )sin(δ i(k) − δ (j k ) − θ ij )
j =1
j =1

Yes Yes
Qi(k) > Qimax Qi(k) < Qimin

No No

Qi(k) = Qimax Qi(k) = Qimin

ΔPi(k) = Pi – Pi(k)
ΔQi(k) = Qi – Qi(k) ΔPi(k) = Pi – Pi(k)

--------------------------------------------------- 186 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

No
i=i+1 i=n

Yes

ΔP < ε Yes
ΔQ < ε

Tính toán các thông số chế độ


No

⎡ J1( k ) J 2( k ) ⎤
⎢ (k ) ⎥ Stop
⎣ J3 J 4( k ) ⎦

Giải hệ phương trình tuyến tính


hoá bằng CGNR hoặc CGNE

δ ( k +1) = δ ( k ) + Δδ ( k )
U ( k +1) = U ( k ) + ΔU ( k )

k=k+1

--------------------------------------------------- 187 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

6.8 KIỂM ĐỊNH VÀ ĐÁNH GIÁ HIỆU QUẢ CHƯƠNG TRÌNH

6.8.1 Kiểm định tính chính xác

Để chứng minh sự chính xác trong tính toán của các module đã xây

dựng, ta sử dụng hệ thống 14 nút của IEEE để kiểm chứng.

--------------------------------------------------- 188 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

A – Module Gauss – Seidel chỉ áp dụng lưu trữ thưa (GS_CSR)


===============================================================
THIS IS THE PROGRAM TO COMPUTE LOAD FLOW BY GAUSS-SEIDEL METHOD
INCOOPERATING WITH THE COMPRESS SPARSE ROW TECHNIQUE
===============================================================
Iteration number: 122
===============================================================
THE NODAL VOLTAGE
===============================================================
Busname Voltage Magnitude Voltage Angle(degree)
===============================================================
1 1,060 0,00
2 1,045 -4,98
3 1,010 -12,73
4 1,017 -10,31
5 1,019 -8,77
6 1,070 -14,24
7 1,060 -13,35
8 1,090 -13,35
9 1,054 -14,92
10 1,049 -15,09
11 1,056 -14,79
12 1,055 -15,09
13 1,050 -15,17
14 1,034 -16,03

--------------------------------------------------- 189 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

B – Module Gauss – Seidel khối áp dụng lưu trữ thưa (GS_Sparse)


===============================================================
THIS IS THE PROGRAM TO COMPUTE LOAD FLOW BY GAUSS-SEIDEL METHOD
INCOOPERATING WITH THE COLOR-ORDERING AND CRS TECHNIQUE
===============================================================
Iteration number: 118
===============================================================
THE NODAL VOLTAGE
===============================================================
Busname Voltage Magnitude Voltage Angle(degree)
===============================================================
1 1,060 0,000
2 1,045 -4,982
3 1,010 -12,726
4 1,017 -10,306
5 1,019 -8,772
6 1,070 -14,238
7 1,060 -13,346
8 1,090 -13,346
9 1,054 -14,925
10 1,049 -15,089
11 1,056 -14,793
12 1,055 -15,092
13 1,050 -15,169
14 1,034 -16,034
===============================================================

--------------------------------------------------- 190 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

C – Module G – S khối biến thể sử dụng lưu trữ thưa (MGS_Sparse)


===============================================================
THE PROGRAM TO COMPUTE LOAD FLOW BY MODIFIED BLOCK G-S METHOD
INCOOPERATING WITH THE COLOR-ORDERING AND CSR TECHNIQUE
===============================================================
Iteration number: 118
===============================================================
THE NODAL VOLTAGE
===============================================================
Busname Voltage Magnitude Voltage Angle(degree)
===============================================================
1 1,060 0,00
2 1,045 -4,98
3 1,010 -12,73
4 1,017 -10,31
5 1,019 -8,77
6 1,070 -14,24
7 1,060 -13,35
8 1,090 -13,35
9 1,054 -14,93
10 1,049 -15,09
11 1,056 -14,79
12 1,055 -15,09
13 1,050 -15,17
14 1,034 -16,03
===============================================================

--------------------------------------------------- 191 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

D – Module Newton- Raphson sử dụng CGNR

THE PROGRAM TO COMPUTE LOAD FLOW BY NEWTON-RAPHSON METHOD


INCOOPERATING WITH THE CRS TECHNIQUE AND CGNR METHOD
Iteration number: 4
===============================================================
THE NODAL VOLTAGE
===============================================================
Busname Voltage Magnitude Voltage Angle(degree)
===============================================================
1 1,060 0,00
2 1,045 -4,98
3 1,010 -12,73
4 1,017 -10,31
5 1,019 -8,77
6 1,070 -14,24
7 1,060 -13,35
8 1,090 -13,35
9 1,054 -14,93
10 1,049 -15,09
11 1,056 -14,80
12 1,055 -15,09
13 1,050 -15,17
14 1,034 -16,04

--------------------------------------------------- 192 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

E – Module Newton – Raphson sử dụng CGNE


THE PROGRAM TO COMPUTE LOAD FLOW BY NEWTON-RAPHSON METHOD
INCOOPERATING WITH THE CRS TECHNIQUE AND CGNE METHOD
Iteration number: 4
===============================================================
THE NODAL VOLTAGE
===============================================================
Busname Voltage Magnitude Voltage Angle(degree)
===============================================================
1 1,060 0,00
2 1,045 -4,98
3 1,010 -12,73
4 1,017 -10,31
5 1,019 -8,77
6 1,070 -14,24
7 1,060 -13,35
8 1,090 -13,35
9 1,054 -14,93
10 1,049 -15,09
11 1,056 -14,80
12 1,055 -15,09
13 1,050 -15,17
14 1,034 -16,04
===============================================================

6.8.2 Đánh giá hiệu quả chương trình


Để đánh giá hiệu quả chương trình về mặt tốc độ xử lý, ta sử dụng
hàm profile trong MATLAB để kiểm soát thời gian chạy của từng module.
Đây là kết quả chạy trên máy tính PC có cấu hình Pentium IV, CPU
2.66Ghz, RAM 512M, Mainboard Intell.

--------------------------------------------------- 193 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Bảng thời gian chạy của các module ứng với 3 hệ thống chuẩn của IEEE
Module GS GS_CSR GS_Sparse MGS_Sparse NR NR_CGNE NR_CGNR
Hệ thống
Time (sec) (sec) (sec) (sec) (sec) (sec) (sec)
Hệ thống lần 1 0,25 0,219 0,328 0,25 0,109 0,156 0,125
14 bus lần 2 0,188 0,172 0,297 0,219 0,109 0,125 0,172
lần 3 0,188 0,219 0,328 0,219 0,141 0,141 0,141
trung bình 0,2086 0,2033 0,3176 0,2293 0,1196 0,1406 0,146
Hệ thống lần 1 0,953 0,813 0,906 0,797 0,25 0,297 0,359
30 bus lần 2 0,984 0,891 0,938 0,75 0,172 0,328 0,328
lần 3 1 0,906 0,875 0,75 0,172 0,313 0,359
trung bình 0,979 0,87 0,9063 0,76566 0,198 0,3126 0,3486
Hệ thống lần 1 45,234 14,453 14,578 11,734 4,703 6,484 7,094
118 bus lần 2 45,281 14,5 14,594 11,75 4,766 6,516 7,109
lần 3 44,578 14,516 14,625 11,828 5 6,703 7,219
trung bình 45,031 14,48967 14,599 11,7706 4,823 6,5676 7,1406

--------------------------------------------------- 194 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

10

15
0 5 10 15
nz = 54

Ma trận tổng dẫn nút hệ thống 14 bus


Thời gian chạy chương trình

0.35

0.317666667

0.3

0.25
0.229333333
GS
0.208666667
0.203333333 GS_CSR
0.2 GS_Sparse
Time(sec)

MGS_Sparse
NR
0.146 NR_CGNE
0.15 0.140666667
NR_CGNR
0.119666667

0.1

0.05

0
Hệ thống 14 bus

--------------------------------------------------- 195 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
0

10

15

20

25

30
0 5 10 15 20 25 30
nz = 112

Ma trận tổng dẫn nút hệ thống 30 bus

Thời gian chạy chương trình

1.2

1 0.979

0.906333333
0.87

0.8 0.765666667
GS
GS_CSR
Time(sec)

GS_Sparse
0.6 MGS_Sparse
NR
NR_CGNE
NR_CGNR
0.4
0.348666667
0.312666667

0.198
0.2

0
Hệ thống 30 bus

--------------------------------------------------- 196 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
0

20

40

60

80

100

0 20 40 60 80 100
nz = 476

Ma trận tổng dẫn nút hệ thống 118 bus

Thời gian chạy chương trình

50

45.031
45

40

35

GS
30
GS_CSR
Time(sec)

GS_Sparse
25 MGS_Sparse
NR
NR_CGNE
20
NR_CGNR

14.48966667 14.599
15
11.77066667

10
6.567666667 7.140666667
4.823
5

0
Hệ thống 118 bus

--------------------------------------------------- 197 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

Từ kết quả trên, có thể thấy rằng việc xử lý tính thưa của ma trận đem
lại hiệu quả rất tốt cho chương trình Gauss – Seidel cả về mặt lưu trữ cũng
như thời gian tính toán. Đó thực sự là phương pháp hiệu quả, nên khuyến
khích áp dụng cho các chương trình ngay khi có cơ hội khai thác được tính
thưa của bất cứ dạng bài toán nào. Thêm nữa, quá trình xử lý khối thông qua
thuật toán tô màu cũng đem lại hiệu quả tương đối tốt, giảm được 10 ÷ 15%
thời gian so với chương trình không được xử lý. Nếu sử dụng thêm thuật
toán để tìm gia tốc tối ưu cho quá trình xử lý khối này thì hiệu quả đem lại
không kém bao nhiêu so với thuật toán Newton – Raphson mà vẫn đảm bảo
duy trì được ưu điểm của thuật toán Gauss – Seidel.
Tuy nhiên, ta cũng phải nhìn nhận lại vấn đề khi đem áp dụng kỹ thuật
xử lý thưa và các phương pháp lặp ứng dụng cho chương trình tính toán
CĐXL bằng phương pháp Newton – Raphson. Mặc dù ma trận Jacobi có
tính thưa rất cao đối với các hệ thống lớn, tuy vậy hệ thống càng lớn thì lại
kéo theo số lần lặp của các phương pháp CGNR và CGNE tăng lên nhanh
chóng. Việc tăng số lần lặp làm cho thời gian tăng lên đáng kể, không thể bù
lại số lần tính toán được giảm đi do lưu trữ thưa. Trong khi đó phương pháp
giải trực tiếp dù sử dụng 100% số phần tử của ma trận (kể cả phần tử bằng
0) nhưng lại chỉ có 1 lần thực hiện. Đó là lý do tại sao việc xử lý không đạt
hiệu quả như mong muốn.

--------------------------------------------------- 198 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------

TỔNG KẾT
Vấn đề tiết kiệm không gian lưu trữ và tốc độ tính toán luôn là vấn đề
đặt ra hàng đầu đối với mọi chương trình phần mềm. Sự đồ sộ trong khối dữ
liệu đầu vào luôn luôn đặt ra áp lực cho các chương trình khi lưu trữ, tìm
kiếm, khai thác các thông tin có liên quan. Vì vậy, không đơn thuần chỉ là
việc tăng dung lượng bộ nhớ hay tăng tốc độ CPU mà vấn đề đặt ra là phải
tối ưu không gian hiện có. Kỹ thuật xử lý ma trận thưa đã đem lại cho
nghành khoa học tính toán những thành công rực rỡ trong lĩnh vực này.
Những người đặt nền móng đầu tiên không ai khác đó chính là các kỹ sư
điện và kĩ sư kết cấu, điều đó phản ánh phần nào sự quan trọng của vấn đề
trong các bài toán chuyên nghành kỹ thuật. Ngày nay, vẫn còn rất nhiều các
phòng lab trên thế giới đang tập trung nghiên cứu về ma trận thưa cũng như
các phương pháp để giải các hệ thống “rất thưa”, đủ để cho thấy tầm quan
trọng của nó. Trong phạm vi rất hạn chế , bản đồ án chỉ xin nêu ra những nét
khái quát nhất của vấn đề mà không đi sâu vào chi tiết, các module thực hiện
được vẫn còn mang nặng tính chất chứng minh lý thuyết, chưa xây dựng
được cấu trúc tối ưu của chương trình. Tuy nhiên, những gì mà chương trình
đã làm được sẽ là cơ sở cho sự phát triển hoàn thiện của chương trình này
nói riêng và các chương trình khai thác tính thưa nói chung.

--------------------------------------------------- 199 ---------------------------------------------------


Đồ án tốt nghiệp
------------------------------------------------------------------------------------------------------------
DANH MỤC TÀI LIỆU THAM KHẢO

[1].Enrique Acha,Claudio R Fuerte-Esquivel, Hugo Ambriz-Perez, Cesar Angeles-


Camacho, “FACTS, Modelling and Simulation in Power Networks” Wiley Publication
2004.
[2] Yousef Saad, “Iterative Methods for Sparse linear Systems”, Second Edition with
corrections, January 3rd, 2000.
[3].Richard Barrett,Michael Berry, Tony Chan, James Demmel, June Donato, Jack
Dongarra, Victor Eijkhout, Roldan Pozo, Charles Romine, Henk Van der Volst,
“Templates for the solution of linear systems: Building block for Iterative method”
[4].Petya Vachranukunkiet, “Power Flow computation using Field Programmable Gate
Arrays”, A thesis submitted to the Falculty of Drexel University
[5].John J. Grainger, William D. Stevenson,Jr., “Power System Analysis”, McGraw-
Hill, Inc.
[6] PGS.TS Trần Bách, “Lưới điện & hệ thống điện”(Tập 1), Nhà xuất bản Khoa học Kỹ
thuật 2004.
[7].TS.Đinh Quang Huy, Bài giảng môn học “Tin học ứng dụng trong năng lượng”.
[8].TS.Đỗ Xuân Khôi, “Tính toán phân tích Hệ thống điện”, Nhà xuất bản Khoa học Kỹ
thuật 2001.
[9].website: http://www2.toki.or.id/book/AlgDesignManual/BOOK/BOOK2/NODE61.HTM
[10].website: http://www.ee.washington.edu/research/pstca/
[11].Mục Help, Matlab® 7.0.4, Release 14

-------------------------------------------------------------------------------------------------------------

You might also like