Lưới điện phân phối là khâu cuối cùng của hệ thống điện đưa điện năng trực tiếp đến hộ tiêu dùng. Lưới điện phân phối bao gồm lưới điện trung áp và lưới điện hạ áp, có cấu trúc phức tạp, bao gồm nhiều nút, nhiều nhánh và số lượng đường dây lớn nhất trong hệ thống điện. Tổn thất của lưới điện phân phối chiểm tỷ lệ rất cao: Theo báo cáo của Tập đoàn Điện lực Việt Nam năm 2012 tổng tổn thất trên toàn bộ lưới điện 9,0% trong đó tổn thất trên lưới truyền tải là 2,35%, lưới điện phân phối: 6,65% của lượng điện sản xuất. Vì vậy việc chọn phương thức vận hành tối ưu ở lưới điện phân phối có ý nghĩa rất quan trọng trong việc giảm tổn thất điện năng của toàn bộ hệ thống điện.
Lời cam đoan Tôi xin cam đoan luận văn công trình nghiên cứu riêng hướng dẫn TS Trần Thanh Sơn Tôi xin cam đoan giúp đỡ cho việc thực luận văn cảm ơn thông tin trích dẫn luận văn rõ nguồn gốc Tác giả Bùi Viết Văn Mục lục Lời cam đoan Danh mục ký hiệu, ký tự viết tắt Danh mục bảng biểu Danh mục hình vẽ, đồ thị Phần mở đầu Chương 1: Giới thiệu chung 10 1.1 Lưới điện phân phối 10 1.1.1 Đặc điểm lưới điện phân phối 10 1.1.2 Cấu trúc vận hành lưới điện phân phối 11 1.2 Mô hình toán học 12 1.2.1 Sử dụng biến dòng điện nhánh 14 1.2.2 Sử dụng biến công suất 15 1.3 Các thuật toán nghiên cứu để giải toán tối ưu hóa vận hành cấu trúc lưới điện phân phối 16 1.3.1 Tái cấu trúc lưới điện lập trình tuyến tính [5] 16 1.3.2 Tái cấu trúc lưới điện thuật toán “heuristic” 17 1.3.3 Tái cấu trúc lưới điện thuật toán “heuristic” cải biên 17 1.3.4 Tái cấu trúc lưới điện thuật toán di truyền 17 Chương 2: Tái cấu trúc lưới điện thuật toán di truyền 19 2.1 Thuật toán di truyền 19 2.1.1 Nguồn gốc xuất sứ 19 2.1.2 Cấu trúc giải thuật di truyền 20 2.1.3 Các thành phần thuật toán di truyền 22 2.2 Ứng dụng thuật toán di truyền để tối ưu hoá cấu trúc lưới điện phân phối 25 2.2.1 Lưu đồ giải thuật 26 2.2.2 Thuật toán mã hóa 28 2.2.3 Quá trình tiến hóa 30 2.2.4 Tính phân bố công suất 37 Chương 3: Chương trình tối ưu hoá cấu trúc lưới điện phân phối thuật toán di truyền 39 3.1 Giới thiệu Matlab 39 3.2 Cấu trúc chương trình 40 3.2.1 Nhập liệu 40 3.2.2 Chương trình 43 3.2.3 Dữ liệu đầu 45 3.3 Áp dụng 45 3.3.1 Giới thiệu toán mẫu IEEE 45 3.3.2 Thực thi giải thuật 47 3.3.3 Nhận xét 54 Kết luận chung 55 Hướng phát triển cho đề tài 58 Tài liệu tham khảo 59 Phụ lục 2: Các chương trình Matlab sử dụng luận văn 71 Danh mục ký hiệu, ký tự viết tắt Kí hiệu Nội dung FCO Cầu chì tự rơi LBFCO Cầu chì tự rơi kết hợp cắt có tải GA Giải thuật di truyền KCL Định luật Kirchhoff dòng điện KVL Định luật Kirchhoff điện áp Pc Xác suất lai tạo Pm Xác suất đột biến Danh mục bảng biểu Bảng 2.1 Mô mã hóa cá thể 28 Bảng 2.2 Mô mã hóa cá thể cho sơ đồ 29 Bảng 2.3 Tính độ thích nghi 32 Bảng 2.4 Kết chọn lọc cá thể 32 Bảng 2.5 Mô phép đột biến 37 Bảng 3.1 Các nhánh mở quần thể 47 Bảng 3.2 Các nhánh mở quần thể 48 Bảng 3.3 Các nhánh mở quần thể 49 Bảng 3.4 Các nhánh mở quần thể 50 Bảng 3.5 Các nhánh mở quần thể 51 Bảng 0.1 Dữ liệu nút lưới điện 60 Bảng 0.2 Dữ liệu nhánh lưới điện 61 Bảng 0.3 Dữ liệu nút nhánh lưới điện ban đầu 63 Bảng 0.4 Quần thể 65 Bảng 0.5 Quần thể 66 Bảng 0.6 Quần thể 67 Bảng 0.7 Quần thể 68 Bảng 0.8 Quần thể 69 Danh mục hình vẽ, đồ thị Hình 2.1 Lưu đồ thuật toán giải thuật di truyền 21 Hình 2.2 Bánh xe Roulette 24 Hình 2.3 Lưu đồ thuật toán di truyền 27 Hình 2.4 Sơ đồ lưới điện nút 10 nhánh 29 Hình 2.5 Sơ đồ khối phép chọn lọc 31 Hình 2.6 Sơ đồ khối phép chéo hóa 34 Hình 2.7 Sơ đồ khối phép đột biến 36 Hình 3.1 Cấu trúc chương trình 40 Hình 3.2 Sơ đồ khối chương trình 43 Hình 3.2 Sơ đồ cấu trúc lưới điện ban dầu 46 Hình 3.4 Sơ đồ cấu trúc lưới điện sau tái cấu trúc 53 Phần mở đầu Lý chọn đề tài Lưới điện phân phối khâu cuối hệ thống điện đưa điện trực tiếp đến hộ tiêu dùng Lưới điện phân phối bao gồm lưới điện trung áp lưới điện hạ áp, có cấu trúc phức tạp, bao gồm nhiều nút, nhiều nhánh số lượng đường dây lớn hệ thống điện Tổn thất lưới điện phân phối chiểm tỷ lệ cao: Theo báo cáo Tập đoàn Điện lực Việt Nam năm 2012 tổng tổn thất toàn lưới điện 9,0% tổn thất lưới truyền tải 2,35%, lưới điện phân phối: 6,65% lượng điện sản xuất Vì việc chọn phương thức vận hành tối ưu lưới điện phân phối có ý nghĩa quan trọng việc giảm tổn thất điện toàn hệ thống điện Trong mạng lưới điện phân phối, với lượng phụ tải lưới ngày tăng cấu trúc của lưới điện lại không đổi Từ làm cho tổn thất lưới điện phân phối ngày tăng lên Muốn giảm tổn thất điện ta phải áp dụng phương thức như: thay thiết bị cũ thiết bị mới, nâng cao điện áp vận hành lưới điện, tăng tiết diện dây dẫn, bù kinh tế lưới điện, cải thiện cấu trúc lưới … Tuy nhiên phương pháp đòi hỏi phi phí đầu tư lắp đặt thiết bị lớn Một phương pháp để giảm tổn thất điện lưới điện phân phối tìm cấu trúc vận hành tối ưu lưới Phương pháp tìm cấu trúc vận hành tối ưu cho lưới điện phân phối thay đổi dòng công suất nhánh cách đóng/mở cặp khóa điện để thay đổi cấu trúc lưới điện Khi lưới điện vận hành với chi phí thấp, thỏa mãn yêu cầu chất lượng điện độ tin cậy Có nhiều phương pháp để tìm cấu trúc vận hành tối ưu cho lưới điện phân phối như: phương pháp tìm cấu trúc tối ưu dựa vào ứng dụng kĩ thuật đổi nhánh, kĩ thuật vòng kín, phương pháp lập trình tuyến tính, thuật toán di truyền… Luận văn tập trung nghiên cứu ứng dụng thuật toán di truyền để tìm cấu trúc vận hành lưới điện phân phối cho tổn thất công suất tác dụng nhỏ Cấu trúc luận văn gồm chương: Chương 1: Giới thiệu chung Chương giới thiệu tổng quan lưới điện phân phối mô hình toán học toán tìm cấu trúc vận hành tối ưu lưới điện để cực tiểu hoá tổng tổn thất công suất tác dụng Chương 2: Tái cấu trúc lưới điện thuật toán di truyền Chương giới thiệu thuật toán di truyền cách áp dụng thuật toán để giải toán tìm cấu trúc vận hành tối ưu Chương 3: Chương trình tái cấu trúc lưới điện phân phối thuật toán di truyền Chương giới thiệu chương trình tìm cấu trúc vận hành tối ưu viết môi trường Matlab ứng dụng chương trình để tính toán cho lưới điện 33 nút Mục đích nghiên cứu Luận văn tập trung nghiên cứu cách giải toán tìm cấu trúc vận hành tối ưu lưới phân phối thuật toán di truyền Nhiệm vụ nghiên cứu Nghiên cứu tổng quan lưới điện phân phối Nghiên cứu sở lý thuyết toán tìm cấu trúc vận hành tối ưu lưới điện phân phối Nghiên cứu lý thuyết thuật toán di truyền Nghiên cứu thành lập toán tối ưu hóa tái cấu trúc lưới điện phân phối thuật toán di truyền Lập chương trình tính toán phần mềm Matlab Ứng dụng tính toán cụ thể cho lưới điện cho trước Đối tượng phạm vi nghiên cứu Đối tượng nghiên cứu trọng tâm đề tài áp dụng thuật toán di truyền nhằm giải toán tìm cấu trúc vận hành tối ưu cho lưới phân phối theo hàm mục tiêu tổn thất công suất lưới phân phối nhỏ Phương pháp nghiên cứu Phương pháp nghiên cứu đề tài nghiên cứu lý thuyết, xây dựng thuật toán chương trình để tính toán cho lưới điện phân phối cụ thể Chương 1: Giới thiệu chung 1.1 Lưới điện phân phối 1.1.1 Đặc điểm lưới điện phân phối Lưới điện phân phối khâu cuối hệ thống điện đưa điện trực tiếp đến hộ tiêu dùng Lưới điện phân phối bao gồm lưới điện trung áp lưới điện hạ áp Lưới điện phân phối có cấu trúc phức tạp, bao gồm nhiều nút, nhiều nhánh Lưới điện phân phối trung áp có cấp điện áp 6; 10; 15; 22; 35kV phân phối điện cho trạm phân phối trung áp trạm phân phối phụ tải Lưới điện hạ áp 380/220 V cung cấp điện cho phụ tải hạ áp Mạng lưới điện phân phối cung cấp trực tiếp điện đến hộ tiêu thụ điện, so với mạng lưới điện truyền tải mạng lưới điện phân phối trải rộng toàn phạm vi, số lượng thiết bị, đường dây nhiều hệ thống điện Phương án vận hành lưới điện phân phối thường thay đổi thường xuyên có yêu cầu để đảm bảo cho phụ tải cung cấp điện Do lưới điện phân phối thường có nhiều thiết bị đóng cắt Một đặc điểm quan trọng lưới điện phân phối có cấu trúc mạch vòng kín thường vận hành hở Các yêu cầu lưới điện phân phối: Lưới điện phân phối cung cấp điện trực tiếp tới khách hàng tiêu thụ chất lượng điện áp yêu cầu quan trọng cần đảm bảo Điện áp lưới phân phối nằm giới hạn cho phép từ 5% đến 10% Uđm Các thiết bị máy biến áp, đường dây, cầu chì…phải đảm bảo không bị tải 10 Bảng 0.3 Dữ liệu nút nhánh lưới điện ban đầu 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 10 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 11 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 12 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 13 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 14 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 15 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 16 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 17 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 63 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 19 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 20 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 21 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 22 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 23 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 24 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 26 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 27 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 28 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 29 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 33 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 64 Bảng 0.4 Quần thể 1 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 13 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 14 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 15 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 17 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 18 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 65 Bảng 0.5 Quần thể 2 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 13 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 14 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 15 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 17 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 18 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 66 Bảng 0.6 Quần thể 3 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 13 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 14 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 15 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 17 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 18 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 67 Bảng 0.7 Quần thể 4 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 13 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 14 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 15 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 17 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 18 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 68 Bảng 0.8 Quần thể 5 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 13 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 14 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 15 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 17 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 18 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 69 Phụ lục 2: Các chương trình Matlab sử dụng luận văn Hàm toán: clc clear % Doc du lieu nut [tongSoNut, nut, Udm, Ucb, Scb, code, modunU, phaU, Sng, Stai, Qmin, Qmax, Ys] = readBusData('IEEE33Bus_BusData.xls'); maxNut = max(nut); % Doc du lieu nhanh [tongSoDuongDay, soDuongDay, id, nutDau, nutCuoi, UcbDZ, ScbDZ, chieuDai, Z0, Y0ngang, heSoPhanAp] = readLineData(maxNut, 'IEEE33Bus_LineData.xls'); % Doc ma tran nut - nhanh [NBmatrix] = nodeBranchMatrix('IEEE33Bus_NodeLineData.xls'); % Tao ma tran nhanh [maTranNhanh] = taoMaTranNhanh(tongSoDuongDay, soDuongDay, nutDau, nutCuoi); % Xay dung quan the ban đầu [TT] = SoLuoc(NBmatrix, maTranNhanh); [quanThe1] = khoiTaoQuanThe1(TT); % Thuat toan di truyen [CTToiUu] = ttDiTruyen(quanThe1); Hàm tính trào lưu công suất: function [tongDeltaP] = tinhTraoLuuCS(quanThe1) % Doc du lieu nut [tongSoNut, nut, Udm, Ucb, Scb, code, modunU, phaU, Sng, Stai, Qmin, Qmax, Ys] = readBusData('IEEE33Bus_BusData.xls'); maxNut = max(nut); % Doc du lieu nhanh 71 [tongSoDuongDay, soDuongDay, id, nutDau, nutCuoi, UcbDZ, ScbDZ, chieuDai, Z0, Y0ngang, heSoPhanAp] = readLineData(maxNut, 'IEEE33Bus_LineData.xls'); soCT = length(quanThe1(:,1)); % Tinh tong ton that cong suat cua moi ca the tongDeltaP = zeros(soCT); tonThatQT = 0; for k = 1: soCT [mtNutNhanh] = giaiMaCaThe(maTranNhanh,quanThe1(k,:)); [branch] = quanThe1(k,:); % % Tinh ma tran tong dan Ybus [Ybus] = ybus(tongSoDuongDay, soDuongDay, id, nutDau, nutCuoi, UcbDZ, ScbDZ, chieuDai, Z0, Y0ngang, heSoPhanAp, branch); % Giai tich luoi dien bang GS epsilon = 1e-6; MaxNbrIte = 1000; accel = 1; [U, nbrIte] = plfGS(tongSoNut, nut, Udm, Ucb, Scb, code, modunU, phaU, Sng, Stai, Qmin, Qmax, Ybus, epsilon, MaxNbrIte,accel); % Tinh ton that cong suat tac dung tren cac duong day [deltaP, tongdP] = linePowerLoss(tongSoDuongDay, soDuongDay, chieuDai, Z0, nutDau, nutCuoi, branch, U(nbrIte,:)); tongDeltaP(k) = tongdP; end end Thuật toán di truyền: function [CTToiUu,dpMin] = ttDiTruyen(quanThe1) [tongDeltaP] = tinhTraoLuuCS(quanThe1); 72 [dpMin,k] = min(tongDeltaP); CTToiUu = quanThe1(k,:); tonThatNhoNhat = dpMin; for i = 1:2 [quanThe2]= phepChonLoc(quanThe1,CTToiUu); % Lai tao [quanThe3]= phepLaiTao(quanThe2); % Dot bien [quanThe4]= phepDotBien(quanThe3); [quanThe5]= locQuanThe(quanThe4,CTToiUu); quanThe1 = quanThe5; end [tongDeltaP] = tinhTraoLuuCS(quanThe1); [dpMin,k] = min(tongDeltaP); CTToiUu = quanThe1(k,:); if dpMin > tonThatNhoNhat CTToiUu = CTToiUu; dpMin = tonThatNhoNhat; end disp('CTToiUu'); disp(CTToiUu); disp(dpMin); end Phép chọn lọc function [qthe,caTheTotNhat] = phepChonLoc(quanThe1) % Doc du lieu nut [tongSoNut, nut, Udm, Ucb, Scb, code, modunU, phaU, Sng, Stai, Qmin, Qmax, Ys] = readBusData('IEEE33Bus_BusData.xls'); maxNut = max(nut); % Doc du lieu nhanh [tongSoDuongDay, soDuongDay, id, nutDau, nutCuoi, UcbDZ, ScbDZ, chieuDai, Z0, Y0ngang, heSoPhanAp] = readLineData(maxNut, 'IEEE33Bus_LineData.xls'); % Doc ma tran nut - nhanh [NBmatrix] = nodeBranchMatrix('IEEE33Bus_NodeLineData.xls'); 73 % Tao ma tran nhanh [maTranNhanh] = taoMaTranNhanh(tongSoDuongDay, soDuongDay, nutDau, nutCuoi); soCT = length(quanThe1(:,1)); % Tinh tong ton that cong suat cua moi ca the tongDeltaP = zeros(soCT); tonThatQT = 0; for k = 1: soCT [mtNutNhanh] = giaiMaCaThe(maTranNhanh,quanThe1(k,:)); % [branch] = quanThe1(k,:); % % Tinh ma tran tong dan Ybus [Ybus] = ybus(tongSoDuongDay, soDuongDay, id, nutDau, nutCuoi, UcbDZ, ScbDZ, chieuDai, Z0, Y0ngang, heSoPhanAp, branch); % Giai tich luoi dien bang GS epsilon = 1e-6; MaxNbrIte = 1000; accel = 1; [U, nbrIte] = plfGS(tongSoNut, nut, Udm, Ucb, Scb, code, modunU, phaU, Sng, Stai, Qmin, Qmax, Ybus, epsilon, MaxNbrIte,accel); % Tinh ton that cong suat tac dung tren cac duong day [deltaP, tongdP] = linePowerLoss(tongSoDuongDay, soDuongDay, chieuDai, Z0, nutDau, nutCuoi, branch, U(nbrIte,:)); tongDeltaP(k) = tongdP; tonThatQT = tonThatQT + tongdP; end caTheTotNhat = quanThe1(1,:); tonThatNhoNhat = tongDeltaP(1); 74 disp('tongDeltaP'); disp(tongDeltaP(1)); for i = : soCT if tongDeltaP(i) < tonThatNhoNhat caTheTotNhat = quanThe1(i,:); tonThatNhoNhat = tongDeltaP(i); end end disp('caTheTotNhat'); disp(caTheTotNhat); disp('tonThatNhoNhat'); disp(tonThatNhoNhat); [qthe]= phepChonLoc1(quanThe1,tongDeltaP,tonThatQT); End Phép lai tạo function [quanThe3]= phepLaiTao(quanThe2) soCaThe = length(quanThe2(:,1)); tongSoNhanh = length(quanThe2(1,:)); soCaTheLaiTao = 0; tongSoCaTheLaiTao = 0; quanThe3 = quanThe2; %chon cac ca the tham gia trao doi cheo r = rand(soCaThe,1); for i = 1:soCaThe if r(i) < 0.7 tongSoCaTheLaiTao = tongSoCaTheLaiTao + 1; soCaTheLaiTao(tongSoCaTheLaiTao,:)= i; end end disp('soCaTheLaiTao'); disp(soCaTheLaiTao); % Tim diem lai tao diemLaiTao = randi(tongSoNhanh,1); disp('diemLaiTao') disp(diemLaiTao) %Lai Tao tung cap ca the k=1; while k < tongSoCaTheLaiTao for i=1:diemLaiTao 75 quanThe3(soCaTheLaiTao(k),i) = quanThe3(soCaTheLaiTao(k+1),i); end for i=diemLaiTao+1 : tongSoNhanh quanThe3(soCaTheLaiTao(k+1),i) = quanThe3(soCaTheLaiTao(k),i); end k = k+2; end disp('quanThe3'); disp(quanThe3); end Phép đột biến function [quanThe4]= phepDotBien(quanThe3) soCaThe = length(quanThe3(:,1)); tongSoNhanh = length(quanThe3(1,:)); tongSoBitQT = soCaThe * tongSoNhanh; quanThe4 = quanThe3; % xac dinh vi tri dot bien bitDotBien = 0; tongSoBitDotBien = 0; cTheDB = 0; vTriDB = 0; r = rand(tongSoBitQT,1); for i = 1: tongSoBitQT if r(i) for i = : tongSoBitDotBien cTheDB(i) = floor(bitDotBien(i)/tongSoNhanh); vTriDB(i) = mod(bitDotBien(i),tongSoNhanh); if quanThe4(cTheDB(i),vTriDB(i)) == quanThe4(cTheDB(i),vTriDB(i)) = 0; else quanThe4(cTheDB(i),vTriDB(i)) = 1; end end 76 end disp('quanThe4'); disp(quanThe4); end Hàm lọc cá thể sau phép đột biến lai tạo function [quanThe5]= locQuanThe(quanThe4,CTToiUu) soCT = length(quanThe4(:,1)); % Doc du lieu nut [tongSoNut, nut, Udm, Ucb, Scb, code, modunU, phaU, Sng, Stai, Qmin, Qmax, Ys] = readBusData('IEEE33Bus_BusData.xls'); maxNut = max(nut); % Doc du lieu nhanh [tongSoDuongDay, soDuongDay, id, nutDau, nutCuoi, UcbDZ, ScbDZ, chieuDai, Z0, Y0ngang, heSoPhanAp] = readLineData(maxNut, 'IEEE33Bus_LineData.xls'); % Doc ma tran nut - nhanh [NBmatrix] = nodeBranchMatrix('IEEE33Bus_NodeLineData.xls'); % Tao ma tran nhanh [maTranNhanh] = taoMaTranNhanh(tongSoDuongDay, soDuongDay, nutDau, nutCuoi); soCT = length(quanThe4(:,1)); for i = 1: soCT [mtNutNhanh,a] = giaiMaCaThe(maTranNhanh,quanThe4(i,:)); if a == [tongSoNutCoLap,nutCoLap]= ktNutColap(mtNutNhanh); [coMachVong]= ktMachVong(mtNutNhanh); if tongSoNutCoLap > quanThe5(i,:) = CTToiUu; end if coMachVong == quanThe5(i,:) = CTToiUu; end quanThe5(i,:) = quanThe4(i,:); else quanThe5(i,:) = CTToiUu; end end end 77 [...]... của lưới điện để cực tiểu hoá tổng tổn thất công suất tác dụng Để giải quyết bài toán cực tiểu hóa tổn thất công suất tác dụng trên thực tế có nhiều phương pháp khác nhau Trong bản luận văn này tác giả đã chọn sử dụng giải thuật di truyền để thực hiện bài toán tìm cấu trúc vận hành tối ưu cho lưới phân phối 18 Chương 2: Tái cấu trúc lưới điện bằng thuật toán di truyền 2.1 Thuật toán di truyền Trong... tại 2.2 Ứng dụng thuật toán di truyền để tối ưu hoá cấu trúc lưới điện phân phối Bài toán tìm cấu trúc lưới điện vận hành tối ưu là bài toán xác định cấu trúc lưới điện để có tổn thất công suất nhỏ nhất trong thời gian khảo sát khi biết công suất phụ tải là công suất trung bình trong thời gian khảo sát Dạng tổng quát của bài toán là: P = f(x) Min 25 Trong đó: f(x) là hàm mục tiêu của bài toán, hàm... mô hình sử dụng biến dòng điện nhánh 1.3 Các thuật toán được nghiên cứu để giải bài toán tối ưu hóa vận hành cấu trúc lưới điện phân phối Hiện nay có rất nhiều các phương pháp được sử dụng để giải bài toán tối ưu hóa vận hành cấu trúc lưới điện phân phối, một số phương pháp phổ biến có thể kể đến: 1.3.1 Tái cấu trúc lưới điện bằng lập trình tuyến tính [5] Lập trình tuyến tính là lĩnh vực toán học nghiên... tái cấu trúc lưới điện phân phối như: Các thuật toán dựa trên phương pháp Heuristic Kỹ thuật vòng kín Thuật toán lập trình tuyến tính Giải thuật Kiến (ACS) Giải thuật Di truyền (GA)… 13 Để giải quyết bài toán tái cấu trúc vận hành hệ thống lưới điện phân phối, trước tiên phải xây dựng hàm mục tiêu cực tiểu hóa tổn thất công suất tác dụng trên toàn bộ hệ thống Vấn đề tái cấu trúc hệ thống lưới. .. 1.3.3 Tái cấu trúc lưới điện bằng thuật toán “heuristic” cải biên Có nhiều nghiên cứu đã và đang nỗ lực tìm cách vận dụng kĩ thuật kết hợp giữa “heuristic” và tối ưu hóa Tái cấu trúc lưới điện bằng thuật toán “heuristic” cải biên có nhiều ưu điểm hơn so với bài toán tái cấu trúc lưới điện bằng thuật toán “heuristic” thuần túy Đó là việc kết hợp giữa giải thuật “heuristic” và tối ưu hóa, lưới điện đạt... gây ra quá tải đường dây, mất đối xứng giữa các pha và làm tăng tổn thất trên lưới điện phân phối dẫn đến thiệt hại về kinh tế 1.1.2 Cấu trúc vận hành của lưới điện phân phối Việc lưới điện phân phối phải vận hành hở xuất phát từ các đặc trưng của lưới điện phân phối: Số lượng phần tử như: Lộ ra, nhánh rẽ, thiết bị bù, phụ tải của lưới điện phân phối nhiều hơn truyền tải từ 5 đến 7 lần nhưng mức... thành phần không phù hợp và chọn các thành phần thích nghi hơn để thực hiện quá trình tiến hóa nhằm tạo ra nhiều lời giải mới có độ phù hợp ngày càng cao Kết quả là bằng quá trình tiến hóa qua nhiều thế hệ, thuật toán di truyền sẽ tìm được lời giải tối ưu cho bài toán Kết luận: Chương này giới thiệu tổng quan về lưới điện phân phối và mô hình toán học của bài toán tìm cấu trúc vận hành tối ưu của lưới. .. khai sáng và phát minh ra thuật toán di truyền. [1] Thuật toán di truyền là thuật toán tìm kiếm dựa trên cơ chế chọn lọc tự nhiên, di truyền và tiến hóa Thuật toán di truyền cũng như các thuật toán tiến hóa nói chung hình hành trên quan niệm cho rằng quá trình tiến hóa tự nhiên là quá trình hoàn hảo nhất, hợp lý nhất và nó đã mang tính tối ưu Quá trình tiến hóa thể hiện tính tối ưu ở chỗ thế hệ sau bao... cục Thuật toán di truyền sử dụng các hàm mục tiêu và độ phù hợp thay vì việc tính đạo hàm hay các thông tin hỗ trợ khác Thuật toán di truyền sử dụng những luật thay đổi ngẫu nhiên, xác suất thay thế với những quy luật xác định Thuật toán di truyền làm việc với các thông số cần xác định dưới dạng mã hóa chứ không phải là bản thân trực tiếp của thông số đó 2.1.2 Cấu trúc của giải thuật di truyền Để thuật. .. thuật toán di truyền làm việc tốt đòi hỏi phải có rất nhiều yếu tố, thành phần, những thành phần và yếu tố chính trong cấu trúc của giải thuật di truyền có thể kể đến: Kỹ thuật mã hóa (cấu trúc của nhiễm sắc thể) Hàm đánh giá, xác định độ phù hợp Quá trình sản sinh ban đầu Hoạt động của gen (lai tạo, đột biến…) Xác định thông số Sơ đồ khối của thuật toán di truyền như sau: 20 Hình 2.1 Lưu đồ thuật