Hardprob/Minimum Exact Cover — различия между версиями
Материал из DISCOPAL
StasFomin (обсуждение | вклад) |
|||
(не показана одна промежуточная версия этого же участника) | |||
Строка 8: | Строка 8: | ||
* {{has-testdata-and-visualization}} | * {{has-testdata-and-visualization}} | ||
* {{has-pyomo-model}} {{vim|819518997}} | * {{has-pyomo-model}} {{vim|819518997}} | ||
− | * {{has-npc-reduction}} | + | * {{has-npc-reduction}} {{vim|828547057}} |
* {{add-random-fuzzing-tests}} | * {{add-random-fuzzing-tests}} | ||
---- | ---- | ||
Строка 17: | Строка 17: | ||
<!-- * [ Задача в википедии] --> | <!-- * [ Задача в википедии] --> | ||
</small> | </small> | ||
− | |||
− | |||
− | |||
<!-- end --> | <!-- end --> | ||
[[Категория:ClassicHardProblems]] | [[Категория:ClassicHardProblems]] |
Текущая версия на 12:22, 22 сентября 2023
- Коллекция C подмножеств конечного множества S.
- Найти покрытие множества S, на т.е. подмножество C'⊆ C, такое, что для каждый элемент из S принадлежит по крайней мере одному подмножеству из C'.
- Минимизировать суммарных объем покрывающих подмножеств, т.е.
Код в «minimum-exact-cover.ipynb» на гитлаб или живьем в лабе
-
— есть тестовые данные и визуализация.
-
— есть Pyomo-формулировка для ЦЛП. 📺 видео 📺
-
— есть сведение на Python NP-полной задачи к данной. 📺 видео 📺
-
Можно доработать — сделать Вероятностное тестирование NPC-сведения!