BTO is fine in general, but I think it puts a little bit of pressure on the groomsmen, who will feel more obligated to comply with the black tie dress code. Also it's somewhat ambiguous (do you really mean optional or do you actually want me to wear a tux?). Some people understand that it means wear the tux if you have it or can get it, but not all do, and then they will feel silly if they show up and are the only groomsman without a tux. This leads me to a broader point about dress codes at weddings:
No matter what dress code you choose, make it clear and tell everyone about it.
This way any guest feeling like a schmuck for under or overdressing will have only themselves to blame.
For the OP's specific issue, I would suggest:
- make the wedding BTO for guests
- for groomsmen:
i) figure out who's got a tux already
ii) help out those who don't somehow - get their size and troll around on eBay for a while, search consignment shops in your area, help them find a rental if you can't find a good one to buy (does not mean others can't wear their own tuxes). You want to have your black tie wedding, I think you owe some effort to help out the most important guests, who will be in many photos and up there with you during the ceremony, in conforming to the dress code you have chosen. How much help they need will depend on your resources and theirs, but you shouldn't put someone through too much hardship to be in the wedding party.