Монте-Карло LCA для действий, которые имеют параметры с неопределенностью из проекта SimaPro, возвращает постоянное значение (без неопределенности) - PullRequest
1 голос
/ 06 мая 2019

Я импортировал проект из SimaPro, в котором почти каждое действие использует параметры с неопределенностью. Когда я запускаю LCA Монте-Карло на любом из них в Brightway, результаты постоянны, как будто величины не имеют неопределенности (фрагмент показывает 10 шагов, но он одинаков для 2000 шагов).

sp = bw.SimaProCSVImporter(fp, name="All Param")
sp.apply_strategies()
sp.statistics()  # returns 0 unlinked
sp.write_database(activate_parameters=True)
spdb = bw.Database("All Param")

imported_material = [act for act in spdb if 'Imported' in act['name']][0]

mciter=10
mc_imported = bw.MonteCarloLCA({imported_material:1},('IPCC 2013', 'climate change', 'GWP 100a'))
scores = [next(mc_imported) for _ in range(mciter)]
scores
[0.015027544172490276,
 0.015027544172490276,
 ...
 0.015027544172490276,
 0.015027544172490276]

Я в растерянности, так как все загружается без ошибок, и, глядя на действия и обмены, показывают ожидаемые формулы, параметры и неопределенности параметров.

Я подозреваю, что проблема может быть связана с различием между активными и пассивными параметрами, описанными в документации , но я не понимаю, как сделать обозначение, что эти параметры (все) "активны" за пределами xxx.write_database (activ_parameters = True), как в примере записной книжки с параметризованным набором данных . Я также не вижу, как перечислить, какие параметры являются активными или пассивными, поэтому проблема может быть совсем в другом.

Что мне нужно сделать, чтобы мои параметризованные действия учитывали неопределенность параметров MC LCA? Любая помощь будет наиболее ценной!

Что бы это ни стоило, они работают в проекте SimaPro, откуда они приходят - анализ неопределенности использует неопределенность параметров - поэтому я не думаю, что проблема в исходном проекте.

Спасибо за любые советы, которые вы можете предоставить!

1 Ответ

1 голос
/ 06 мая 2019

Параметризованные запасы, как правило, не работают в Монте-Карло, так как класс Монте-Карло ориентирован на неопределенность точек данных, описанную в PDF-файлах. Существует отдельный проект под названием presamples , который позволяет использовать параметризованные запасы в Монте-Карло посредством некоторых предварительных расчетов - однако, он пока не имеет большой документации. Посмотрите на docs и ParameterizedBrightwayModel .

Примечание. Проверьте имена и формулы параметров в SimaPro, Brightway более строг в том, что позволяет (например, python чувствителен к регистру и содержит больше зарезервированных слов).

...