Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a series of points, which represent mobile devices within a room. Previously I have systematically emitted a ping from each and recorded the time at which it arrives at the others to calculate the distances.

Here's a simple diagram of an example network. simple network

After recording the distances I have the distance information in labelled sets.

A = {B: 2, C: 1, D: 3}
B = {A: 2, C: 2, D: 2}
C = {A: 1, B: 2, D: 2}
D = {A: 3, B: 2, C: 2}

My GCSE maths is rusty, but I feel like I should be able to then draw circles using these values as the respective and then intersect the circles to calculate a relative graph of the nodes.

Every time I try to do it I start out with a series of circles drawn around the root node (in this case A) that looks something like this:

enter image description here

I know that the other nodes must lie on the lines that I have drawn around A, but without being able to position them, how do you draw their distances so that you may intersect the circles and create the graph?

share|cite|improve this question
up vote 1 down vote accepted

You have the freedom to pick an arbitrary position on the D-circle for D. Then draw the circles corresponding to the distances from D and select one of the intersection points of the C-circles from A and D as the location of C. Without further information, there is no way to select one of the resulting mirror symmetric configurations as the true one. Using the circles around C, there should be only one intersection of all three B-circles to give finally the location of B.

You can use the program Geogebra, or any other dynamic geometry software, to play with those choices. The order described is also random, you could also start by fixing a location for B on the B-circle of A.

Hint: With your data, C is right in between A and D, since AD=3, AC=1, DC=2.

Using Geogebra, it turns out that your data is inconsistent, would have been strange (but not necessarily impossible) if all distances were integers.

A working slight modification of the input data is

A = {B: 2.0, C: 1.2, D: 3.0}
B = {A: 2.0, C: 2.2, D: 2.1}
C = {A: 1.2, B: 2.2, D: 2.2}
D = {A: 3.0, B: 2.1, C: 2.2}
share|cite|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.