Решатель Picosat SAT: установите предел распространения, но какое значение?

Из API:

/* As alternative to a decision limit you can use the number of propagations
 * as limit.  This is more linearly related to execution time. This has to
 * be called after 'picosat_init' and before 'picosat_sat'.
 */
void picosat_set_propagation_limit (PicoSAT *, unsigned long long limit);

Я смотрел в документации, но не мог найти никаких подробностей. Какое значение выбрать? Есть ли лучшая догадка, чем случайное тестирование? Последнее, возможно, займет несколько дней, так как мое время выполнения составляет до 24 часов за один прогон.

На самом деле я использую "pycosat" привязки python для picosat.

PS: может кто-нибудь добавить тег "picosat"?


person mrsteve    schedule 09.11.2013    source источник
comment
мой текущий подход состоит в том, чтобы найти значение, при котором есть решение в течение часа, а затем установить предел распространения * 5, затем * 10, затем * 100, * 500 и т. д. и запустить их все параллельно.   -  person mrsteve    schedule 09.11.2013


Ответы (1)


Параметр propagation_limit — это максимальный размер результирующих моделей, у меня он коррелирует с размером диска (1 миллион результатов в текстовом файле 1 МБ).

person mrsteve    schedule 10.11.2013