Хотя .dzn
файлы являются традиционными файлами ввода данных для моделей MiniZinc, более новые версии драйвера MiniZinc могут использовать JSON.И R, и Python могут легко генерировать JSON из данных.Пример для создания данных JSON для следующей модели: model.mzn
:
int: n;
array[1..n] of bool: arr;
float: f;
Экспорт простых данных Python:
import json
data = {
"n": 4,
"arr": [True, False, False, True],
"f": 2.75,
}
with open('data.json', 'w') as outfile:
json.dump(data, outfile)
Этот скрипт Python создаст файл data.json
, содержащийданные.MiniZinc теперь может напрямую использовать сгенерированный файл: minizinc --solver gecode model.mzn data.json