Tối thiểu hóa chiều dài dây


10

Vấn đề của tôi là như thế này:

  1. Tôi có một bố cục vật lý được biểu diễn dưới dạng biểu đồ. Các nút đại diện cho các móc / ống dẫn trong đó một dây có thể neo và Edges là kết nối có thể có giữa 2 nút từ nơi dây có thể đi.

  2. Có một số Nút đặc biệt, được gọi là bộ chia, từ đó một dây có thể được chia thành 2 hoặc nhiều hơn đến k. Bây giờ k có thể được lấy không đổi nhưng nó thay đổi từ nút này sang nút khác. Không phải tất cả các nút là bộ chia.

  3. Có một nguồn năng lượng từ đó một dây sẽ xuất hiện. Nó là nguồn. Dây phải được đưa đến n chìm.

  4. Một cạnh có thể lấy bất kỳ số lượng dây đi qua nó theo một trong hai hướng.

  5. Tổng chiều dài dây phải được giảm thiểu.

  6. Bản chất của đồ thị, phẳng hoặc euclid không được biết đến.

Ví dụ : Dưới đây là một mạng mẫu. Các nút được đặt tên là số và các cạnh được cung cấp với trọng số bằng nhau là 1. Nguồn là Node1 và Chìm là Node5, Node9 và Node13. Trong trường hợp 1 Node6 là nút Splitter. Trong trường hợp 2 Node6 và Node4 là các nút chia. Nút chia của k = 3, nghĩa là, nó có thể lấy một dây và tách ra thành 3 dây.

Trường hợp 1 . Chỉ có một nút chia. Nó có ý nghĩa để phân chia tại Node6. nhập mô tả hình ảnh ở đây

Trường hợp 2 . Hai nút chia. Nó có ý nghĩa để phân chia tại Node4 thay vì Node6. nhập mô tả hình ảnh ở đây

Tôi đang tìm kiếm các chiến lược khác nhau để tìm ra một giải pháp chung cho vấn đề này. Biểu đồ trình bày ở đây có quy mô nhỏ hơn so với vấn đề trong tay. Biểu đồ là tĩnh và không thể thay đổi (ý tôi là giải pháp không nên đề xuất bất kỳ cạnh mới nào hoặc đề xuất vị trí bộ chia mới). Bất kỳ tài liệu tham khảo cho bài nghiên cứu được công bố về loại vấn đề này cũng được hoan nghênh.

Trường hợp 3 . Hai nút chia. Nó có ý nghĩa để phân chia tại Node4 và Node14. Lưu ý rằng trường hợp này có trọng lượng cạnh thay đổi cho Edge 8-12, 6-10 và 10-11. Điều quan trọng trong trường hợp này là rút lại dây sau khi bị tách khỏi Node14.

nhập mô tả hình ảnh ở đây

Câu trả lời:


7

Vấn đề này là NP-hard.

Giả sử mỗi đỉnh là một bộ chia có thể chia thành bất kỳ số độ nào, thì vấn đề của bạn chính xác là vấn đề cây Steiner trên biểu đồ , trong đó tập hợp các đỉnh nguồn và đỉnh là các đỉnh cần thiết.


2

iki

Đơn giản hóa là bạn có thể loại bỏ tất cả các nút trung gian (vuông). Tạo một biểu đồ chỉ với nút nguồn, nút chìm và nút chia.

  1. Trong biểu đồ ban đầu của bạn, tìm đường dẫn ngắn nhất từ ​​nút nguồn đến từng nút chia và thêm một cạnh trong biểu đồ mới từ nút nguồn đến nút chia có độ dài đó.

  2. ijijij

  3. ijijij

Niki

ki


Nếu bạn chỉ muốn một tập hợp con của biểu đồ được kết nối, thì đây là vấn đề cây Steiner.
Chao Xu

0

@Chao Xu, tôi cũng thấy Steiner là gần đúng nhất với vấn đề của tôi. Tôi đang khám phá các hệ thống dựa trên Ant để giải quyết vấn đề này.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.