How to decide a node in an overlapped area to select which base station
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Cladio Andrea
am 15 Jan. 2015
Kommentiert: Image Analyst
am 21 Apr. 2017
I have attached the pic, i have 200 nodes in this scenario and randomly located base stations. In the overlapped area, i want the nodes to calculate the distance between their location and base stations and then decide the shortest path , How can i do that , any ideas? Thank you in advance
4 Kommentare
Image Analyst
am 21 Apr. 2017
Maira, try this:
% Create the cyan x's.
numNodes = 200;
nodeX = 200 * rand(1, numNodes);
nodeY = 40 * rand(1, numNodes);
% Plot them
plot(nodeX, nodeY, 'cx', 'MarkerSize', 7);
grid on;
axis equal;
xlabel('X', 'FontSize', 20);
ylabel('Y', 'FontSize', 20);
xlim([0, 200]);
ylim([0, 40]);
% Create the green spots.
numBases = 8;
baseX = 200 * rand(1, numBases);
baseY = 40 * rand(1, numBases);
hold on;
plot(baseX, baseY, 'g.', 'MarkerSize', 25);
% Create the dark blue circles.
numDarkBlueCircles = 23;
blueX = 200 * rand(1, numDarkBlueCircles);
blueY = 40 * rand(1, numDarkBlueCircles);
hold on;
plot(blueX, blueY, 'bo', 'MarkerSize', 7);
% Create the yellow circles.
centers = [baseX', baseY']
radii = 20 * ones(numBases, 1)
% Plot the yellow circles.
viscircles(centers, radii, 'Color', 'y', 'LineWidth', 2);
Akzeptierte Antwort
Image Analyst
am 15 Jan. 2015
Just use the Pythagorean theorem to calculate distances
distances = sqrt((thisX - baseStationXs).^2 + (thisY - baseStationsYs).^2);
% Find the closest one
[closestDistance, indexOfClosestBaseStation] = min(distances);
Not really sure what you mean by "shortest path" but that will give you the index of the base station that is closest to your "test" point.
1 Kommentar
Image Analyst
am 15 Jan. 2015
For a discussion on shortest paths, see Steve's blog. http://blogs.mathworks.com/steve/2011/11/01/exploring-shortest-paths-part-1/
If you mean path, as in the Traveling Salesman Problem, then search the Answers forum or MATLAB Central for that or for "TSP".
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!