Is there any limit on the number of children that can be assigned to a program?

No. You can assign any number of children to a program.