Uvm_component_utils with parameters

I using a parameterized class in for loop, and I got the error saying:
“Class Specialization Parameter must be constant”

I am trying to give the Agent, Driver, and Monitor an ID Number, and I am creating the Agents in a for loop inside the Environment. When I use the for loop variable as the ID Number, I get the error.

The ID numbers have to be generated on the fly because I don’t know how many Agents will be created in the test until the test is run.