Just talking fundamentals, not implementation, position is usually obtained by time-of-arrival of a signal.
Consider a system with a number of "reference" stations at fixed and well known locations, plus one or more "rovers" which we wish to track.
First scenario: Have the rover emit a radio signal, and the references measure the times they receive it. By subtracting the times-of-arrival at a pair of references one obtains a delta range which locates the rover somewhere along a hyperbolic line of position on a flat plane, or hyperbolic surface in xyz. Subtracting time-of-arrival for a different pair of reference stations gives a different hyperbola or surface. All possible combinations give solutions that intersect at a point. There is your rover. This is the basis of cell phone tracking and aircraft location by transponder multilateration.
Second scenario: Have the reference stations each emit a unique radio signal and the rover does the math. This is the basis of GPS and its international cousins, as well as LORAN and OMEGA.
In the first scanario the reference stations have clocks with atomic accuracy. In the second scenario with GPS the rover must know time with atomic accuracy to account for the moving satellites. Since 3 signals are needed to solve for xyz, adding time to solve for xyzt is possible by adding a 4th reference. If your reference positions are known a priori by the rover, and the references are synchronized to atomic precision, then rover dont need to solve for time.
OK thats the theory. In practice radio signals propagate at speed of light, so to get +-1 inch requires about 0.000001 microsecond accuracy. Ordinary GPS is not that accurate, and it could be challenging and expensive to develop your own. Suggest sonar as an easier signal. Speed of sound is about 29 microseconds per cm so your required accuracy is 50 to 100 microseconds. Much more practical for an Arduino.
Either of the basic scenarios works with sonar, and there are several ways to handle clock synchronization. The reference stations can be controlled by one Arduino or each one have an independent brain, sharing a clock synchronization source. If there are many rovers and their cost is to be minimized, have them be the transmitters with a simple timer. Other practical issues include multi-path reflections and variation of speed of sound with temperature.
Polaroid seems to have discontinued that wonderful development kit for their sonar transducers, but many folks make similar stuff for ping-and-listen sonar distance finders. I've bought cheeeep ones in hardware stores. For this you want each one to be either a rover or a reference, so it will ping or listen, not both. Somewhat simplifies the sonar hardware but it will be customized.
So there you have several possible system architectures based on time-of-arrival sonar. To carry out any one of these requires some skill with electronics as well as writing good code.
Good luck with your project.