A method of estimating a location of a mobile device in a two-dimensional or three-dimensional space, the method comprising: obtaining a first map comprising coordinates of a plurality of first features within a first coordinate space and respective first regions of uncertainty of the coordinates of each of the first features, wherein the first regions of uncertainty include at least two regions with non-proportional dimensions; obtaining a second map comprising coordinates of a plurality of second features within a second coordinate space and respective second regions of uncertainty for the coordinates of each of the second features; determining a plurality of feature pairs, wherein each feature pair includes a first feature of the first map and a second feature of the second map; performing one or more iterations of an iterative process, including: (a) determining third regions of uncertainty of the coordinates of the respective first features by interpolating between (i) initial regions of uncertainty with mutually proportional dimensions and (ii) the first regions of uncertainty, (b) determining a potential transformation between the first coordinate space and the second coordinate space, (c) determining probabilities of the feature pairs based, at least in part, on the third regions of uncertainty, wherein the probability of each feature pair is a probability that the coordinates of the first feature of the feature pair represent a measurement of the second feature of the feature pair obtained from a potential location of the mobile device corresponding to the potential transformation, (d) determining a value representative of a statistical optimality of the potential transformation by evaluating an objective function, wherein the objective function aggregates the probabilities of the feature pairs, (e) determining whether the value of the objective function is approaching a local extreme value of the objective function, and (f) terminating the iterative process if the value of the objective function has reached the local extreme value, otherwise performing another iteration of the iterative process, and estimating the location of the mobile device based on the potential transformation from a final iteration of the iterative process. obtaining a first map comprising coordinates of a plurality of first features within a first coordinate space and respective first regions of uncertainty of the coordinates of each of the first features, wherein the first regions of uncertainty include at least two regions with non-proportional dimensions; obtaining a second map comprising coordinates of a plurality of second features within a second coordinate space and respective second regions of uncertainty for the coordinates of each of the second features; determining a plurality of feature pairs, wherein each feature pair includes a first feature of the first map and a second feature of the second map; performing one or more iterations of an iterative process, including: (a) determining third regions of uncertainty of the coordinates of the respective first features by interpolating between (i) initial regions of uncertainty with mutually proportional dimensions and (ii) the first regions of uncertainty, (b) determining a potential transformation between the first coordinate space and the second coordinate space, (c) determining probabilities of the feature pairs based, at least in part, on the third regions of uncertainty, wherein the probability of each feature pair is a probability that the coordinates of the first feature of the feature pair represent a measurement of the second feature of the feature pair obtained from a potential location of the mobile device corresponding to the potential transformation, (d) determining a value representative of a statistical optimality of the potential transformation by evaluating an objective function, wherein the objective function aggregates the probabilities of the feature pairs, (e) determining whether the value of the objective function is approaching a local extreme value of the objective function, and (f) terminating the iterative process if the value of the objective function has reached the local extreme value, otherwise performing another iteration of the iterative process, and (a) determining third regions of uncertainty of the coordinates of the respective first features by interpolating between (i) initial regions of uncertainty with mutually proportional dimensions and (ii) the first regions of uncertainty, (b) determining a potential transformation between the first coordinate space and the second coordinate space, (c) determining probabilities of the feature pairs based, at least in part, on the third regions of uncertainty, wherein the probability of each feature pair is a probability that the coordinates of the first feature of the feature pair represent a measurement of the second feature of the feature pair obtained from a potential location of the mobile device corresponding to the potential transformation, (d) determining a value representative of a statistical optimality of the potential transformation by evaluating an objective function, wherein the objective function aggregates the probabilities of the feature pairs, (e) determining whether the value of the objective function is approaching a local extreme value of the objective function, and (f) terminating the iterative process if the value of the objective function has reached the local extreme value, otherwise performing another iteration of the iterative process, and estimating the location of the mobile device based on the potential transformation from a final iteration of the iterative process.