First...don't use signal power if you need accurate distance. I mean, it could work but it would be very inaccurate and unreliable because would be affected by what's in the room due...echoes, materials damping the sound, stuff between the transmitter and receiver damping/blocking the sound, or maybe just the speaker getting stronger or weaker over time. Here are more accurate ways:
1. GPS
2. Make your own GPS-like system: You need at least THREE beacons at known locations so you can triangulate your position relative to the beacons. A few ways to do it:
(a) Synchronize the beacons in time and have them all send out a sound pulse at the same time. The receiver measures how long it takes for the pulse to arrive. Then you can calculate your distance to each beacon and triangulate your position. The problem here is it is really tough to synchronize clocks. GPS does this with atomic clocks. Not recommended.
(b) Have each beacon send out two pulses that travel at different speeds. Probably light and sound. The receiver measures the difference in time of arrival between the light and the sound and uses that to calculate the distance from each beacon. With three beacons, you can triangulate your position. The receiver must be able to identify which sound and light signal came from which beacon so you will need 3 different sound frequencies and 3 different light frequencies.
Since your distances are small, and light travels so much faster than sound you can assume that the signals were sent when the light pules was received. This lets you simplify calculations more like (a) which are easier. But if you are making that assumption you can simplify things even farther with method (c).
(c) Have the 3 beacons send out sound pulses of a unique frequency (so you can tell which beacon sent which sound pulse). But the 3 beacons don't send out a light pulse. Instead, your receiver sends out a light pulse which triggers the beacons to send their sound pulse. Since you assume that the light reaches the beacons instantly, the light basically acts as a global clock that synchronizes everything similar to (a). Simpler than (b) since you need less light transmitters and receivers, but not as accurate as each beacon sending out its own light pulse since the the light needs to travel to the beacon before the sound pulse is sent but you probably won't notice since distances are small, light travels so fast, and sound travels so much slower than light.
3. A variation on (2) is to to just have ONE beacon transmit a sound pulse have an array of 3 microphones on the receiver. The receiver can measure difference in the time of arrival of the sound pulse between all the microphones and from that determine the direction and distance of the beacon. This is similar to how you use your ears to tell where a sound is coming from. This method is inherently less accurate than (2) because the distances between the microphones is smaller than the distance between three beacons. This makes measuring differences in time of arrival more difficult. It is also more difficult because one PIC has to accurately measure the time of arrival for three different signals at the same time.
But the advantage is you need less beacons and it's really simple to just plop the one beacon down and have your result be "the receiver is X meters away in the heading of Y degrees from the beacon in the direction of 30 degrees, whereas with 3 beacons you need to measure the distance and headings of the beacons relative to each other. I would choose this method personally because I don't feel like measuring the absolute position of every beacon. It's trickier though.
(a) You can have the beacon send a light signal so that the receiver knows when the signal was sent (if you assume light reaches the receiver instantly).
(b) You can have the reciever send a light signal to to the beacon to trigger the sound pulse to be sent to synchronize things. Not as accurate as (a) since the light needs to travel to the beacon before the sound pulse is sent but you probably won't notice since distances are small, light travels so fast, and sound travels so much slower than light. No point doing this when there is only one beacon since there's no need to synchronize multiple beacons with each other.