2016-03-07 3 views
2

решение большой проблемы оптимизации с z3, что вряд ли достигнет оптимального в разумные сроки. Любой способ получить промежуточные решения? возможно, установить внутренний тайм-аут, чтобы он дал мне лучшее решение, которое он нашел до сих пор? Спасибо, Oferполучить промежуточные результаты от z3opt

ответ

1

Вы можете прервать Z3 напрямую из API или установить таймаут. Из текстового интерфейса вы можете прервать его (CTRL^C) или установить тайм-аут. Он возвращает диапазон верхней/нижней границы и модели наилучшей привязки, найденной до сих пор.

+1

Как это сделать в Java API? – polerto

+0

1. Является ли печатная модель при прерывании с помощью^c гарантией удовлетворения жестких ограничений? 2. Обратите внимание, что с -T ничего не печатается (только «Тайм-аут»), а -t вообще не работает в моем опыте (он сразу же возникает с ошибками: (строка «1700 столбцов 1000« ошибка ») (ошибка "строка 1701 столбец 10: модель недоступна") –

+0

в комментарии выше (который я не могу редактировать по-видимому) была ошибка относительно "-t", она должна быть в миллисекундах и, следовательно, если значение достаточно велико результат в порядке. –

Смежные вопросы