我期待着用遺傳算法解決Set Cover Problem。我一直在尋找一些好的測試例子,但沒有取得任何大的成功。設置封面:生成測試實例
我正在尋找的是一些實例,形式如下:集U = {1,2,...,n}和它的子集S = {{1,2},{4 },{3,4,5}},其中S的聯合爲U.
當然,這是一個小例子,因爲我希望找到一些更大的實例。
那麼,有沒有人有任何關於這種類型的實例的好來源,或者可能是一種生成它們的方法嗎?
後來編輯:所以我看到這個問題已被擱置。我的不好,我會增加一點點細節。
首先,我已經搜索了一些測試實例的集合覆蓋問題。我期望找到的是一些像我上面描述的那些實例。運氣不好,我找到了類似於this的東西。我必須說,鏈接中沒有那麼多的細節可以借我這些實例。
所以我開始考慮一種生成它們的方法。一個pseudocodish解決方案:
given set G=[1,2....,n]
no_of_subsets = random integer
subsets = []
for i in k:
subset = random.sample(G, random(0, len(G))
subsets.add(subset)
雖然我不知道,如果工會(子集)= G,所以沒有在我的疑慮,所以這就是爲什麼我需要一些已經產生的測試實例。