Assuming I have $3$ access point namely: $AC_1$, $AC_2$ and $AC_3$ and I want to know my location using this access point and a mobile device that will get signal from the access points.
First thing that I did is save the signal level for different location in the database.
In the first location the signal level for $AC_1$ is $-20 \ \rm{dBm}$, the signal level for $AC_2$ is $-30 \ \rm{dBm}$ and signal level for $AC_3$ is $-40 \ \rm{dBm}$.
In second location the signal level for $AC_1$ is $-10 \ \rm{dBm}$, the signal level for $AC_2$ is $-40 \ \rm{dBm}$ and signal level for $AC_3$ is $-50 \ \rm{dBm}$.
Finally, for the third location the signal level for $AC_1$ is $-30 \ \rm{dBm}$, the signal level for $AC_2$ is $-50 \ \rm{dBm}$ and the signal level for $AC_3$ is $-60 \ \rm{dBm}$.
Now during my actual location detection phase how will I know my current location ? For example I read this signal : $AC_1$ is $-15 \ \rm{dBm}$, $AC_2$ is $-35 \ \rm{dBm}$ and $AC_3$ is $-45 \ \rm{dBm}$. How will I know my current location? My big problem is that signal level is not the same in one location there are times that it will fluctuate. What do you think is the best thing to do for this ?