В Pyomo можно объявить массив наборов (набор наборов или подмножеств, проиндексированных другим набором) с помощью следующей команды (согласно документации):
model.A=Set()
model.B=Set()
model.C=Set(model.B, within=model.A)
Интересно, как я могу объявить переменную или параметр для индексации одним из (под) наборов в массиве наборов в абстрактной модели? Например, как я могу объявить параметр 'model.d', который индексируется как model.B, так и model.C [model.B], где каждый элемент в model.B идентифицирует подмножество model.A?
Когда я это объявляю так:
model.d=Param(model.B, model.C[model.B])
Я получаю сообщение об ошибке:
ValueError: Error retrieving component C[B]: The component has not been constructed.