IR and ultrasound based positioning beacons

I have this idea for a positioning system based on IR+ultrasound beacons. It is very simple, and I'm surprised that I can't find anything like that already in use. I guess there are some problems that I can't see, so I wanted to ask you to point the flaws in my idea before I invest time and materials into chasing a pipe dream.

The goal is to get an accurate position of a robot inside a room that is decorated with some additional beacons. The positions of the beacons are known to the robot, so that it can position itself relative to them.

Each beacon has an IR sensor for reading signals similar to what a TV remote sends, and an ultrasound emitter, similar to what the distance sensors use. Every time it receives an IR signal, it sends a click through the emitter. Every beacon reacts to a different IR signal. That's all.

The robot has an IR LED for sending signals to the beacons, as well as an ultrasound receiver, also similar to what is in the distance sensors. It sends signals to all the beacons it knows of, and measures the delay between the signal and the receiving of the ultrasound click. From that it calculates the distance to each of the beacons.

Once you have the distances and the beacon positions, it's just a matter of some math to trilaterate your postion from that.

What do you think? What parts would you recommend to use for the ultrasonic sensors/emitters?