This is a good idea. I'm more a fan of continuous functions though, so rather than a hard cap at 50 people, you set it so that the more troops you have, the less benefit you get from hiding in terms of how close someone has to be to discover you. This can easily be set as a discount on your look_in vs their look_out. I'm sure chadz can come up with a fun pow() function.
As well, I've been thinking that it would be cool for armies to have some kind of sneak function. It would be similar to this idea, except that you can move, just a lot slower than normal and you can be discovered from a greater distance. This might help bandits set up position, or afford an attacking armor some element of surprise.