would you allow students to self-select into teams when assigning collaborative learning activities? why or why not?

I say no because the students need to learn how to work with other students. Every student learns differently.

What would your criteria be if you were organizing students into teams?
i am not sure

I agree with your answer -- teacher selection of the members of the committees usually works best.

I'd choose students with different social and academic abilities for each group. Ideally, each team would have a good leader, a creative member, a strong academic member, plus a couple of weaker students. Avoid placing students who don't like each other on the same committee.