Tải bản đầy đủ - 0 (trang)
Hàm tổng hợp chi phí

Hàm tổng hợp chi phí

Tải bản đầy đủ - 0trang

GVHD: ThS.Bùi Thị Thủy



SVTH: Quách Thị Bích Mai - K65B



Để tính tốn vi phạm dung lượng pin, chúng tơi xác định hai biến sau: chứa lượng pin

cần thiết để di chuyển từ lần truy cập cuối cùng đến trạm sạc hoặc kho đến đỉnh và là

mức sạc pin cần thiết từ đến trạm sạc tiếp theo hoặc kho:



Vi phạm dung lượng pin của tuyến đường k sau đó có thể được tính bằng cách cộng

các vi phạm cá nhân tại mỗi lần truy cập vào trạm sạc và khi trở về kho:



Sử dụng các biến được trình bày, những thay đổi về vi phạm dung lượng pin có thể

được tính bằng O(1) cho tất cả các toán tử lân cận.

Các căn cứ cách tiếp cận về khái niệm thời gian đi lại, nghĩa là tính tốn độ vi phạm tại

một khách hàng mà sau một khách hàng có vi phạm thời gian cửa sổ được thực hiện

như thể một chuyến du lịch ngược thời gian để thời gian đến tính khả thi mới nhất tại

trước (vi phạm) khách hàng đã xảy ra. Bằng cách chỉ đưa ra một hình phạt trên đỉnh

đầu tiên nơi cửa sổ thời gian bị vi phạm thay vì tun truyền vi phạm dọc theo tồn bộ

tuyến đường, cách tiếp cận sẽ tránh việc xử phạt các chuỗi khách hàng tốt chỉ vì chúng

xảy ra sau khi một vi phạm thời gian cửa sổ. Một ưu điểm quan trọng khác của phương

pháp này là các vi phạm thời gian cửa sổ tiềm năng đối với việc di chuyển giữa các

tuyến có thể được tính bằng O(1) cho hầu hết các cấu trúc lân cận cổ điển.

Chính xác hơn, bằng cách lưu trữ các hình phạt thời gian cửa sổ tiến và lùi, có thể tính

tốn trong thời gian khơng đổi các hình phạt của thời gian cửa sổ của tuyến đường

được xây dựng từ hai tuyến đường và hoặc của một tuyến đường được xây dựng bằng

cách chèn một đỉnh v giữa hai tuyến đường và. Điều này khơng phải lúc nào cũng có

thể xảy ra nếu các trạm sạc xuất hiện như thời gian sạc tại trạm phụ thuộc vào mức sạc

pin,mà tự nó phụ thuộc vào quãng đường đi đến trạm sạc. Nếu tuyến đường chưa một

trạm sạc , tức là , các biến slack phải được tính tốn lại bằng cách đi qua tuyến đường

cho và tuyến đường cho . Lưu ý rằng một trạm sạc trong tuyến đường đầu tiên hoặc

đỉnh để chèn v là trạm nạp lại khơng cần phải tính tốn lại.



31



GVHD: ThS.Bùi Thị Thủy

4.



SVTH: Qch Thị Bích Mai - K65B



Thành phần VNS



Trong heuristic lai VNS / TS của chúng tôi, thành phần VNS được sử dụng chủ yếu để

đa dạng hóa việc tìm kiếm theo cách có cấu trúc. Để giải thích chức năng của VNS,

trước tiên chúng tơi phác thảo ngắn gọn một quy trình VNS tiêu chuẩn. Sau đó, chúng

tơi liệt kê các đặc điểm cụ thể của việc thực hiện của chúng tơi.

Một thuật tốn VNS chung hoạt động như sau: Cho một tập hợp các cấu trúc lân

cận được xác định trước và giải pháp tốt nhất hiện tại S, VNS tạo ngẫu nhiên một giải

pháp lân cận S’ bằng cấu trúc lân cận . Tiếp theo, một tìm kiếm cục bộ tham lam được

áp dụng trên S’ để xác định mức tối thiểu cục bộ S’’. Nếu S’’ cải thiện giải pháp tốt

nhất hiện tại S, thuật toán VNS chấp nhận giải pháp S’’ và khởi động lại với vùng lân

cận và giải pháp khởi động mới S’’. Ngược lại, nếu S’’ kém hơn giải pháp tốt nhất

đương nhiệm, S’’ bị từ chối. Trong trường hợp này, VNS thực hiện di chuyển nhiễu

ngẫu nhiên theo cấu trúc vùng lân cận xa hơn tiếp theo , bắt đầu lại với S.

Trong mỗi lần lặp lại, VNS của chúng tôi thực hiện di chuyển nhiễu ngẫu nhiên

theo cấu trúc vùng lân cận được xác định trước .. Các cấu trúc lân cận của chúng ta

đều được xác định bằng phương tiện của toán tử trao đổi tuần hồn.

Trong giai đoạn tìm kiếm cục bộ, chúng tơi cải thiện giải pháp được tạo ngẫu nhiên

S’ bằng phương pháp heuristic TS. Việc tìm kiếm dừng lại sau khi lặp lại . Di chuyển

nhiễu loạn được thêm vào danh sách Tabu chung để ngăn chặn sự đảo ngược của nó.

Sau đó, chúng tơi so sánh giải pháp tốt nhất được tìm thấy trong tìm kiếm địa phương

S’’ với giải pháp ban đầu S. Thay vì chỉ chấp nhận các giải pháp cải tiến, chúng tơi sử

dụng một tiêu chí chấp nhận được lấy cảm hứng từ SA metaheuristic.

Các giải pháp cải tiến luôn được chấp nhận, trong khi chúng tôi chấp nhận các giải

pháp xấu đi theo xác suất. Đặt f(.) biểu thị giá trị hàm mục tiêu, xác suất chấp nhận

giải pháp S’’ được tính bằng . Biến số là một hệ thống tham số, được gọi là nhiệt độ.

Khi bắt đầu tìm kiếm, nhiệt độ thường được khởi tạo ở giá trị cao , do đó các giải pháp

xấu thường được chấp nhận, giúp đa dạng hóa việc tìm kiếm. Bằng cách liên tục giảm

nhiệt độ trong q trình tìm kiếm, chỉ có các giải pháp cải tiến mới được chấp nhận.

Hàm này sử dụng tìm kiếm cục bộ và VNS cho 1 khách hàng và chèn thêm lân cận.



32



GVHD: ThS.Bùi Thị Thủy







SVTH: Quách Thị Bích Mai - K65B



Nếu VNS mới được cải thiện thì cập nhật lộ trình

Nếu khơng được cải thiện thì thực hiện chọn điều tốt nhất trong cái xấu nhất)



5. Thành phần của TS



Giai đoạn TS bắt đầu từ giải pháp S’ được tạo ra bởi sự dịch chuyển nhiễu của

thành phần VNS. Trong mỗi lần lặp, vùng lân cận hỗn hợp N(S) của TS được tạo bằng

cách áp dụng các toán tử lân cận sau trên mỗi cung trong danh sách các cung máy

phát: 2-opt*, relocate, exchange, toán tử đặc trưng cho vấn đề được gọi là stationInRe.

Mỗi di chuyển được đánh giá và di chuyển non - tabu tốt nhất được thực hiện. Một

động thái này là vượt trội nếu nó có thể giảm số lượng xe được sử dụng hoặc nếu nó

có giá trị hàm chi phí thấp hơn được tính theo Cơng thức (17).





Tốn tử 2-opt*:

- Tránh sự đảo ngược của các hướng tuyến bằng cách loại bỏ một cung từ mỗi

tuyến và kết nối lại phần đầu tiên của tuyến đầu tiên với phần thứ hai của

-



tuyến thứ hai và ngược lại.

Áp dụng 2-opt * cho các di chuyển giữa các tuyến và xác định toán tử để di

chuyển các trạm sạc, tức là, chúng tôi cho phép loại bỏ và chèn các cung







bao gồm các trạm sạc

Toán tử relocate (di chuyển):

- Loại bỏ một đỉnh khỏi một tuyến đường và chèn nó vào một tuyến đường

-



khác hoặc một vị trí khác trong cùng một tuyến đường.

Xác định cho trạm sạc lại và được áp dụng như nhà điều hành khai thác



tuyến đường trong nội bộ và liên tuyến

 Tốn tử exchange (trao đổi):

- Hốn đổi vị trí của hai đỉnh

 Toán tử stationInRe: thực hiện chèn và xóa các trạm sạc.

- Tốn tử được xác định cho tất cả các cung máy phát (v,w), trong đó v hoặc w

là trạm sạc. Đặt biểu thị tiền thân của w. Nếu cung (v,w) không phải là một

phần của giải pháp hiện tại, stationInRe thực hiện chèn. Nếu cung đã có sẵn,

một trạm sạc lại sẽ bị gỡ bỏ.



33



GVHD: ThS.Bùi Thị Thủy



SVTH: Quách Thị Bích Mai - K65B



CHƯƠNG IV: CÀI ĐẶT THỰC NGHIỆM

Trong chương này, chúng tôi cài đặt thực nghiệm dựa trên bộ dữ liệu là các đồ thị

tự sinh. Chương trình thực nghiệm được xây dựng trên ngơn ngữ C++, cài đặt các

thuật tốn tìm kiếm Tabu, tìm kiếm lân cận biến đổi và thuật toán kết hợp hai thuật

tốn này. Các chương trình này có đầu vào là bộ dữ liệu như nhau. Kết quả thực

nghiệm được đánh giá trên giá trị của giải pháp tốt nhất và thời gian chạy chương

trình, từ đó có thể so sánh hiệu quả của các thuật toán trên.

1. Dữ liệu thực nghiệm



Dữ liệu thực nghiệm được sinh ra ngẫu nhiên từ chương trình. Số đỉnh do người

dùng tự định vị trên màn hình.

Các tham số cho đồ thị gồm: số lượng đỉnh (kho, khách hàng, trạm sạc), trọng số

giữa các nút. Ví dụ: tập dữ liệu có cấu trúc như sau:



Hình 8: Ví dụ đồ thị đầu vào của bài tốn



Trong đó, tọa độ (0,0) là kho bắt đầu, cũng là kho kết thúc tuyến đường. Mỗi một

đỉnh tương ứng là một khách hàng/ trạm sạc và có các biến tên đỉnh, tọa độ đỉnh, yêu

cầu phục vụ.

2. Chương trình thực nghiệm



34



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Hàm tổng hợp chi phí

Tải bản đầy đủ ngay(0 tr)

×