At least the SolutionArchive class in desdeo/api/db_models.py is expecting decision variable values to be stored as an array of floats. With the introduction of tensor variables an array of floats feels even less of an ideal format for storing these values than it did before.
Of course it is possible to just force any kind of combination on n-dimensional arrays into a single array of numbers, but that makes reading those numbers later quite difficult.
I would like to store the decision variable values as json instead. That way we could effectively use dicts to store them, and the multidimensionality would no longer cause problems. Even the values stored to the database would be somewhat human readable.
To get the NIMBUS method working in the api and ui, I have a version of the code that just flattens all the arrays into a single array, like I said above, this does not feel like an ideal solution.
At least the SolutionArchive class in desdeo/api/db_models.py is expecting decision variable values to be stored as an array of floats. With the introduction of tensor variables an array of floats feels even less of an ideal format for storing these values than it did before.
Of course it is possible to just force any kind of combination on n-dimensional arrays into a single array of numbers, but that makes reading those numbers later quite difficult.
I would like to store the decision variable values as json instead. That way we could effectively use dicts to store them, and the multidimensionality would no longer cause problems. Even the values stored to the database would be somewhat human readable.
To get the NIMBUS method working in the api and ui, I have a version of the code that just flattens all the arrays into a single array, like I said above, this does not feel like an ideal solution.