CN111241226A - Site selection method, device and equipment - Google Patents

Site selection method, device and equipment Download PDF

Info

Publication number
CN111241226A
CN111241226A CN202010027902.XA CN202010027902A CN111241226A CN 111241226 A CN111241226 A CN 111241226A CN 202010027902 A CN202010027902 A CN 202010027902A CN 111241226 A CN111241226 A CN 111241226A
Authority
CN
China
Prior art keywords
candidate
points
point
candidate point
geohash
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010027902.XA
Other languages
Chinese (zh)
Other versions
CN111241226B (en
Inventor
支良标
严坦
汤宁
韦增益
吴菁
张雪
何明珊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202010027902.XA priority Critical patent/CN111241226B/en
Publication of CN111241226A publication Critical patent/CN111241226A/en
Application granted granted Critical
Publication of CN111241226B publication Critical patent/CN111241226B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0204Market segmentation
    • G06Q30/0205Location or geographical consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/26Government or public services

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Data Mining & Analysis (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Remote Sensing (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present disclosure provides an addressing method, device and equipment, wherein the addressing method comprises: determining a first set of reference points in an area to be addressed; selecting a plurality of pairs of reference points with the distances not smaller than a second threshold value from the first set as candidate points, wherein the second threshold value is larger than the first threshold value; constructing a network graph based on the multiple pairs of candidate points, wherein the network graph comprises the candidate points and edges among the candidate points, the network graph is a directed graph, and the direction of each edge in the network graph is a first direction; dividing the network map into n sub-network maps, distributing the n sub-network maps to n servers, so that for each candidate point in the received sub-network map, the servers sequentially exclude candidate points whose distance to the candidate point in the first direction is not less than the second threshold, and determine candidate points whose distance to the candidate point in the first direction is less than the second threshold as addressing points.

Description

Site selection method, device and equipment
Technical Field
The present disclosure relates to the field of data screening technologies, and in particular, to a method, an apparatus, and a device for address selection.
Background
At present, in some site selection problems, such as shared single-vehicle parking stops, bus stops, convenience stores and the like, based on consideration of factors such as cost and the like, site selection points need to meet density limiting conditions, namely, more than a certain point location amount cannot be selected in a limited area. For example, at most one convenience store can be set per square kilometer, and for example, the straight-line distance between two stations is not more than 200 meters, or the walking distance between two stations is not less than 50 meters, and the like.
Disclosure of Invention
In view of this, one or more embodiments of the present disclosure provide an addressing method, apparatus, and device.
One or more embodiments of the present specification provide an addressing method, including:
determining a first set of reference points in an area to be addressed, wherein the distance between adjacent reference points in the first set is not greater than a first threshold value;
selecting a plurality of pairs of the reference points with the distances not smaller than a second threshold value from the first set as candidate points, wherein the second threshold value is larger than the first threshold value;
constructing a network graph based on the multiple pairs of candidate points, wherein the network graph comprises the candidate points and edges between the candidate points, the network graph is a directed graph, and the direction of each edge in the network graph is a first direction;
dividing the network map into n sub-network maps, distributing the n sub-network maps to n servers, so that for each candidate point in the received sub-network map, the servers sequentially exclude candidate points whose distance to the candidate point in the first direction is not less than the second threshold, and determine candidate points whose distance to the candidate point in the first direction is less than the second threshold as address selection points, where n is not less than 2.
Optionally, determining the first set of reference points in the to-be-addressed area includes:
determining first position information of each candidate point in the area to be addressed in the longitude direction at first segmentation intervals of the area to be addressed in the longitude direction;
determining second position information of each candidate point in the area to be addressed in the latitude direction at a second division interval of the area to be addressed in the latitude direction;
obtaining the first set according to the first position information and the second position information;
the first division interval is Dx ═ (maxX-minX)/([ X/S ] +1), the second division interval is Dy ═ maxY-minY)/([ X/S ] +1), maxX is a maximum coordinate value in the to-be-addressed region in the longitudinal direction, minX is a minimum coordinate value in the longitudinal direction in the to-be-addressed region, X is a length value of a long side in the longitudinal direction of the to-be-addressed region, S is the first threshold, maxY is a maximum coordinate value in the to-be-addressed region in the latitudinal direction, and minY is a minimum coordinate value in the to-be-addressed region in the latitudinal direction.
Optionally, selecting a plurality of pairs of candidate points whose distances are not smaller than a second threshold from the first set includes:
performing Geohash coding on each reference point in the first set to obtain a plurality of Geohash blocks;
determining the search range of each Geohash block;
and for each Geohash block, searching the Geohash blocks of which the distances between the Geohash blocks and the Geohash blocks are not less than the second threshold value in the longitude direction and the latitude direction of the Geohash block according to the search range to obtain the multiple pairs of candidate points.
Optionally, determining a search range of each Geohash block includes:
taking each Geohash block as a starting point, taking the Geohash blocks with the number of Cy towards the latitude direction and the Geohash blocks with the number of Cx towards the longitude direction as the search range of each Geohash block, wherein Cy ═ S/dy ] +1, Cx ═ S/dx ] +1, dy is the distance value between two vertexes of the Geohash blocks adjacent to each other in the latitude direction, and dx is the distance value with a small value in two distance values between two pairs of vertexes of the Geohash blocks adjacent to each other in the longitude direction.
Optionally, for each candidate point in the received sub-network graph, the server excludes candidate points whose distance to the candidate point in the neighboring candidate points in the first direction is not smaller than the second threshold, and determines candidate points whose distance to the candidate point in the neighboring candidate points in the first direction is smaller than the second threshold as address selection points, including:
step A: enabling candidate points with the income degree of 0 in the network graph to be marked firstly;
and B: enabling the candidate point with the income degree of 0 in the network graph to send a message to the candidate point adjacent to the candidate point in the first direction;
and C: performing second marking on the candidate points receiving the messages, updating the degree of income according to the number of the received messages, and sending messages to the candidate points adjacent to the candidate points in the first direction, wherein the candidate points with the degree of income after the degree of income is updated this time are 0;
step D: for the candidate points which receive the messages, updating the degree of income according to the number of the received messages, and performing first marking on candidate points which are not marked and have the degree of income of 0 after the degree of income is updated at this time;
and repeating the steps B to D until no candidate point for sending the message exists in the network map, and determining the point of the network map subjected to the first marking as the addressing point.
Optionally, the method further includes:
enabling each candidate point in the network graph to send messages to the candidate points adjacent to the first direction of the candidate point;
and determining the number of the messages received by each candidate point in the network graph as the in-degree of the candidate point.
Optionally, the method further includes:
after a network graph is constructed on the basis of the multiple pairs of candidate points, numbering each candidate point in the network graph according to the priority of the candidate point in the network graph, wherein the priority is in positive correlation with the size of the number;
determining a direction in which the candidate point with the larger number points to the candidate point with the smaller number adjacent thereto as the first direction.
One or more embodiments of the present specification further provide an address selecting apparatus, including:
the device comprises a first determining module, a second determining module and a judging module, wherein the first determining module is used for determining a first set of reference points in a to-be-addressed area, and the distance between adjacent reference points in the first set is not greater than a first threshold;
a selection module, configured to select, as candidate points, pairs of the reference points whose distances are not smaller than a second threshold from the first set, where the second threshold is larger than the first threshold;
a building module, configured to build a network graph based on the multiple pairs of candidate points, where the network graph includes the candidate points and edges between the candidate points, the network graph is a directed graph, and a direction of each edge in the network graph is the first direction;
a second determining module, configured to divide the network map into n sub-network maps, distribute the n sub-network maps to n servers, so that, for each candidate point in the received sub-network map, the servers sequentially exclude candidate points whose distances from candidate points adjacent to the candidate point in the first direction are not greater than the second threshold, and determine, as address points, candidate points whose distances from candidate points adjacent to the candidate point in the first direction are greater than the second threshold, where n is not less than 2.
Optionally, the first determining module includes:
the first determining unit is used for determining first position information of each candidate point in the area to be addressed in the longitudinal direction at first division intervals of the area to be addressed in the longitudinal direction;
a second determining unit, configured to determine, at a second division interval in the latitudinal direction of the area to be addressed, second position information in the latitudinal direction of each candidate point in the area to be addressed;
a third determining unit, configured to obtain the first set according to the first location information and the second location information;
the first division interval is Dx ═ (maxX-minX)/([ X/S ] +1), the second division interval is Dy ═ maxY-minY)/([ X/S ] +1), maxX is a maximum coordinate value in the to-be-addressed region in the longitudinal direction, minX is a minimum coordinate value in the longitudinal direction in the to-be-addressed region, X is a length value of a long side in the longitudinal direction of the to-be-addressed region, S is the first threshold, maxY is a maximum coordinate value in the to-be-addressed region in the latitudinal direction, and minY is a minimum coordinate value in the to-be-addressed region in the latitudinal direction.
Optionally, the selecting module includes:
the encoding unit is used for performing Geohash encoding on each reference point in the first set to obtain a plurality of Geohash blocks;
a fourth determining unit, configured to determine a search range of each Geohash block;
and the searching unit is used for searching the Geohash blocks of which the distances to the Geohash blocks are not less than the second threshold value from the longitude direction and the latitude direction of the Geohash blocks according to the searching range to obtain the multiple pairs of candidate points.
Optionally, the fourth determining unit is configured to:
taking each Geohash block as a starting point, taking the Geohash blocks with the number of Cy towards the latitude direction and the Geohash blocks with the number of Cx towards the longitude direction as the search range of each Geohash block, wherein Cy ═ S/dy ] +1, Cx ═ S/dx ] +1, dy is the distance value between two vertexes of the Geohash blocks adjacent to each other in the latitude direction, and dx is the distance value with a small value in two distance values between two pairs of vertexes of the Geohash blocks adjacent to each other in the longitude direction.
Optionally, the second determining module includes:
a first marking unit for performing step a, the step a comprising: enabling candidate points with the income degree of 0 in the network graph to be marked firstly;
a sending unit, configured to perform step B, where step B includes: enabling the candidate point with the income degree of 0 in the network graph to send a message to the candidate point adjacent to the candidate point in the first direction;
a second marking unit for performing step C, the step C comprising: performing second marking on the candidate points receiving the messages, updating the degree of income according to the number of the received messages, and sending messages to the candidate points adjacent to the candidate points in the first direction, wherein the candidate points with the degree of income after the degree of income is updated this time are 0;
an update unit configured to perform step D, the step D including: for the candidate points which receive the messages, updating the degree of income according to the number of the received messages, and performing first marking on candidate points which are not marked and have the degree of income of 0 after the degree of income is updated at this time;
a fifth determining unit, configured to repeatedly perform the steps B to D until there is no candidate point for sending a message in the network map, and determine a point in the map where the first marking is performed as the addressing point.
Optionally, the apparatus further comprises:
a sending module, configured to enable each candidate point in the network map to send a message to a candidate point adjacent to the first direction of the candidate point;
and a third determining module, configured to determine that the number of the messages received by each candidate point in the network graph is the incoming degree of the candidate point.
Optionally, the apparatus further comprises:
the numbering module is used for numbering each candidate point in the network map according to the priority of the candidate point in the network map after the network map is constructed on the basis of the multiple pairs of candidate points, wherein the priority is positively correlated with the size of the number;
and the fourth determining module is used for determining the direction in which the candidate point with the large number points to the adjacent candidate point with the small number as the first direction.
One or more embodiments of the present specification also provide an electronic device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein the processor implements any of the above-mentioned addressing methods when executing the program.
The addressing method of one or more embodiments of the present specification includes determining reference points that are distributed more densely in an area to be addressed, selecting candidate points that have conflicts among the reference points according to a density constraint condition of the addressing points (i.e., a distance between the addressing points is not greater than a second threshold value) to construct a network graph, dividing the constructed network graph into a plurality of sub-network graphs based on a distributed graph calculation framework, and distributing the sub-network graphs to a plurality of servers for processing, so that each server can be used to obtain addressing points that satisfy the density constraint condition by excluding candidate points that have conflicts with each candidate point in the network graph based on the density constraint condition in a parallel operation manner, and without calculating candidate points that satisfy the density constraint condition based on each candidate point, the site selection efficiency can be improved.
Drawings
FIG. 1 is a flow chart illustrating a method of addressing in accordance with an exemplary embodiment of the present disclosure;
FIG. 2 is a schematic diagram illustrating an area to be addressed in accordance with an exemplary embodiment of the present disclosure;
FIG. 3 is a diagram illustrating a lookup range of a Geohash block, according to an illustrative embodiment of the present disclosure;
FIG. 4 is a flow diagram illustrating the determination of an addressing point based on a constructed network graph in accordance with an exemplary embodiment of the present disclosure;
FIG. 5 is a schematic diagram illustrating the processing of candidate points in a constructed network graph according to an exemplary embodiment of the present disclosure;
fig. 6 is a block diagram illustrating an addressing device according to an exemplary embodiment of the present disclosure.
Detailed Description
In order to more clearly illustrate the embodiments of the present disclosure or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present disclosure, and other drawings can be obtained by those skilled in the art without creative efforts.
For the purpose of promoting a better understanding of the objects, aspects and advantages of the present disclosure, reference is made to the following detailed description taken in conjunction with the accompanying drawings.
It should be noted that all expressions using "first" and "second" in the embodiments of the present disclosure are used for distinguishing two entities with the same name but different names or different parameters, and it should be noted that "first" and "second" are only used for convenience of expression and should not be construed as limitations of the embodiments of the present disclosure, and the following embodiments do not describe this.
One or more embodiments of the present specification provide an addressing method that can be used for addressing under a density limitation condition for an addressing point, for example, if a "walking distance is less than 100 meters", a distance between two stations is less than 100 meters, which is a density limitation condition for the addressing point. The addressing method comprises the steps of firstly selecting reference points which are densely arranged in an area to be addressed, wherein the distance between the reference points is not more than 1 meter, selecting candidate point pairs with conflicts under the density limiting condition from the reference points according to the density limiting condition, wherein the distance between the candidate point pairs is not less than 100 meters, excluding candidate points with the distance between the candidate points and not less than 100 meters based on the candidate points, determining the candidate points as addressing points, and setting stations at the addressing points, wherein the distance between the candidate points and the candidate points is not less than 100 meters.
Fig. 1 is a flowchart illustrating an addressing method according to an exemplary embodiment of the present disclosure, as shown in fig. 1, the method including:
step 101: determining a first set of reference points in an area to be addressed, wherein the distance between adjacent reference points in the first set is not greater than a first threshold value;
in an exemplary scenario, the area to be addressed is, for example, a street, a plurality of reference points need to be determined in the area, for example, a plurality of reference points whose distance is not greater than the distance S may be determined in the entire area to be addressed, and the size of S may be determined according to the resolution of the map, and may be equal to the maximum resolution of the map, such as 1 meter.
Step 102: selecting a plurality of pairs of the reference points with the distances not smaller than a second threshold value from the first set as candidate points, wherein the second threshold value is larger than the first threshold value;
assuming that the density of the address points is limited to "walking distance is less than 100 m", the second threshold is 100.
Step 103: constructing a network graph based on the multiple pairs of candidate points, wherein the network graph comprises the candidate points and edges between the candidate points, the network graph is a directed graph, and the direction of each edge in the network graph is a first direction;
in step 103, for example, a directed weightless graph G ═ V, E may be constructed, where the point set V is all candidate points, each edge in the edge set E indicates that there is a conflict between two end points, for example, the distance between two points exceeds 100 meters, the candidate points in the network graph may be numbered, and the direction of the network graph may be the direction in which the candidate points with large number point to the candidate points with small number.
Step 104: dividing the network map into n sub-network maps, and distributing the sub-network maps to n servers, wherein n is not less than 2, so that for each candidate point in the received sub-network maps, the servers sequentially exclude candidate points whose distance from the candidate point in the first direction is not greater than the second threshold, and determine candidate points whose distance from the candidate point in the first direction is greater than the second threshold as addressing points.
For example, the network Graph may be divided into n sub-network graphs based on a distributed Graph computation framework, for example, a distributed Graph computation framework such as MaxCompute and Spark Graph may be used, and it should be noted that the adopted distributed Graph computation framework is different, and the value of n is also different correspondingly.
The addressing method of the embodiment of the disclosure includes the steps of firstly determining reference points which are distributed densely in an area to be addressed, selecting candidate points with conflicts from the reference points according to density limiting conditions of the addressing points (namely, the distance between the addressing points is not larger than a second threshold value) to construct a network graph, dividing the constructed network graph into a plurality of sub-network graphs based on a distributed graph calculation framework, distributing the sub-network graphs to a plurality of servers for processing, eliminating the candidate points with conflicts with the candidate points in the network graph based on the density limiting conditions by using the servers in a parallel operation mode, obtaining the addressing points meeting the density limiting conditions, and improving addressing efficiency.
In one or more embodiments of the present disclosure, a set of points may be selected in the area to be addressed, and a polygon surrounded by edges of any adjacent points of the set of points represents the addressing area, and the points may be represented by any geographic information system coordinate system, such as the GCJ02 geographic coordinate system. Based on this, in step 101, determining that the first set of candidate points whose distance in the to-be-addressed area is not greater than the first threshold may be performed according to the following processing flow: determining first position information of each candidate point in the area to be addressed in the longitudinal direction at the division interval of the area to be addressed in the longitudinal direction; determining second position information of each candidate point in the area to be addressed in the latitude direction at the division interval of the area to be addressed in the latitude direction; the segmentation interval is an interval between two reference points, the first position information is, for example, an abscissa value of the candidate point, the second position information is, for example, an ordinate value of the candidate point, and the first set is obtained according to the first position information and the second position information. For example, the abscissa and the ordinate of each reference point may be determined according to the first position information and the second position information, and after the coordinates of each reference point are obtained, the position of each reference point in the area to be addressed is obtained. For example, the division interval in the longitudinal direction and the division interval in the latitudinal direction may be determined first. Firstly, calculating a maximum coordinate value maxX and a minimum coordinate value minX in the longitude direction, and a maximum coordinate value maxY and a minimum coordinate value minY in the latitude direction in an area to be addressed; calculating the distance between (maxX, maxY) and (minX, maxY), calculating the distance between (maxX, minY) and (minX, minY), and taking the maximum value X of the two distances, namely X is the length value of the long side in the longitude direction of the area to be addressed, so that the trapezoidal deformation of spherical projection can be considered, namely the lengths of the two sides in the longitude direction of the area to be addressed are inconsistent. The distance Y between (maxX, maxY) and (maxX, minY) is calculated. The first division interval may be (maxX-minX)/([ X/S ] +1), and the second division interval may be (Dy-maxY-minY)/([ X/S ] +1), where S is the above-mentioned first threshold, and the whole area to be addressed is divided by the first division interval and the second division interval, that is, the coordinate values of the respective reference points are taken as (minX + Dx i, minY + Dy), where 0 ═ i ═ X/S ] +1, and 0 ═ j [ [ Y/S ] +1, where [ a ] represents the maximum integer not exceeding a, that is, rounded downward. And filtering the points obtained after segmentation, and only keeping the points within the range of the region needing to be split. For example, the area in which the building exists in the area to be addressed is an area range which does not need to be split, points in other area ranges except for the area which does not need to be split are reserved, and the reserved points are the reference points. In fig. 2, a horizontal axis is taken in a longitudinal direction, a vertical axis is taken in a latitudinal direction, and a trapezoidal region with a, b, c, and d as vertexes is taken as a region to be addressed, wherein an abscissa of a point c is a maximum coordinate value in the latitudinal direction in the region to be addressed, i.e., maxX, an abscissa of a point b is a minimum coordinate value in the latitudinal direction in the region to be addressed, i.e., minX, ad is a short side in the latitudinal direction of the region to be addressed, bc is a long side in the latitudinal direction of the region to be addressed, bc is X, and an ordinate of a or d is a maximum coordinate value in the latitudinal direction of the region to be addressed, i.e., maxY, a vertical coordinate of b or c is a minimum coordinate value in the latitudinal direction of the region to be addressed, i.e., minY.
In order to avoid global pairwise pairing of reference points in the area to be addressed to determine candidate points meeting the density limitation condition, computing can be performed by using Geohash and only considering adjacent points, wherein the Geohash is a coding mode of a global coordinate, each Geohash code comprises coordinates in a specific range, the Geohash has different precisions according to the length of a coding result, the longer the range covered by the code is, any point on the earth can obtain a code by using the Geohash for the specific precision, the code represents a range represented by four numbers (x1, y1, x2 and y2), and for any point with x1< longitude < x2 and y1< y > 2, the point belongs to the Geohash block and only belongs to the Geohash block, and x2-x1 and y2-y1 of each block under the precision are equal. Based on this, in one or more embodiments of the present specification, selecting pairs of candidate points from the first set whose distances are not less than a second threshold may include: performing Geohash coding on each reference point in the first set to obtain a plurality of Geohash blocks; determining the search range of each Geohash block; for each geo-hash block, searching for the geo-hash block whose distance to the geo-hash block is not less than the second threshold value in the longitude direction and the latitude direction of the geo-hash block according to the search range, and obtaining the multiple pairs of candidate points, where the search range of the geo-hash block may be, for example, a specified number of geo-hash blocks in the longitude direction and the latitude direction of the block.
In one or more embodiments of the present description, determining the lookup range of each Geohash block may include: taking each Geohash block as a starting point, and taking Geohash blocks with the number of Cy towards the latitude direction and Geohash blocks with the number of Cx towards the longitude direction as the search range of each Geohash block, wherein Cy ═ S/dy ] +1, Cx ═ S/dx ] +1, wherein dy is the distance value between vertexes adjacent to the Geohash blocks in the latitude direction, and dx is the distance value with a small value in two distance values between two rows of vertexes adjacent to the Geohash blocks in the longitude direction.
In order to facilitate understanding of the present solution, an exemplary description is given below of an operation of searching for candidate point pairs in a to-be-addressed area by using Geohash, where the candidate point pairs satisfying the density constraint condition are assumed to be less than 100 meters, and the second threshold is 100, and selecting multiple pairs of candidate points from the first set, where a distance between the candidate points is not less than the second threshold, may be implemented by the following processing flows.
And performing Geohash coding on each candidate point in the network diagram, wherein the precision of Geohash can be preset according to requirements.
And solving the range of the Geohash blocks which possibly contain the candidate point pairs with the distance not less than the second threshold value.
Setting: s represents the maximum Distance between reference points, and for the requirement of "step Distance is less than 100 meters" (i.e. the Distance between two points is not greater than 100 meters), Distance (x1, y1, x2, y2) within 100 meters of the straight line Distance may be calculated first, where (x1, y1), (x1, y2), (x2, y1) and (x1, y1) are coordinates of four vertices of the Geohash block, Distance (x1, y1, x1, y1) represents the Distance dy from point (x1, y1) to point (x1, y1) is Distance (x1, y1, x1, y1), two points with the same longitude and determined by latitude difference, and their longitude is determined, and, in the same way, y 1-1 of the Geohash block is substituted into the formula (i.e. latitude difference is determined), so that the y1 of the block is substituted into the formula of the above mentioned. The search range is that each Geohash block searches for Cy ═ S/dy ] +1 block north to south (i.e., latitudinal direction);
solving the range of Distance (x1, y1, x2 and y2), the maximum value of maxY 2 and the minimum value of minY 1 for all the Geohash blocks obtained by encoding;
d1=Distance(x1,minY-Cy(y2-y1),x2,minY-Cy(y2-y1))
d2=Distance(x1,maxY+Cy(y2-y1),x2,maxY+Cy(y2-y1))
dx takes the smaller of d1 and d 2.
Two points with the same latitude and determined longitude difference have the same distance at the same latitude, and at the same longitude, x2-x1 of the Geohash block is equal (namely the longitude difference is determined), so that the values of x1 and x2 of any Geohash block are taken and substituted into the formula, and the search range is that each Geohash block searches for Cx ═ S/dx ] +1 blocks to the east and west (namely the longitude direction).
For simplicity, in the following, in connection with fig. 3, a Geohash block, such as the one encoded with wtm6dtm shown in fig. 3, is taken as an example, and assuming that S is 100, the Geohash precision is 7.
The Geohash code with the accuracy of 7 for the candidate point (120, 30) is wtm6dtm, and the range thereof (x1, y1, x2, y2) is (119.999542,29.999542,120.000916,30.000916), dy-152.8741, and Cy-S/dy + 1-1 block is searched in the latitudinal direction.
minY-Cy(y2-y1)=29.998169,maxY+Cy(y2-y1)=30.002289。
d1=132.395270、d2=132.389774、dx=132.389774
The longitude direction looks up Cx ═ S/dx ] +1 ═ 1 block.
From the above calculation, for the Geohash block encoded with wtm6dtm, the block to be searched is the Geohash block encoded with wtm6dth, wtm6dtj, wtm6dtn, wtm6dtk, wtm6dtq, wtm6dts, wtm6dtt and wtm6dtw shown in fig. 3.
The point T in fig. 3 is the position of the coordinate point (120, 30), and the circle in fig. 3 is a range with a radius of 100 meters and the coordinate point (120, 30) as the center, it should be noted that when the range crosses the equator, the distance between two points with the same longitude difference on the equator is greater than that between two points on other latitudes, that is, greater than d1 and d2, so the search range is still valid.
After determining the search range of the Geohash blocks, all candidate point pairs are searched in all two Geohash blocks which may contain nearby points, then the actual distance (such as "walking distance") between the selected point pairs can be calculated, and then candidate points with conflicts are filtered out.
In one or more embodiments of the present disclosure, the addressing method may further include: after a network graph is constructed on the basis of the multiple pairs of candidate points, numbering each candidate point in the network graph according to the priority of the candidate point in the network graph, wherein the priority is in positive correlation with the size of the number; determining a direction in which the candidate point with the larger number points to the candidate point with the smaller number adjacent thereto as the first direction. For some application scenarios, for example, a shared radio site scenario, some candidate points have station establishment advantages, for example, the candidate point is located in an advantageous section, or the candidate point has a lower station establishment cost, and the candidate point has a higher priority. When candidate points are numbered according to their priorities, the higher the priority of a candidate point, the larger the value of the candidate point's number, e.g., for some two candidate points a and B, the priority value of candidate point a is 3, the priority value of candidate point B is 2, the number of candidate point a is 11, and the number of candidate point B is 10, i.e., the value of the candidate point a's number is greater than the value of the candidate point B's number. In encoding the candidate points, the encoding of each candidate point may be made different to uniquely identify the candidate point. In addition to numbering candidate points according to their priorities, the candidate points may also be numbered according to their longitudes and latitudes, for example, a character string may be concatenated to the left of each candidate point in a manner of longitude plus comma plus latitude, and the character string may be used as the number of the candidate point, and for candidate points with priorities, a priority value may be added as a prefix of the number at the time of numbering concatenation.
In one or more embodiments of the present description, after the candidate points are numbered, the direction of the constructed network graph may be that a candidate point with a large number value points to a candidate point with a small number value.
In one or more embodiments of the present specification, for each candidate point in the received subnetwork graph, the excluding, by the each server, candidate points whose distance from the candidate point in the neighboring candidate points in the first direction is not smaller than the second threshold, and determining, as an addressing point, a candidate point whose distance from the candidate point in the neighboring candidate points in the first direction is smaller than the second threshold, may include:
step A: enabling candidate points with the income degree of 0 in the network graph to be marked firstly;
and B: enabling the candidate point with the income degree of 0 in the network graph to send a message to the candidate point adjacent to the candidate point in the first direction;
and C: performing second marking on the candidate points receiving the messages, updating the degree of income according to the number of the received messages, and sending messages to the candidate points adjacent to the candidate points in the first direction, wherein the candidate points with the degree of income after the degree of income is updated this time are 0;
step D: and updating the degree of income of the candidate points receiving the messages according to the number of the received messages, and performing first marking on candidate points which are not marked and have the degree of income of 0 after the current updating of the degree of income, wherein the non-marking means that any one of the first marking and the second marking is not performed.
And repeating the steps B to D until no candidate point for sending the message exists in the network map, and determining the point of the first mark in the network map as an addressing point.
In one or more embodiments of the present disclosure, before performing step a, the degree of entry of each candidate point may be determined, and based on this, the addressing method may further include: enabling each candidate point in the network graph to send messages to the candidate points adjacent to the first direction of the candidate point; and determining the number of the messages received by each candidate point in the network graph as the in-degree of the candidate point.
In one or more embodiments of the present specification, the step 104 may be implemented by using a distributed Graph computation framework, for example, a distributed Graph computation framework such as MaxCompute and Spark Graph, and a process of implementing the step 104 is described below by taking the MaxCompute Graph computation framework as an example, where the process includes computing an approach degree of each candidate point in the network Graph and executing the process shown in fig. 4 after computing the approach degree of each candidate point.
401': and calculating the degree of entry of each candidate point in the network diagram, for example, each candidate point sends a message to a candidate point downstream of the candidate point, wherein the candidate point downstream of the current candidate point is, for example, a candidate point which is adjacent to the current candidate point and has a smaller number than the current candidate point. And summarizing the received messages by each candidate point, wherein the number of the messages received by each candidate point is the entry degree of the candidate point, and each candidate point records the entry degree.
After determining the popularity of each candidate point in the network map, the address selection point of the area to be selected may be determined through a process shown in fig. 4, where the process includes:
step 401: checking each candidate point, and if the in-degree of the point is 0, coloring the candidate point itself black (namely, an example of the first mark);
step 402: the candidate point colored black in step 401, sends a message to the candidate point downstream thereof;
step 403: for candidate points receiving messages, whether the degree of entry of the candidate points is 0 or not is judged, the candidate points are dyed to be white, and the number of the received messages is subtracted from the degree of entry of the candidate points;
step 404: the candidate point dyed white in step 403 while decreasing the in-degree to 0 sends a message to the candidate point downstream thereof;
step 405: subtracting the number of received messages from the degree of entry of the candidate points of the received messages, and dyeing the candidate points to be black if the degree of entry of the candidate points is reduced to 0 and the candidate points are not dyed; fig. 5 is a schematic distribution diagram of candidate points in a to-be-selected area according to an exemplary embodiment of the present disclosure, as shown in fig. 5, each circle in the diagram represents one candidate point, a number in the circle represents a current in-degree of the candidate point, a direction indicated by an arrow is the first direction, that is, the direction of the directional unweighted graph, and in fig. 5, candidate points in the to-be-selected area include candidate points that have not been dyed yet, candidate points that are dyed black, and candidate points that are dyed white.
Step 406: repeating the steps 402 to 405 until no point in the network map sends the message;
and determining the candidate points which are dyed into black in the network graph as addressing points, and determining the points which are dyed into white as the points for abandoning addressing.
It should be noted that, for each candidate point, the above steps 401 ' to 406 can be processed independently, so the flows from step 401 ' to step 406 can be processed in parallel for each candidate point, for example, the network map can be automatically divided into a plurality of sub-network maps through a MaxCompute map computing framework, the divided sub-network maps are sent to a plurality of servers, and the servers execute the above steps 401 ' to 406 synchronously.
In one or more embodiments of the present specification, performing the in-degree update according to the number of received messages may include: and subtracting the number of the received messages from the degree of the candidate points to obtain the updated degree of the candidate points.
Fig. 6 is a block diagram illustrating an addressing device according to an exemplary embodiment of the present disclosure, and as shown in fig. 6, the device 60 includes:
a first determining module 61, configured to determine a first set of reference points in the to-be-addressed area, where a distance between adjacent reference points in the first set is not greater than a first threshold;
a selecting module 62, configured to select, as candidate points, pairs of the reference points whose distances are not smaller than a second threshold value from the first set, where the second threshold value is larger than the first threshold value;
a building module 63, configured to build a network graph based on the multiple pairs of candidate points, where the network graph includes the candidate points and edges between the candidate points, the network graph is a directed graph, and a direction of each edge in the network graph is the first direction;
a second determining module 64, configured to divide the network map into n sub-network maps, and distribute the sub-network maps to n servers, where n is not less than 2, so that for each candidate point in the received sub-network map, the server sequentially excludes candidate points whose distances from candidate points adjacent to the candidate point in the first direction are not greater than the second threshold, and determines, as an addressing point, a candidate point whose distance from candidate points adjacent to the candidate point in the first direction is greater than the second threshold.
In one or more embodiments of the present disclosure, the first determining module may include: the first determining unit is used for determining first position information of each candidate point in the area to be addressed in the longitudinal direction at first division intervals of the area to be addressed in the longitudinal direction; a second determining unit, configured to determine, at a second division interval in the latitudinal direction of the area to be addressed, second position information in the latitudinal direction of each candidate point in the area to be addressed; a third determining unit, configured to obtain the first set according to the first location information and the second location information; the first division interval is Dx ═ (maxX-minX)/([ X/S ] +1), the second division interval is Dy ═ maxY-minY)/([ X/S ] +1), maxX is a maximum coordinate value in the to-be-addressed region in the longitudinal direction, minX is a minimum coordinate value in the longitudinal direction in the to-be-addressed region, X is a length value of a long side in the longitudinal direction of the to-be-addressed region, S is the first threshold, maxY is a maximum coordinate value in the to-be-addressed region in the latitudinal direction, and minY is a minimum coordinate value in the to-be-addressed region in the latitudinal direction.
In one or more embodiments of the present disclosure, the selecting module may include: the encoding unit is used for performing Geohash encoding on each reference point in the first set to obtain a plurality of Geohash blocks; a fourth determining unit, configured to determine a search range of each Geohash block; and the searching unit is used for searching the Geohash blocks of which the distances to the Geohash blocks are not less than the second threshold value from the longitude direction and the latitude direction of the Geohash blocks according to the searching range to obtain the multiple pairs of candidate points.
In one or more embodiments of the present specification, the fourth determining unit may be configured to: taking each Geohash block as a starting point, taking the Geohash blocks with the number of Cy towards the latitude direction and the Geohash blocks with the number of Cx towards the longitude direction as the search range of each Geohash block, wherein Cy ═ S/dy ] +1, Cx ═ S/dx ] +1, dy is the distance value between vertexes adjacent to the Geohash blocks in the latitude direction, and dx is the distance value with a small value in two distance values between two rows of vertexes adjacent to the Geohash blocks in the longitude direction.
In one or more embodiments of the present description, the second determining module may include: a first marking unit for performing step a, the step a comprising: enabling candidate points with the income degree of 0 in the network graph to be marked firstly; a sending unit, configured to perform step B, where step B includes: enabling the candidate point with the income degree of 0 in the network graph to send a message to the candidate point adjacent to the candidate point in the first direction; a second marking unit for performing step C, the step C comprising: performing second marking on the candidate points receiving the messages, updating the income degree according to the number of the received messages, and sending messages to candidate points adjacent to the candidate points in the first direction, wherein the income degree of the candidate points is 0 after the income degree is updated at this time; an update unit configured to perform step D, the step D including: for the candidate points which receive the messages, performing income updating according to the number of the received messages, and performing first marking on candidate points which have income of 0 and are not marked after the income updating; a fifth determining unit, configured to repeatedly perform the steps B to D until a candidate point for sending a message does not exist in the network map, and determine a point in the network map where the first marking is performed as an addressing point.
In one or more embodiments of the present disclosure, the addressing device may further include: a sending module, configured to enable each candidate point in the network map to send a message to a candidate point adjacent to the first direction of the candidate point; and a third determining module, configured to determine that the number of the messages received by each candidate point in the network graph is the incoming degree of the candidate point.
In one or more embodiments of the present disclosure, the addressing device may further include: the numbering module is used for numbering each candidate point in the network map according to the priority of the candidate point in the network map after the network map is constructed on the basis of the multiple pairs of candidate points, wherein the priority is positively correlated with the size of the number; and the fourth determining module is used for determining the direction in which the candidate point with the large number points to the adjacent candidate point with the small number as the first direction.
An embodiment of the present disclosure further provides an electronic device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, where the processor implements any one of the above address selection methods when executing the program.
Embodiments of the present disclosure also provide a non-transitory computer-readable storage medium storing computer instructions for causing the computer to perform any one of the above addressing methods.
The apparatus of the foregoing embodiment is used to implement the corresponding method in the foregoing embodiment, and has the beneficial effects of the corresponding method embodiment, which are not described herein again.
The foregoing description has been directed to specific embodiments of this disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
Those of ordinary skill in the art will understand that: the discussion of any embodiment above is meant to be exemplary only, and is not intended to intimate that the scope of the disclosure, including the claims, is limited to these examples; within the idea of the present disclosure, features in the above embodiments or in different embodiments may also be combined, steps may be implemented in any order, and there are many other variations of the different aspects of the present disclosure as described above, which are not provided in detail for the sake of brevity.
In addition, well known power/ground connections to Integrated Circuit (IC) chips and other components may or may not be shown in the provided figures for simplicity of illustration and discussion, and so as not to obscure the disclosure. Furthermore, devices may be shown in block diagram form in order to avoid obscuring the disclosure, and also in view of the fact that specifics with respect to implementation of such block diagram devices are highly dependent upon the platform within which the present disclosure is to be implemented (i.e., specifics should be well within purview of one skilled in the art). Where specific details (e.g., circuits) are set forth in order to describe example embodiments of the disclosure, it should be apparent to one skilled in the art that the disclosure can be practiced without, or with variation of, these specific details. Accordingly, the description is to be regarded as illustrative instead of restrictive.
While the present disclosure has been described in conjunction with specific embodiments thereof, many alternatives, modifications, and variations of these embodiments will be apparent to those of ordinary skill in the art in light of the foregoing description. For example, other memory architectures (e.g., dynamic ram (dram)) may use the discussed embodiments.
The embodiments of the present disclosure are intended to embrace all such alternatives, modifications and variances that fall within the broad scope of the appended claims. Therefore, any omissions, modifications, equivalents, improvements, and the like that may be made within the spirit and principles of the disclosure are intended to be included within the scope of the disclosure.
While certain embodiments of the present disclosure have been described above, other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.

Claims (15)

1. An addressing method, comprising:
determining a first set of reference points in an area to be addressed, wherein the distance between adjacent reference points in the first set is not greater than a first threshold value;
selecting a plurality of pairs of the reference points with the distances not smaller than a second threshold value from the first set as candidate points, wherein the second threshold value is larger than the first threshold value;
constructing a network graph based on the multiple pairs of candidate points, wherein the network graph comprises the candidate points and edges between the candidate points, the network graph is a directed graph, and the direction of each edge in the network graph is a first direction;
dividing the network map into n sub-network maps, distributing the n sub-network maps to n servers, so that for each candidate point in the received sub-network map, the servers sequentially exclude candidate points whose distance to the candidate point in the first direction is not less than the second threshold, and determine candidate points whose distance to the candidate point in the first direction is less than the second threshold as address selection points, where n is not less than 2.
2. The method of claim 1, wherein determining the first set of reference points within the area to be addressed comprises:
determining first position information of each candidate point in the area to be addressed in the longitude direction at first segmentation intervals of the area to be addressed in the longitude direction;
determining second position information of each candidate point in the area to be addressed in the latitude direction at a second division interval of the area to be addressed in the latitude direction;
obtaining the first set according to the first position information and the second position information;
the first division interval is Dx ═ (maxX-minX)/([ X/S ] +1), the second division interval is Dy ═ maxY-minY)/([ X/S ] +1), maxX is a maximum coordinate value in the to-be-addressed region in the longitudinal direction, minX is a minimum coordinate value in the longitudinal direction in the to-be-addressed region, X is a length value of a long side in the longitudinal direction of the to-be-addressed region, S is the first threshold, maxY is a maximum coordinate value in the to-be-addressed region in the latitudinal direction, and minY is a minimum coordinate value in the to-be-addressed region in the latitudinal direction.
3. The method of claim 2, wherein selecting pairs of candidate points from the first set having a distance not less than a second threshold comprises:
performing Geohash coding on each reference point in the first set to obtain a plurality of Geohash blocks;
determining the search range of each Geohash block;
and for each Geohash block, searching the Geohash blocks of which the distances between the Geohash blocks and the Geohash blocks are not less than the second threshold value in the longitude direction and the latitude direction of the Geohash block according to the search range to obtain the multiple pairs of candidate points.
4. The method of claim 3, wherein determining the lookup range for each Geohash block comprises:
taking each Geohash block as a starting point, taking the Geohash blocks with the number of Cy towards the latitude direction and the Geohash blocks with the number of Cx towards the longitude direction as the search range of each Geohash block, wherein Cy ═ S/dy ] +1, Cx ═ S/dx ] +1, dy is the distance value between two vertexes of the Geohash blocks adjacent to each other in the latitude direction, and dx is the distance value with a small value in two distance values between two pairs of vertexes of the Geohash blocks adjacent to each other in the longitude direction.
5. The method of claim 1, wherein the server excludes, for each candidate point in the received subnetwork graph, candidate points whose distance from the candidate point in the neighboring candidate points in the first direction is not less than the second threshold, and determines, as the addressing point, a candidate point whose distance from the candidate point in the neighboring candidate points in the first direction is less than the second threshold, the method includes:
step A: enabling candidate points with the income degree of 0 in the network graph to be marked firstly;
and B: enabling the candidate point with the income degree of 0 in the network graph to send a message to the candidate point adjacent to the candidate point in the first direction;
and C: performing second marking on the candidate points receiving the messages, updating the degree of income according to the number of the received messages, and sending messages to the candidate points adjacent to the candidate points in the first direction, wherein the candidate points with the degree of income after the degree of income is updated this time are 0;
step D: for the candidate points which receive the messages, updating the degree of income according to the number of the received messages, and performing first marking on candidate points which are not marked and have the degree of income of 0 after the degree of income is updated at this time;
and repeating the steps B to D until no candidate point for sending the message exists in the network map, and determining the point of the network map subjected to the first marking as the addressing point.
6. The method of claim 5, wherein the method further comprises:
enabling each candidate point in the network graph to send messages to the candidate points adjacent to the first direction of the candidate point;
and determining the number of the messages received by each candidate point in the network graph as the in-degree of the candidate point.
7. The method of any of claims 1 to 6, wherein the method further comprises:
after a network graph is constructed on the basis of the multiple pairs of candidate points, numbering each candidate point in the network graph according to the priority of the candidate point in the network graph, wherein the priority is in positive correlation with the size of the number;
determining a direction in which the candidate point with the larger number points to the candidate point with the smaller number adjacent thereto as the first direction.
8. An addressing device comprising:
the device comprises a first determining module, a second determining module and a judging module, wherein the first determining module is used for determining a first set of reference points in a to-be-addressed area, and the distance between adjacent reference points in the first set is not greater than a first threshold;
a selection module, configured to select, as candidate points, pairs of the reference points whose distances are not smaller than a second threshold from the first set, where the second threshold is larger than the first threshold;
a building module, configured to build a network graph based on the multiple pairs of candidate points, where the network graph includes the candidate points and edges between the candidate points, the network graph is a directed graph, and a direction of each edge in the network graph is the first direction;
a second determining module, configured to divide the network map into n sub-network maps, distribute the n sub-network maps to n servers, so that, for each candidate point in the received sub-network map, the servers sequentially exclude candidate points whose distances from candidate points adjacent to the candidate point in the first direction are not greater than the second threshold, and determine, as address points, candidate points whose distances from candidate points adjacent to the candidate point in the first direction are greater than the second threshold, where n is not less than 2.
9. The apparatus of claim 8, wherein the first determining means comprises:
the first determining unit is used for determining first position information of each candidate point in the area to be addressed in the longitudinal direction at first division intervals of the area to be addressed in the longitudinal direction;
a second determining unit, configured to determine, at a second division interval in the latitudinal direction of the area to be addressed, second position information in the latitudinal direction of each candidate point in the area to be addressed;
a third determining unit, configured to obtain the first set according to the first location information and the second location information;
the first division interval is Dx ═ (maxX-minX)/([ X/S ] +1), the second division interval is Dy ═ maxY-minY)/([ X/S ] +1), maxX is a maximum coordinate value in the to-be-addressed region in the longitudinal direction, minX is a minimum coordinate value in the longitudinal direction in the to-be-addressed region, X is a length value of a long side in the longitudinal direction of the to-be-addressed region, S is the first threshold, maxY is a maximum coordinate value in the to-be-addressed region in the latitudinal direction, and minY is a minimum coordinate value in the to-be-addressed region in the latitudinal direction.
10. The apparatus of claim 9, wherein the selection module comprises:
the encoding unit is used for performing Geohash encoding on each reference point in the first set to obtain a plurality of Geohash blocks;
a fourth determining unit, configured to determine a search range of each Geohash block;
and the searching unit is used for searching the Geohash blocks of which the distances to the Geohash blocks are not less than the second threshold value from the longitude direction and the latitude direction of the Geohash blocks according to the searching range to obtain the multiple pairs of candidate points.
11. The apparatus of claim 10, wherein the fourth determining unit is to:
taking each Geohash block as a starting point, taking the Geohash blocks with the number of Cy towards the latitude direction and the Geohash blocks with the number of Cx towards the longitude direction as the search range of each Geohash block, wherein Cy ═ S/dy ] +1, Cx ═ S/dx ] +1, dy is the distance value between two vertexes of the Geohash blocks adjacent to each other in the latitude direction, and dx is the distance value with a small value in two distance values between two pairs of vertexes of the Geohash blocks adjacent to each other in the longitude direction.
12. The apparatus of claim 8, wherein the second determining means comprises:
a first marking unit for performing step a, the step a comprising: enabling candidate points with the income degree of 0 in the network graph to be marked firstly;
a sending unit, configured to perform step B, where step B includes: enabling the candidate point with the income degree of 0 in the network graph to send a message to the candidate point adjacent to the candidate point in the first direction;
a second marking unit for performing step C, the step C comprising: performing second marking on the candidate points receiving the messages, updating the degree of income according to the number of the received messages, and sending messages to the candidate points adjacent to the candidate points in the first direction, wherein the candidate points with the degree of income after the degree of income is updated this time are 0;
an update unit configured to perform step D, the step D including: for the candidate points which receive the messages, updating the degree of income according to the number of the received messages, and performing first marking on candidate points which are not marked and have the degree of income of 0 after the degree of income is updated at this time;
a fifth determining unit, configured to repeatedly perform the steps B to D until there is no candidate point for sending a message in the network map, and determine a point in the map where the first marking is performed as the addressing point.
13. The apparatus of claim 12, wherein the apparatus further comprises:
a sending module, configured to enable each candidate point in the network map to send a message to a candidate point adjacent to the first direction of the candidate point;
and a third determining module, configured to determine that the number of the messages received by each candidate point in the network graph is the incoming degree of the candidate point.
14. The apparatus of any of claims 8 to 13, wherein the apparatus further comprises:
the numbering module is used for numbering each candidate point in the network map according to the priority of the candidate point in the network map after the network map is constructed on the basis of the multiple pairs of candidate points, wherein the priority is positively correlated with the size of the number;
and the fourth determining module is used for determining the direction in which the candidate point with the large number points to the adjacent candidate point with the small number as the first direction.
15. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the addressing method of any of claims 1-7 when executing the program.
CN202010027902.XA 2020-01-10 2020-01-10 Site selection method, device and equipment Active CN111241226B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010027902.XA CN111241226B (en) 2020-01-10 2020-01-10 Site selection method, device and equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010027902.XA CN111241226B (en) 2020-01-10 2020-01-10 Site selection method, device and equipment

Publications (2)

Publication Number Publication Date
CN111241226A true CN111241226A (en) 2020-06-05
CN111241226B CN111241226B (en) 2023-05-05

Family

ID=70864031

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010027902.XA Active CN111241226B (en) 2020-01-10 2020-01-10 Site selection method, device and equipment

Country Status (1)

Country Link
CN (1) CN111241226B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112651775A (en) * 2020-12-22 2021-04-13 北京彩智科技有限公司 Method and device for determining geographical radiation range and electronic equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106604291A (en) * 2016-12-23 2017-04-26 广州极飞科技有限公司 RTK mobile reference station site selection method and device
US10231085B1 (en) * 2017-09-30 2019-03-12 Oracle International Corporation Scaling out moving objects for geo-fence proximity determination
CN110413722A (en) * 2019-08-06 2019-11-05 京东城市(北京)数字科技有限公司 Address choice method, apparatus and non-transient storage medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106604291A (en) * 2016-12-23 2017-04-26 广州极飞科技有限公司 RTK mobile reference station site selection method and device
US10231085B1 (en) * 2017-09-30 2019-03-12 Oracle International Corporation Scaling out moving objects for geo-fence proximity determination
CN110413722A (en) * 2019-08-06 2019-11-05 京东城市(北京)数字科技有限公司 Address choice method, apparatus and non-transient storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
冉连月等: "武汉市轨道交通线网应急救援站选址研究" *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112651775A (en) * 2020-12-22 2021-04-13 北京彩智科技有限公司 Method and device for determining geographical radiation range and electronic equipment
CN112651775B (en) * 2020-12-22 2024-02-27 北京彩智科技有限公司 Method and device for determining geographic radiation range and electronic equipment

Also Published As

Publication number Publication date
CN111241226B (en) 2023-05-05

Similar Documents

Publication Publication Date Title
US10650236B2 (en) Road detecting method and apparatus
CN103383682B (en) A kind of Geocoding, position enquiring system and method
CN109121070A (en) A kind of underground parking bluetooth layout and localization method
CN104867402A (en) Offline reverse geocoding method, device thereof and terminal equipment
CN107391516B (en) Bus stop aggregation method and device
CN110909260A (en) Vehicle display method, device, computer readable storage medium and computer equipment
CN111121794B (en) Map rendering method and device, terminal equipment and storage medium
CN111241226B (en) Site selection method, device and equipment
CN107274705A (en) The determination methods, devices and systems of position of bus
CN112525208B (en) Method, device and equipment for quickly constructing urban road map
JP2009015739A (en) Traffic information distribution server, traffic information distribution system, and traffic information distribution method
CN112541624B (en) Site selection method, device, medium and electronic equipment for collecting throwing net points
CN115525642A (en) Reverse geocoding method and device and electronic equipment
CN110852389B (en) Method and device for determining geographic features in map
CN114237265B (en) Optimal routine inspection route planning method, system, computer and storage medium
CN114838729A (en) Path planning method, device and equipment
KR20130082672A (en) Traffic information searching method of mobile communication device
KR101005306B1 (en) Method and apparatus for providing map information
CN108241903B (en) Riding line generation method and device
JP2015212964A (en) Information processing device, method and computer program
CN111061824A (en) Range judgment method, device and equipment based on improved quadtree
EP3926303A1 (en) Method and system for snapping an object s position to a road network
CN109307512A (en) A kind of vehicle positioning method, device and equipment
CN111182553B (en) Method and system for determining service range of reference station and positioning terminal
CN115103444B (en) User terminal positioning method, device and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant