Map search result rearrangement method and apparatus, electronic device, and storage medium

CN122903708APending Publication Date: 2026-10-13BEIJING BAIDU NETCOM SCI & TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611165241.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-07-31
Publication Date
2026-10-13

AI Technical Summary

Technical Problem

固定位置插入方式在优先店铺满足距离门限时将其插入指定位置,但该门限与当前搜索结果页的实际距离分布缺乏耦合,在密集商圈或稀疏区域均难以合理适配

Benefits of technology

[0009]根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序在被处理器执行时实现根据本公开实施例中任一的方法。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122903708A_ABST
    Figure CN122903708A_ABST
Patent Text Reader

Abstract

The present disclosure provides a map search result rearrangement method and device, electronic equipment and storage medium, relates to the technical field of data processing, in particular to the rearrangement technology of map search result, and can be used in application scenarios such as map search, location service, shop search and the like. The scheme comprises the following steps: determining a scene scale reference value according to the geographical position distance value of a target number of shops in the front part of a shop sequence to be sorted, and calculating a converted distance value of each shop based on the grade attribute of each shop and the scene scale reference value; traversing the shop sequence to be sorted, identifying the shops to be extracted based on the converted distance value of each shop and the dynamic reference value maintained in the traversal process; generating a shop list to be inserted, and removing the shops to be extracted from the shop sequence to be sorted to obtain an anchor point sequence; and inserting the shops to be inserted in the shop list to be inserted that meet the preset insertion condition to the corresponding anchor point position based on the anchor point distance of each anchor point shop in the anchor point sequence to obtain a target shop sequence.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of data processing technology, and in particular to map search result reordering technology, which can be used in application scenarios such as map search, location services, and store search. Specifically, it relates to map search result reordering methods, devices, electronic devices, and storage media. Background Technology

[0002] With the widespread use of map applications, searching for nearby shops by entering query terms in map clients has become a frequent usage scenario. Map search results typically need to balance users' needs for distance and relevance with the platform's need to prioritize the display of specific shops.

[0003] Existing methods for prioritizing stores mainly include fixed-position insertion and weighted sorting. Fixed-position insertion inserts a priority store into a designated position when it meets a distance threshold. However, this threshold lacks coupling with the actual distance distribution on the current search results page, making it difficult to adapt reasonably in densely populated business districts or sparsely populated areas. Weighted sorting weights factors such as ranking, distance, and relevance into a comprehensive ranking score for reordering. However, the different feature dimensions vary significantly, the weights have weak interpretability, and it's impossible to clearly control the extent to which priority stores rank relative to ordinary stores. This can easily lead to situations where distant priority stores outperform nearby, highly relevant ordinary stores. Summary of the Invention

[0004] This disclosure provides a method, apparatus, electronic device, and storage medium for reordering map search results.

[0005] According to a first aspect of this disclosure, a method for reordering map search results is provided, comprising: obtaining a sequence of stores to be sorted and a set of candidate stores, wherein each store in the sequence of stores to be sorted has a store identifier, a geographic distance value, a grade attribute, and a relevance score; determining a scene scale benchmark value based on the geographic distance values ​​of the first target number of stores in the sequence of stores to be sorted, and calculating the converted distance value of each store based on the grade attribute and the scene scale benchmark value; traversing the sequence of stores to be sorted, and identifying stores that meet preset extraction conditions as stores to be extracted based on the converted distance value of each store and the dynamic reference value maintained during the traversal; generating a list of stores to be inserted based on the stores in the candidate store set that do not appear in the sequence of stores to be sorted and the stores to be extracted, and removing the stores to be extracted from the sequence of stores to be sorted to obtain an anchor point sequence; and inserting the stores to be inserted that meet the preset insertion conditions in the list of stores to be inserted to the corresponding anchor point positions based on the anchor point distance of each anchor point store in the anchor point sequence to obtain a target store sequence.

[0006] According to a second aspect of this disclosure, a map search result reordering apparatus is provided, comprising: a feature acquisition module for acquiring a sequence of stores to be sorted and a set of candidate stores, wherein each store in the sequence of stores to be sorted has a store identifier, a geographic distance value, a grade attribute, and a relevance score; a distance calculation module for determining a scene scale reference value based on the geographic distance values ​​of the first target number of stores in the sequence of stores to be sorted, and calculating the distance value of each store based on the grade attribute and the scene scale reference value; a store traversal extraction module for traversing the sequence of stores to be sorted, and identifying stores that meet preset extraction conditions as stores to be extracted based on the distance value of each store and the dynamic reference value maintained during the traversal process; a candidate list management module for generating a list of stores to be inserted based on the stores in the candidate store set that do not appear in the sequence of stores to be sorted and the stores to be extracted, and removing the stores to be extracted from the sequence of stores to be sorted to obtain an anchor point sequence; and an anchor point insertion module for inserting stores that meet preset insertion conditions in the list of stores to be inserted into the corresponding anchor point positions based on the anchor point distance of each anchor point store in the anchor point sequence to obtain a target store sequence.

[0007] According to a third aspect of this disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform any of the methods described in the embodiments of this disclosure.

[0008] According to a fourth aspect of this disclosure, a non-transitory computer-readable storage medium is provided storing computer instructions, wherein the computer instructions are used to cause the computer to perform any of the methods according to embodiments of this disclosure.

[0009] According to a fifth aspect of this disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements any of the methods according to embodiments of this disclosure.

[0010] The scheme disclosed herein can convert the store's level attribute into a distance metric comparable to geographical location, thereby mitigating the opacity problem caused by the simple weighting of factors such as level and distance due to differences in dimensionality. This allows stores of different levels to participate in ranking comparisons under the same distance semantics. Furthermore, by identifying stores to be extracted through dynamic reference values ​​maintained during the traversal process and inserting them based on anchor point distance conditions, the advancement of priority stores adapts to the distance distribution of the current search scenario. Thus, while ensuring reasonable exposure for priority stores, it avoids priority stores at a greater distance from unconditionally crowding out ordinary stores at a closer distance, improving the rationality, scenario adaptability, and online processing efficiency of search result re-ranking in the distance dimension.

[0011] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0012] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein: Figure 1 This is a flowchart illustrating a map search result reordering method according to an embodiment of the present disclosure; Figure 2 This is a schematic diagram of the structure of a map search result reordering device according to an embodiment of the present disclosure; Figure 3 This is a schematic diagram of a map search result reordering method according to an embodiment of the present disclosure; Figure 4 This is a structural diagram of an electronic device used to implement the map search result reordering method of the embodiments of this disclosure. Detailed Implementation

[0013] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following description.

[0014] Furthermore, to better illustrate this disclosure, numerous specific details are set forth in the following detailed description. Those skilled in the art will understand that this disclosure can be practiced without certain specific details. In some instances, methods, means, components, and circuits well known to those skilled in the art have not been described in detail in order to highlight the main points of this disclosure.

[0015] Before introducing the technical solutions of the embodiments of this disclosure, the technical terms that may be used in this disclosure will be further explained: The pending store sequence refers to the list of stores arranged in order from the initial ranking results output by the map server after a user initiates a map search request, based on the user's current location, search keywords, and other conditions. Stores in this sequence must at least have a store identifier, geographic distance value, rating attribute, and relevance score. For example, the pending store sequence could be the initial store ranking results output by the map server after a user searches for "hot pot" on the map client, arranged from closest to furthest.

[0016] The candidate store set refers to the set of stores predetermined by the system that have priority in display during this re-ranking. These stores may or may not appear in the initial ranking results. Their corresponding store identifiers are constructed as an index set before the traversal begins for quick lookup. For example, the candidate store set could be a list of identifiers for stores that have purchased certain services.

[0017] A store identifier is a unique code or string that identifies a store, such as a digital identifier (ID) assigned when registering in a map system, or a store number managed internally by the system.

[0018] Geographic distance value refers to the spatial distance between the store's geographical location on the map and the user's current location. It is usually expressed in meters or kilometers and can be calculated using latitude and longitude coordinates.

[0019] The grade attribute refers to the priority level of a store in the system, which represents the relative advantage that the store can obtain during the sorting process. Different grades correspond to different preset parameters. For example, the grade attribute can be represented in the form of a numerical grade or a category label. This grade attribute can be pre-stored as a structured field in the store information database and read by the system from the store information database during sorting.

[0020] The relevance score is a rating of the degree of matching between a store and a user's search keywords, used to measure how well the store meets the user's search intent.

[0021] In existing reordering processes, stores with ranking attributes that already appear in the initial ranking are typically ranked directly based on their relevance score or overall rating. Those not present in the initial ranking are added to the ranking sequence through additional recall or fixed-position insertion. The lack of a unified comparison benchmark between these two types of stores makes it difficult to reorder prioritized stores (those already selected and those not selected) under the same distance metric. Furthermore, existing technologies lack an online reordering mechanism that can identify stores that should be prioritized in a single forward traversal and insert them after deletion, using the remaining stores as a reference.

[0022] Therefore, the existing re-ranking mechanism has at least the following technical defects: the insertion threshold for priority stores lacks correlation with the distance distribution characteristics of the current search results page, making it impossible to adjust adaptively; the direct combination of feature parameters with different dimensions, such as grade attributes, geographical distance, and relevance scores, makes it difficult to precisely control the ranking position; candidate stores that did not appear in the initial ranking results are processed differently from stores that have already appeared in the ranking results, resulting in inconsistent re-ranking criteria; fixed-position insertion or global re-ranking methods can easily lead to priority stores with greater geographical distance replacing ordinary stores with greater geographical distance, affecting the distance rationality and relevance of search results.

[0023] To at least partially address one or more of the aforementioned problems and other potential issues, this disclosure proposes a map search result reordering method. This method converts the store's level attribute into a distance metric comparable to geographical location, allowing stores of different levels to participate in ranking comparisons under the same distance semantics. Furthermore, it adaptively adjusts the priority of stores based on the distance distribution of the current search scenario, ensuring reasonable exposure for priority stores while preventing distant priority stores from crowding out nearby ordinary stores. This improves the rationality of search results in the distance dimension and ensures the scenario adaptability of the reordering process and the interpretability of the ranking results.

[0024] This disclosure provides a method for reordering map search results. Figure 1 This is a flowchart illustrating a map search result reordering method according to an embodiment of the present disclosure. This method can be applied to a map search result reordering device, which is located in an electronic device. The electronic device includes, but is not limited to, fixed devices and / or mobile devices. For example, fixed devices include, but are not limited to, servers, which can be cloud servers or ordinary servers. Mobile devices can be mobile phones, tablets, vehicle terminals, etc. In some possible implementations, the map search result reordering method can also be implemented by a processor calling computer-readable instructions stored in memory. Figure 1 As shown, the map search result reordering method includes: S101. Obtain the unsorted store sequence and the candidate store set. Each store in the unsorted store sequence has a store identifier, geographical distance value, level attribute and relevance score. S102. Determine the scene scale benchmark value based on the geographical distance values ​​of the first number of stores in the unsorted store sequence, and calculate the converted distance value of each store based on the level attribute of each store and the scene scale benchmark value. S103. Traverse the unsorted store sequence, and based on the converted distance value of each store and the dynamic reference value maintained during the traversal, identify stores that meet the preset extraction conditions as stores to be extracted. S104. Based on the stores in the candidate store set that do not appear in the unsorted store sequence and the stores to be extracted, generate a list of stores to be inserted, and remove the stores to be extracted from the unsorted store sequence to obtain the anchor sequence. S105. Based on the anchor point distance of each anchor point store in the anchor point sequence, insert the stores in the store list that meet the preset insertion conditions into the corresponding anchor point positions to obtain the target store sequence.

[0025] In this embodiment of the disclosure, the scene scale benchmark value refers to a statistical quantity calculated from the geographical distance values ​​of the first target number of stores in the store sequence to be sorted. It is used to reflect the overall distance distribution between stores and users in the current search results page and to provide a scene-adaptive reference scale for subsequent distance calculation.

[0026] In this embodiment of the disclosure, the converted distance value refers to the value after converting the store's level attribute into a distance dimension through preset parameters, which is used to compare stores with different level attributes under a unified distance measurement standard.

[0027] In this embodiment of the disclosure, the dynamic reference value refers to the maximum comparison distance value that is continuously maintained and updated by the register during the traversal of the store sequence to be sorted, and is used to determine whether the current store should be identified as a store to be extracted.

[0028] In this embodiment of the disclosure, the anchor sequence refers to the sequence formed by removing the stores to be extracted from the unsorted store sequence and then using the remaining stores in their original order. The stores in this sequence serve as reference anchors for subsequent insertion operations.

[0029] In this embodiment of the disclosure, the anchor point distance refers to the reference distance value used by each anchor point store in the anchor point sequence to compare with the converted distance value of the store to be inserted.

[0030] In some implementations, the map server receives a search request initiated by a user through a client. The search request includes at least the user's current geographic location information and the search keywords entered by the user. Based on the user's geographic location and search keywords, the server performs recall and coarse ranking in the store information database to obtain an initially ranked list of stores as a sequence of stores to be ranked. At the same time, the server obtains a set of candidate stores corresponding to this re-ranking, where each store in the candidate store set contains at least a store identifier.

[0031] For example, the sequence of stores to be sorted can be the first few stores recalled by the map server according to a "distance-first" strategy. A sequence of stores, with each store's geographical distance value. The straight-line distance or navigation distance between the store location and the user's current location; a ranking attribute. The relevance score is the level that a store is pre-assigned in the system. This is a score calculated based on a text matching model to determine the relevance between store names / tags and search keywords. Candidate store set. It contains the identification information of stores that need to be prioritized for display. This set can be pre-stored in the server-side cache or read from the database in real time.

[0032] The above implementation provides a complete input data foundation for subsequent distance calculation, store extraction, and anchor point insertion, enabling the rearrangement process to be performed within a well-defined data domain. (Candidate store set) The introduction of this feature enables the system to distinguish between stores that need to be prioritized for display and ordinary stores, providing a prerequisite for subsequent unified processing and avoiding inconsistencies in processing due to the separation of the two types of stores during the input stage.

[0033] In this embodiment of the disclosure, the sequence of stores to be sorted The sequence of natural results formed after basic recall and basic ranking in map search is denoted as: ;in, This is the sequence of stores to be sorted. for The Middle One shop, for Total number of stores in China For the store in the unsorted store sequence The position number in the middle, and .

[0034] In this embodiment of the disclosure, the candidate store set Recorded as: ;in, For the collection of candidate stores, for The Middle One candidate store. for Total number of candidate stores For candidate stores in the candidate store set The serial number in, and Candidate store collection The stores in the list can already be in the store sequence to be sorted. It may also not appear in the list of stores to be sorted. middle.

[0035] In this embodiment of the disclosure, the correlation score The output can be derived from a relevance model. The training samples for the relevance model are constructed from historical map search logs. Sample features include query terms, user location, store name, store category, vertical category, historical click behavior, in-store navigation behavior, phone call behavior, and conversion behavior. Positive samples are stores that were clicked, navigated, called, or generated effective conversions under the corresponding query; negative samples are stores that received the same exposure but did not generate effective interactions or were manually labeled as irrelevant. The training objective is to predict the relevance between stores and query requests. Cross-entropy loss can be used to train gradient boosting tree models, logistic regression models, or deep neural network models. After training, a calibration method is used to map the output to the 0-1 range to obtain the relevance score. When used online, this model only performs feature reading and forward computation, and is not trained backward in this reordering process. Therefore, it will not change the data processing structure of subsequent single scans. The relevance score can also be flexibly configured according to the search scenario or user needs. For example, a higher threshold can be set for scenarios with high relevance requirements, and a lower threshold can be set for scenarios with low relevance requirements.

[0036] In some implementations, the sequence of stores to be sorted is read before the current reordering begins. The former One store ( This can be understood as a preset target number or the number of stores participating in the average calculation. (where the integer is greater than 0) calculate this The arithmetic mean of the geographical distances of each store is used as the baseline value for the scene scale. Then the sequence of stores to be sorted The level attributes of each store in the game The corresponding preset parameters and the scene scale reference value The calculated distance value for the store is obtained. .

[0037] The formula for calculating the equivalent distance is as follows: in, For the first The calculated distance value for each store. For the first The geographical distance value of each store. For the first The level attributes of each store. For level attributes The corresponding fixed distance threshold, For level attributes The corresponding distance magnification factor, For the front The average geographical distance of each store. The number of stores participating in the calculation of the average. For store serial number, This is for calculating the larger value.

[0038] For example, suppose the sequence of stores to be sorted is... Total One shop, front The geographical distance values ​​of each store are as follows: , ,…, Then the scene scale reference value . The value can be flexibly configured according to the actual application scenario, for example , wait; and The specific values ​​can also be configured according to the different values ​​of the level attribute.

[0039] Through the above implementation methods, the scene-scale benchmark value enables the calculation of the converted distance value to adapt to the actual distance distribution of the current search results page. In dense business districts (where shops are generally close together), the converted distance value is generally smaller, and the advance advantage obtained by priority shops is correspondingly reduced, avoiding excessive crowding out of nearby ordinary shops. In sparse areas (where shops are generally far apart), the converted distance value is generally larger, and priority shops can still obtain a reasonable advance advantage, solving the technical problem that a fixed distance threshold is difficult to adapt to different scenarios. At the same time, by converting the level attribute to the distance dimension, the level and distance are comparable under the same distance semantics, avoiding the need to design weights due to different units of measurement.

[0040] In some implementations, the sequence of stores to be sorted Perform a single forward traversal from front to back, using registers to record the maximum comparison distance value among the traversed shops as a dynamic reference value during the traversal; when traversing to the [number]th [shop]... When considering a single store, determine whether the store belongs to the candidate store set based on its store identifier and level attributes. Or it may have a valid rating attribute; if the store belongs to the candidate store set. Alternatively, it may possess a valid rating attribute, and the store's calculated distance value. The value is less than the current value of the register, and the relevance score of the store is... Greater than the preset correlation threshold If so, the store is identified as a store to be extracted and added to the extraction set. And do not update the register; otherwise, use the comparison distance value of that store. Update the register, where the distance values ​​are compared. This store belongs to the candidate store set. Or, if the attribute has a valid level, take the converted distance value. Otherwise, take the geographical location distance value. .

[0041] For example, before the traversal begins, the register is initialized to 0 (or a preset minimum value); during the traversal, assume that the maximum comparison distance of the traversed stores is 10, the current store's calculated distance is 7, the relevance score is 0.85 (higher than the threshold of 0.8), and the store belongs to the candidate store set. If the current store meets the extraction criteria, it is identified as a store to be extracted, and the register remains at 10. If the current store does not belong to the candidate store set... If it does not have a valid level attribute, then the geographic distance value will be used. renew If the current store belongs to the candidate store set Or it has a valid level attribute but does not meet the requirements. (For example Then, it is also necessary to compare distance values ​​(at this time, take...). )renew ,make The number becomes 12. Through this method, stores identified as pending extraction will not interfere with the judgment criteria for subsequent stores, ensuring that the extraction decision is only constrained by stores that were not extracted previously.

[0042] Using the single forward traversal method described above, all stores to be extracted can be identified in just one traversal, with a time complexity of O(n). This is suitable for deployment in online reordering chains for map search, avoiding the risk of infinite loops or empty loops caused by multiple rounds of reordering. Furthermore, the stores to be extracted are only stored in a temporary extraction set. Instead of physically deleting items during the traversal, this approach ensures that register updates are based entirely on the original sequence's order, guaranteeing consistency in the judgment criteria. Compared to the fixed threshold filtering method in traditional schemes, this implementation uses a dynamic reference value that gradually increases as the traversal progresses. This makes it easier to extract priority stores that are geographically closer, and more difficult to extract priority stores that are geographically farther away. This ensures that the extraction operation does not cause distant priority stores to excessively encroach on the positions of nearby ordinary stores.

[0043] In some implementations, a candidate store set is obtained. Remove all store identifiers from the unsorted store sequence. The remaining shops are merged with the shops to be extracted identified in S103, and after deduplication by shop identifier, they are used as the list of shops to be inserted; at the same time, the shops to be sorted are... Remove all stores identified as stores to be extracted, and arrange the remaining stores in their original order as the anchor sequence. .

[0044] In some implementations, after generating the insertion candidate list, the order is determined from the sequence of stores to be sorted. Central Plains Deletion of Set to be Extracted The shops in the middle, obtain the anchor sequence .

[0045] Anchor sequence Recorded as: ,in, For anchor point sequence, For anchor sequence The Middle Anchor point store, For anchor sequence The total number of stores in the country For anchor stores in the anchor sequence The position number in the middle, and When deleting a store to be extracted, the store identifier is simultaneously updated to the index of the current position, so that subsequent insertion operations can be based on the anchor sequence. Execute at the current position.

[0046] For example, suppose there is a set of candidate stores. The stores in the sequence are identified as {A, B, C}, where stores A and B have already appeared in the unsorted store sequence. Shop C did not appear in the list of shops to be sorted. In S103, the stores to be extracted are {A, D}. Therefore, during the merging process, store C (from...) Shops not appearing in the unsorted shop sequence P and shops A and D (from the shops to be extracted) are added to the shop list to be inserted. After deduplication by shop identifier, the list contains {C, A, D}; the unsorted shop sequence P... After removing stores A and D, the remaining stores form the anchor sequence in their original order. .

[0047] Through the above implementation method, stores in the candidate store set that do not appear in the unsorted store sequence are merged with the stores to be extracted identified from the unsorted store sequence into a unified list of stores to be inserted. This allows two types of priority stores from different sources to be processed uniformly in the same process, solving the technical problem of inconsistent handling of naturally hit stores and non-naturally recalled stores in traditional solutions. At the same time, by deleting the stores to be extracted in place to obtain the anchor sequence, a clear anchor reference is provided for subsequent conditional insertion.

[0048] In some implementations, each anchor store is visited sequentially from front to back along the anchor store sequence. For the currently visited anchor store, if the anchor store belongs to the candidate store set or has a valid level attribute, the anchor distance is taken as the converted distance value of the store; otherwise, the geographical distance value of the store is taken. Then, the store to be inserted with the smallest converted distance value is taken from the list of stores to be inserted. If the converted distance value of the store to be inserted is less than the anchor distance of the current anchor store, the store to be inserted is inserted before the current anchor store. This process is repeated until all stores to be inserted have been processed or the insertion condition is no longer met, resulting in the final rearranged sorted sequence (i.e., the target store sequence).

[0049] Here, having a valid grade attribute means that the grade attribute field stored in the system is considered "valid," meaning the store enjoys priority display status due to its grade attribute. Specifically, this includes two meanings: The grade attribute exists and is not empty—the store's grade attribute field has a value, not an empty or unassigned value, allowing the system to recognize that the store has been assigned a specific grade; the grade attribute value is a valid grade—this grade value belongs to the system's preset set of "valid grades," and is not a "non-valid grade," "no grade," or "normal grade," which are not considered to have priority display status. Having a valid grade attribute is essentially a store classification label—the system pre-assigns specific grade values ​​to some stores, and these grade values ​​are configured as "valid" in the system. When a store carries this label, it means that the store enjoys priority display status in this re-ranking, regardless of whether it is included in the candidate store set.

[0050] For example, assuming the anchor point sequence is [Shop 1, Shop 2, Shop 3, Shop 4], and the currently visited Shop 2 has a geographical distance of 1000 meters, we take the anchor point distance as 1000 meters. The shop X to be inserted in the list of shops with the smallest converted distance value has a converted distance value of 800 meters. Since 800 < 1000, we insert shop X before Shop 2, and the sequence becomes [Shop 1, Shop X, Shop 2, Shop 3, Shop 4]. If the converted distance value of shop Y to be inserted is 1200 meters, which does not meet the condition of being less than the anchor point distance, then it is not inserted, and we continue to process the next anchor point. A shop to be inserted can be inserted at most once. Shops to be inserted that have not been inserted can be appended to the end of the anchor point sequence to ensure that all shops to be inserted are reflected in the rearranged target shop sequence.

[0051] Using the anchor point sequence-based insertion method described above, each store to be inserted is subject to the constraint that "the converted distance value of the store to be inserted is less than the anchor point distance of the anchor store." This ensures that only stores with sufficiently small converted distance values ​​(i.e., a small "effective distance" from the user after level conversion) can be inserted before nearby ordinary stores. Stores with larger converted distance values ​​that are far away cannot meet the condition and must be appended to the end, thus preventing nearby ordinary stores from being squeezed out when inserted before far-away stores. Simultaneously, the anchor point distance uses both converted distance and geographic distance values ​​for stores with double hits and ordinary stores respectively, ensuring that all stores are inserted under the same distance semantics.

[0052] In a further embodiment, to avoid unsorted store sequences When the geographical distance values ​​of the front stores are too scattered, only the mean is used. The distance distribution characteristics of the current scene are not sufficiently represented. After calculating the converted distance values, the distance dispersion protection zone is further calculated. First, the distance dispersion of the front shops is calculated using the following formula. : in, For the front The dispersion of the geographical distance values ​​of each store. The number of stores participating in the calculation. To find the summation index, For the front The first of the stores The geographical distance value of each store. This serves as the baseline value for the scene scale.

[0053] Then, the calculated distance value after protection is obtained according to the following formula. : in, For the first The calculated distance value after store protection For the first The calculated distance value for each store using the basic method. The distance discrete protection coefficient, For the front The dispersion of the geographical distance values ​​of each store. As the baseline value for scene scale, To prevent the distance lower limit constant from having a denominator of zero, For level The corresponding fixed distance threshold, For level attributes The corresponding distance magnification factor, For the first The level attributes of each store. For store serial number, This is for calculating the larger value.

[0054] When the distance discrete protection band is enabled, the converted distance values ​​in subsequent traversal extraction and anchor point insertion are uniformly adopted. When not enabled, the basic converted distance value will still be used. .because and All were in the original unsorted store sequence before this reordering began. The calculated distance value is obtained from the top-ranked stores and remains unchanged during subsequent deletions and insertions. Therefore, the calculated distance value will not be reversed by the rearrangement result, and no circular dependency will be formed. The above method enables stores to be compared under a unified distance semantic, avoiding the incomprehensible ranking position due to differences in different feature units, while suppressing excessive advance amplitude when the distance distribution is discrete.

[0055] The technical solution of this disclosure can convert the store's level attribute into a distance metric comparable to its geographical location, enabling stores with different level attributes to participate in ranking comparisons under the same distance semantics. This overcomes the technical problem of difficulty in interpreting weighted ranking results caused by different dimensions of factors such as level, distance, and relevance. By determining the scene scale benchmark through the average distance of the preceding target number of stores, the converted distance value adaptively changes with the actual distance distribution of the current search results page, solving the technical problem that a fixed distance threshold is difficult to adapt to different scenarios such as dense business districts and sparse areas. The store to be extracted is identified by a dynamic reference value maintained during a single forward traversal, and the store to be extracted does not update this dynamic reference value. This ensures that the pull-out decision is only constrained by the preceding stores that have not been pulled out, maintaining the processing complexity while ensuring consistency. This solution resolves the technical issue of inconsistent handling of two types of stores in traditional methods by merging stores not appearing in the unsorted sequence from the candidate store set with stores pulled from the unsorted sequence into a single list of stores to be inserted. It uses the anchor point sequence after deleting stores as a reference for conditional insertion, with the constraint that the calculated distance to the store to be inserted is less than the anchor point distance, preventing distant stores from being inserted before nearby stores. This publicly disclosed solution ensures reasonable exposure for priority stores while better maintaining the distance rationality and relevance of search results. Furthermore, all operations are single linear traversals, making it suitable for deployment in online reordering pipelines for map search.

[0056] In some embodiments, the preset extraction conditions include: the store belongs to the candidate store set or has a valid level attribute; the store's calculated distance value is less than the dynamic reference value; and the store's relevance score is greater than a preset threshold.

[0057] In this embodiment, the preset extraction condition refers to a set of pre-defined rules used to determine whether a store should be identified as a store to be extracted when traversing the sequence of stores to be sorted. This condition is a compound logical expression; all three sub-conditions must be satisfied simultaneously for the store to be deemed to meet the preset extraction condition. Condition one limits the store's identity attribute—it must be a store in the candidate store set or a store with a valid level attribute; condition two limits the store's distance attribute—its converted distance value must be less than the dynamic reference value maintained during the traversal; condition three limits the store's relevance attribute—its matching degree with the user's search keywords must exceed a preset relevance threshold. For example, during the traversal, when a store simultaneously meets all three conditions, the store is identified as a store to be extracted and added to the extraction set. Conversely, if the store does not meet condition one (not a candidate store and has no valid grade attribute), or does not meet condition two (the converted distance value is not less than the dynamic reference value), or does not meet condition three (the relevance score is not greater than the preset threshold), then the store will not be identified as a store to be extracted, and the dynamic reference value will be updated with the corresponding comparison distance value, and the process will continue to traverse the next store.

[0058] Thus, by setting the aforementioned preset extraction conditions, stores that meet multiple constraints can be accurately selected from the unsorted store sequence as the stores to be extracted. Sub-condition one ensures that the extracted stores have priority display opportunities, avoiding the incorrect extraction of non-candidate stores; sub-condition two ensures that the extracted stores have a better calculated distance metric than the maximum comparison distance value recorded during the current traversal, making the extraction judgment dynamically change as the traversal progresses, avoiding unreasonable results from fixed threshold judgments at different traversal positions; sub-condition three ensures that the extracted stores have sufficient relevance to the user's search intent, avoiding the premature display of stores with low relevance, which would affect the user experience. The three sub-conditions work together to limit the extraction targets to stores that simultaneously possess the three attributes of "priority qualification," "distance advantage," and "relevance advantage," improving the quality of the re-ranking results.

[0059] In some embodiments, the method further includes: before the traversal begins, constructing a store identifier index set based on the candidate store set; if the store's level attribute is a valid level value or its identifier falls into the index set, then determining that the store belongs to the candidate store set or has a valid level attribute.

[0060] In this embodiment of the disclosure, the store identifier index set refers to a data structure constructed from the store identifiers of all stores in the candidate store set, used for fast lookup and matching. Its purpose is to determine whether the current store belongs to the candidate store set with low time complexity when traversing the store sequence. For example, the store identifier index set can be implemented using a hash set (HashSet), which stores the candidate store set... Each store's identifier (such as a numeric ID or string encoding) is stored as a key in a hash table. During the traversal, the store identifier of the current store is... The search has a time complexity of [time value missing]. If a match is found, the current store belongs to the candidate store set; if no match is found, it does not belong. This index set is constructed once before the traversal begins and is only used for querying during the traversal, without being modified.

[0061] In this embodiment, a valid grade value refers to the grade value stored in the grade attribute field of a store that is recognized by the system as having priority display eligibility. A store's grade attribute can take multiple different values, some of which correspond to a "valid" state (i.e., the store enjoys priority display opportunities), and some corresponding to an "invalid" or "no grade" state (i.e., the store does not enjoy priority display opportunities). For example, the grade attribute value can be represented by integer values ​​"1,2,3" or grade labels "A,B,C," where "1" or "A" can represent an invalid grade, and "2," "3," "B," and "C" can represent a valid grade; or it can use Boolean flags, where "valid" indicates a valid grade and "invalid" indicates no valid grade. When a store's grade attribute value is not empty and is not equal to a preset "invalid grade" flag, the store is determined to have a valid grade attribute.

[0062] In this embodiment, determining whether a store belongs to the candidate store set or has a valid level attribute means comprehensively judging the store's identity category based on its level attribute and the location of its store identifier to determine whether the store enjoys priority display opportunities. A store belonging to the candidate store set (i.e., the store identifier falling into the index set) and the store having a valid level attribute are two independent judgment dimensions; the store is determined to have priority display opportunities if either dimension is met. A store may meet both conditions simultaneously or only one condition; neither condition affects its determination as a store enjoying priority display opportunities. For example, if store A's store identifier exists in the candidate store set, but its level attribute is invalid, then store A is determined to belong to the candidate store set or have a valid level attribute (because the store identifier matches the index set); if store B's level attribute is valid, but its store identifier is not in the candidate store set, then store B is also determined to belong to the candidate store set or have a valid level attribute (because it has a valid level attribute). Only stores whose store identifier is not in the index set and whose level attribute is invalid are not determined to have priority display opportunities.

[0063] Thus, by constructing a store identifier index set from the candidate store set before traversal begins, the determination of whether a store belongs to the candidate store set can be completed quickly during the traversal process, without having to traverse the candidate store set one by one, thereby improving traversal efficiency, especially suitable for scenarios with a large candidate store set. Simultaneously, the dual determination mechanism—where either "the store identifier falls into the index set" or "the level attribute is a valid level value"—determines a store with priority display opportunities, simultaneously covering stores explicitly included in the candidate store set and stores whose priority is based on their own attributes, improving the completeness and robustness of the determination logic.

[0064] In some embodiments, the dynamic reference values ​​maintained during the traversal process are as follows: when traversing the sequence of stores to be sorted, the maximum comparison distance value among the traversed stores is recorded in the register; if the current store meets the preset extraction conditions, the register is not updated; otherwise, the register is updated with the comparison distance value of the current store. The comparison distance value is the converted distance value when the current store belongs to the candidate store set or has a valid level attribute, and the geographical location distance value is used otherwise.

[0065] In this embodiment of the disclosure, a register is used to store the maximum comparison distance value among the traversed stores during the traversal process, thereby providing a dynamically changing comparison benchmark for the extraction and determination of subsequent stores. Exemplarily, the register can be implemented by a variable in the computer system, assigned an initial value before the traversal begins, and continuously updated with its stored value according to preset rules during the traversal process.

[0066] In this embodiment, the comparison distance value refers to the distance metric used to update the register. This value varies depending on the store's attributes: for stores belonging to the candidate store set or possessing a valid grade attribute, the comparison distance value is the converted distance value; for ordinary stores that neither belong to the candidate store set nor possess a valid grade attribute, the comparison distance value is the geographic distance value. This value reflects the store's comprehensive measurement in the "distance dimension" and is used to maintain the update of dynamic reference values. For example, during traversal, if the current store belongs to the candidate store set and its converted distance value is 800 meters, then the comparison distance value for that store is 800 meters; if the current store is an ordinary store (not belonging to the candidate store set and not possessing a valid grade attribute) and its geographic distance value is 1000 meters, then the comparison distance value for that store is 1000 meters.

[0067] In some implementations, before the traversal begins, the register is initialized to a preset initial value (e.g., 0 or negative infinity, depending on the numerical range of the actual distance metric) that is less than all possible distance values ​​that can be compared.

[0068] Thus, through a traversal update mechanism that maintains dynamic reference values ​​in registers, this disclosure can complete the extraction and determination of all stores in a single forward traversal, with a processing time complexity of O(log n). This approach avoids the computational overhead of multiple rounds of traversal or sorting, making it suitable for the high real-time requirements of online reordering. Simultaneously, the rule of "not updating the register when the current store meets the extraction conditions" ensures that stores identified as candidates for extraction do not negatively impact the update benchmark of the dynamic reference value. This guarantees that the maximum comparison distance value recorded in the register is determined solely by stores that have not yet been extracted, thus ensuring that the extraction determination of subsequent stores is not influenced by already extracted stores, improving the stability and consistency of the determination results. Furthermore, by differentiating the comparison distance value rules for different store types, candidate and non-candidate stores are processed uniformly within the same register update framework, ensuring fairness for both types of stores during the traversal process.

[0069] In some embodiments, the anchor point distance is determined by the following rules: if the anchor point store belongs to the candidate store set or has a valid level attribute, its anchor point distance is the converted distance value; otherwise, the geographical location distance value is used. The preset insertion conditions include: the converted distance value of the store to be inserted is less than the anchor point distance of the current anchor point store.

[0070] In this embodiment, the anchor point distance determines whether a store to be inserted can be inserted before the anchor point store. The anchor point distance is not fixed to the store's geographic location distance, but is dynamically determined based on the anchor point store's attributes: if the anchor point store belongs to the candidate store set or has a valid level attribute, the anchor point distance is the store's converted distance value; otherwise, it is the store's geographic location distance value. For example, in the anchor point sequence, if the current anchor point store is a store with priority display service qualifications (belonging to the candidate store set), its geographic location distance is 1000 meters and its converted distance is 600 meters, then the anchor point distance of the anchor point store is 600 meters (i.e., the converted distance value); if the current anchor point store is an ordinary store (not belonging to the candidate store set and not having a valid level attribute), its geographic location distance is 1000 meters, then the anchor point distance of the anchor point store is 1000 meters (i.e., the geographic location distance value). Based on the above value selection rules, anchor point distances for anchor point stores belonging to the candidate store set or having effective level attributes are relatively smaller, making it easier for these stores to meet the insertion conditions and achieving differentiated processing of priority stores.

[0071] In some implementations, during the anchor insertion phase, each anchor store is visited sequentially from front to back along the anchor sequence. For the currently visited anchor store, it is first determined whether the anchor store belongs to the candidate store set or has a valid level attribute. If so, the anchor distance is taken as the converted distance value of the anchor store; otherwise, the geographic distance value of the anchor store is taken. Then, the store with the smallest converted distance value is taken from the list of stores to be inserted. It is then determined whether the converted distance value of the store to be inserted is less than the anchor distance of the current anchor store. If so, the store to be inserted is inserted before the current anchor store and marked as "inserted," and will not participate in subsequent comparisons. If not, the store to be inserted does not meet the insertion condition, and the next store to be inserted with the second smallest converted distance value is taken for comparison, or the next anchor store is selected. Stores to be inserted that do not meet the insertion condition are kept in the list for subsequent anchors to try to insert, until all stores to be inserted are inserted or the traversal is completed. After the traversal is completed, the stores to be inserted that have not been inserted are appended to the end of the anchor sequence.

[0072] Thus, by using the anchor point distance value rules, the anchor point distance of anchor point stores belonging to the candidate store set or with effective level attributes is taken as the converted distance value rather than the geographic distance value. This ensures that the converted distance value of the store to be inserted is compared with the converted distance value of this type of anchor point store under the same dimension and semantics, rather than being mixed with the original geographic distance value. This guarantees the fairness and comparability of comparing candidate stores and anchor point stores with priority display qualifications under the same distance metric. At the same time, by using "converted distance value less than anchor point distance" as the preset insertion condition, the insertion opportunity of candidate stores is limited to the case where the converted distance value is less than the current anchor point store's anchor point distance. This prevents distant candidate stores with large converted distance values ​​(i.e., those that are far from the user's effective distance after level conversion) from being inserted before nearby anchor point stores, preventing distant priority stores from encroaching on the display position of nearby ordinary stores. Thus, while ensuring the insertion opportunity of candidate stores, the overall distance rationality of search results is maintained.

[0073] In some embodiments, the scene scale baseline value is calculated once from the original data of the store sequence to be sorted before the start of this reordering, and remains constant during the calculation of the converted distance, the identification of the store to be extracted, the generation of the anchor sequence, and the insertion of the anchor.

[0074] In this embodiment of the disclosure, the original data is calculated only once, which means that before the start of this reordering process, the scene scale benchmark value is calculated only based on the initial state of the store sequence to be sorted (i.e., the original sequence without any deletion, insertion or position adjustment), and is calculated only once in the entire reordering process, and is not recalculated due to changes in the subsequent sequence.

[0075] In this embodiment of the disclosure, "maintaining constancy" means that throughout the entire rearrangement process—including distance calculation, store identification, anchor sequence generation, and anchor insertion—the scene scale baseline value remains the initially calculated value and is not updated or recalculated as the sequence changes or the processing progresses. For example, assuming the scene scale baseline value calculated before the rearrangement begins is 1200 meters, the distance calculation for all stores in subsequent distance calculations will be based on this 1200-meter value. During the anchor insertion stage, even if the store sequence to be sorted has been deleted and modified multiple times by insertion operations, the scene scale baseline value remains at 1200 meters and will not be recalculated due to changes in sequence length or store location.

[0076] In this way, by calculating the scene-scale baseline value once from the original data before the re-ranking begins and keeping it constant throughout the entire re-ranking process, it is ensured that the calculated distance value for all stores is calculated based on the same scene-scale baseline. This avoids inconsistencies in calculated distance values ​​caused by dynamic changes in the baseline value during the re-ranking process, thus guaranteeing the stability and interpretability of the re-ranking results. Furthermore, since the scene-scale baseline value is not recalculated due to the deletion of stores to be extracted or the insertion of candidate stores, the impact of sequence modification operations on the baseline value is effectively prevented. This ensures that the scene-scale baseline value only reflects the distance distribution characteristics of the original search results page and is not affected by subsequent re-ranking operations, thereby making the calculation of the calculated distance value deterministic and reproducible.

[0077] In some embodiments, if the total number of stores in the store sequence to be sorted is less than the target number, the actual number of stores is used in the calculation.

[0078] In this embodiment of the disclosure, using the actual number of stores in the calculation means that when the total number of stores in the store sequence to be sorted is less than the preset target number, the first N stores are no longer required to be selected. Instead, all stores that actually exist in the sequence are used to participate in the calculation of the scene scale benchmark value, thereby avoiding the problem that the scene scale benchmark value cannot be calculated or the calculation result is distorted due to insufficient number of stores.

[0079] Thus, even if the total number of stores in the unsorted store sequence is insufficient to provide the preset target number of top stores, the system can still calculate the scene-scale baseline value based on the actual existing store data. This avoids program anomalies or reordering process interruptions due to insufficient store numbers, improving the robustness and adaptability of the reordering method. Simultaneously, because the actual total number of stores is used in the calculation, the scene-scale baseline value can more realistically reflect the actual distance distribution characteristics of the current search results page, avoiding baseline value bias caused by insufficient sample size and ensuring the accuracy of subsequent distance value calculations and anchor point insertion.

[0080] In some embodiments, the method further includes: removing duplicates from the list of stores to be inserted by store identifier and setting a status identifier for each store to be inserted; sorting the list of stores to be inserted in ascending order by the converted distance value, wherein the same store to be inserted is inserted at most once in a single reordering; and marking stores to be inserted that cannot be inserted at the previous anchor point position as only allowed to be appended to the end.

[0081] In this embodiment of the disclosure, a status identifier refers to a marker information set for each candidate store in the list of stores to be inserted, used to characterize the processing stage of the candidate store in the current reordering process. The status identifier can take different values ​​to distinguish the current state of the candidate store. For example, the status identifier can include at least three states: "not inserted" (indicating that the store has not yet been inserted into the anchor sequence and can still participate in the insertion determination of subsequent anchor positions), "inserted" (indicating that the store has been successfully inserted into the anchor sequence and no longer participates in any subsequent insertion determination), and "only allowed to be appended to the end" (indicating that the store is marked because it cannot meet the insertion conditions of the preceding anchor positions and no longer participates in the insertion determination of subsequent preceding anchor positions; it is only allowed to be appended to the end of the sequence after traversal is completed). By setting the status identifier, the system can clearly track the state changes of each store to be inserted during the insertion process, avoiding duplicate processing or omissions.

[0082] In this embodiment, sorting by converted distance value in ascending order means that the candidate stores in the store list to be inserted are sorted according to their converted distance values ​​from smallest to largest, so that the candidate store with the smallest converted distance value is placed at the beginning of the list. For example, if the converted distance value of store X is 300 meters, the converted distance value of store Y is 500 meters, and the converted distance value of store Z is 800 meters, then the list order after sorting by converted distance value in ascending order is [X(300), Y(500), Z(800)]. Since the smaller the converted distance value, the closer the store is to the user's "effective distance" after level conversion, prioritizing its inclusion in the insertion decision helps to insert stores with a greater distance advantage at the beginning of the list.

[0083] In this embodiment, "only allowed to be appended to the end" refers to a processing state where a store to be inserted cannot be inserted into a preceding anchor position because it does not meet the insertion conditions. This store will no longer participate in the subsequent insertion determination of preceding anchor positions. Instead, it will be added to the end of the sequence (i.e., after all existing stores) after the anchor sequence traversal is complete. For example, if a store X cannot be inserted into a preceding position during traversal because its calculated distance value is not less than the anchor distance of the current anchor store, its state is marked as "only allowed to be appended to the end." It will not be compared with any anchor points subsequently. After all anchor points have been traversed, store X will be appended to the end of the sequence.

[0084] In some implementations, when generating the list of stores to be inserted, the system first merges the stores in the candidate store set that do not appear in the unsorted store sequence with the identified stores to be extracted, and removes duplicates by store identifier. If the same store identifier appears in two sources, only one instance is retained. After deduplication, a status identifier is set for each store to be inserted in the list, with the initial status being "not inserted". Then, the system sorts the stores in the list of stores to be inserted in ascending order according to their converted distance values, with the store with the smallest converted distance value at the head of the list. During the anchor point insertion stage, the system sequentially retrieves the stores to be inserted from the head of the list and performs an insertion condition check with the current anchor point: if the converted distance value of the store is less than the anchor point distance of the current anchor point store, it is inserted before the current anchor point, the status identifier is updated to "inserted", and it is marked as no longer participating in subsequent comparisons; if the insertion condition is not met, its status identifier is updated to "only allowed to be appended to the end", and it is no longer retrieved for comparison in subsequent anchor point traversal. After all anchor point sequences have been traversed, the system appends all stores marked as "only allowed to be appended to the end" and all stores that have not yet been processed to the end of the anchor point sequence, forming the final target store sequence.

[0085] In a further embodiment, to avoid the same store to be inserted being repeatedly compared or inserted at multiple anchor points, a candidate state is set for each store to be inserted in the list of stores to be inserted. This ensures that candidate states can only change in one direction. Candidate state Defined as: in, For the first The candidate status of stores to be inserted; This indicates that it has not yet been inserted and is allowed to participate in the comparison of the preceding anchor point; This indicates that it has been inserted into the anchor sequence; This indicates that because the cumulative displacement budget, close-range same-level constraint, correlation gating constraint, or category quota constraint are not met, it can only be added to the end; This indicates that the append function has been completed.

[0086] Candidate states are only allowed to transition in one direction: Convertable to or , Convertable to , and All states are final states and will not transition to other states. During the anchor point scanning process, only... The store to be inserted will be compared with the preceding anchor point; The stores that are not included in the subsequent comparison will no longer be included; The stores do not participate in the comparison of the preceding anchor points, but only participate in the appending at the end after the anchor point scanning is completed.

[0087] In one implementation, along the anchor point sequence Perform a single forward traversal. For each anchor store encountered during the traversal... Determine the distance to its anchor point If the anchor store belongs to the candidate store set or has a valid ranking attribute, then the anchor distance is... Take the converted distance value of the anchor shop; otherwise, Take the geographical distance value of the anchor store.

[0088] For each store in the list to be inserted, its calculated distance value is denoted as: .when When the condition is met, it indicates that the store to be inserted meets the distance condition, and can be inserted into the current anchor store provided that other constraints are met. Previously, the status of the store to be inserted was set. Updated to already inserted; when At that time, the store to be inserted will not be inserted before the current anchor point.

[0089] Anchor point scanning is a single forward traversal, and the order in which stores to be inserted is unidirectional. Stores already inserted are no longer included in subsequent anchor point comparisons; stores marked as only allowed to be appended to the end are no longer included in the insertion of preceding anchor points. Anchor point sequence After traversal is complete, the status is either appending only to the end or appending unprocessed stores to the end of the sorted sequence. Each insertion has a specific anchor store as a comparison benchmark, avoiding insertion at a fixed position that would cause distant stores to overtake a large number of nearby ordinary stores.

[0090] Thus, by deduplicating stores by store identifier, the same store can be avoided from being inserted repeatedly, ensuring the uniqueness and consistency of the reordering results. By setting status identifiers for each store to be inserted, stores in different processing states can be classified and managed, preventing the same store from being inserted repeatedly or omitted. By sorting the list of stores to be inserted in ascending order of their converted distance values, the store with the smallest converted distance value (i.e., the closest effective distance to the user after level conversion) is given priority in the insertion decision, which helps to insert the store with the most advantageous distance into a higher position, improving the distance rationality of the reordering results. By limiting the insertion of the same store to at most once in a single reordering, the repeated insertion of the same store at multiple anchor positions avoids the disorder of the sorting sequence caused by the repeated insertion of the same store. By marking stores that cannot be inserted into the preceding anchor positions as "only allowed to be appended to the end", they are no longer involved in invalid comparisons of subsequent anchors, reducing computational overhead; at the same time, the append-to-the-end mechanism ensures that all stores to be inserted are retained in the final sorting sequence, avoiding information loss caused by being discarded due to unmet insertion conditions.

[0091] In some embodiments, the method further includes: setting a cumulative displacement budget before performing anchor point insertion; calculating and accumulating the backward displacement increment that the insertion will cause to the affected stores before each proposed insertion; and rejecting the insertion if the accumulated value exceeds the remaining value of the cumulative displacement budget.

[0092] In this embodiment of the disclosure, the cumulative displacement budget refers to an upper limit set before the anchor point insertion phase to restrict the total displacement of nearby ordinary shops pushed backward during the current reshuffling process. This budget value serves as the upper bound of the allowed "total displacement cost" for this reshuffling and is used to determine whether the insertion can be performed before each candidate shop insertion. For example, the initial value of the cumulative displacement budget can be calculated based on a preset budget coefficient, the number of nearby shops participating in the statistics, and the geographical distance value of each shop. For instance, setting it to 10 means that the sum of the total displacement of all nearby ordinary shops pushed backward during this reshuffling process must not exceed 10 position units.

[0093] In this embodiment of the disclosure, the backward displacement increment refers to the number of positions that an affected store moves backward in the sorting sequence due to a single candidate store insertion operation. When a candidate store is inserted before an anchor store, the positions of that anchor store and all subsequent ordinary stores are shifted one position backward, with each shifted store generating a backward displacement increment of 1 unit. For example, if the anchor sequence is [store A, store B, store C, store D], and the store to be inserted, X, is inserted before store B, the sequence becomes [store A, store X, store B, store C, store D]. Stores B, C, and D are each shifted backward by 1 position, with each store's backward displacement increment being 1, and the total displacement increment being 3.

[0094] In this embodiment of the disclosure, the remaining budget value refers to the available budget amount remaining after subtracting the cumulative displacement consumption that has already occurred during the current rearrangement from the initial value of the cumulative displacement budget. This budget is used to determine whether there is still sufficient budget to support the insertion of a candidate store before each subsequent insertion. For example, if the initial value of the cumulative displacement budget is 10, and the previous two insertions have consumed displacement amounts of 3 and 4, then the remaining budget value is 10 - 3 - 4 = 3. If the required cumulative displacement increment for the next insertion is 5, then 5 > 3, the budget is insufficient, and the insertion is rejected.

[0095] To limit the extent to which near-distance natural results are shifted backward as a whole, a cumulative displacement budget is set before anchor point insertion. Cumulative displacement budget The initial value is Determine using the following formula: in, This represents the maximum allowable cumulative backward displacement for a single rearrangement. For budget coefficients, The store serial numbers that participated in the budget statistics. The number of front-end stores participating in the budget statistics. This is an indicator function; it takes the value when the condition within the parentheses is true. Otherwise take , For the first The distance of each store from the search user. This is a near-distance threshold.

[0096] Before each insertion, calculate the backward displacement of the nearest natural result caused by that insertion: in, For the first The backward displacement of a natural result store. For the first The natural result is the store's position before the reordering. For the first The natural result is the rearranged position of the store. The operation is performed to obtain the larger value. Only operations satisfying the condition are performed. Natural result store accumulation If this insertion will cause the cumulative displacement budget to be affected... If the deduction results in a negative value, the insertion attempt will be rejected, and the candidate status of the corresponding candidate store will be changed. Depend on Updated to If this insertion will not affect the cumulative displacement budget. If the deduction is negative, then inserting and deducting the corresponding budget is allowed.

[0097] Thus, by setting a cumulative displacement budget before anchor point insertion and calculating the displacement increment before each insertion, the total displacement of nearby ordinary shops pushed backward during the rearrangement process can be quantitatively controlled. This avoids the significant backward shift of nearby ordinary shops due to the continuous insertion of shops to be inserted, thereby ensuring the insertion opportunity for shops to be inserted while maintaining the relative positional stability of nearby ordinary shops in the original sorting result. Through a mechanism that rejects insertion when the accumulated value exceeds the remaining budget value, the insertion decision is constrained not only by the current anchor point distance condition but also by the global cumulative displacement budget. That is, each insertion must not only satisfy the local condition that the converted distance value is less than the anchor point distance but also the global condition that the displacement cost does not exceed the remaining budget. This prevents distant shops to be inserted from being repeatedly inserted at the front of the sequence, causing nearby ordinary shops to be pushed out of the front area, thus improving the overall rationality and fairness of the rearrangement result in terms of distance dimension. Simultaneously, the remaining value of the cumulative displacement budget dynamically decreases with the execution of the insertion operation, making the budget constraints faced by subsequent insertions more stringent and effectively controlling the cumulative disturbance of the rearrangement operation on the original sorting.

[0098] In some embodiments, proximity-based constraints and relevance-based gating constraints are applied to anchor point insertion. The proximity-based constraints are: if the distance between the anchor point and the store is not greater than a preset threshold, only stores whose distance is also not greater than the preset threshold are allowed to be inserted. The relevance-based gating constraints are: the relevance score of the store to be inserted must be greater than a preset threshold.

[0099] In this embodiment, the proximity constraint means that the constraint is activated only when the geographical distance to the anchor store is not greater than a preset proximity threshold. In this case, only stores whose geographical distance is also not greater than the threshold are allowed to be inserted before the anchor. If the geographical distance to the anchor store is greater than the preset proximity threshold, the constraint is ineffective, and stores can attempt to be inserted regardless of their distance. For example, if the preset proximity threshold is 1000 meters and the anchor store is 800 meters away, only stores within 1000 meters of the anchor store are allowed to be inserted. If the anchor store is 1500 meters away, stores can attempt to be inserted regardless of their distance.

[0100] In this embodiment of the disclosure, the relevance gating constraint means that the relevance score of the store to be inserted must be greater than a preset relevance threshold. This constraint is a global constraint, applicable to every anchor point insertion operation, and is independent of the distance attribute of the anchor point store. For example, when the preset relevance threshold is 0.8, a store with a relevance score of 0.85 meets the constraint and is allowed to be inserted; a store with a relevance score of 0.6 does not meet the constraint and cannot be inserted before any anchor point.

[0101] In some implementations, for proximity-based constraints: the system obtains the geographical distance value of the current anchor store and determines whether it is greater than a preset proximity threshold; if it is greater, the constraint is not activated and the verification is skipped; if it is less than or equal to, the constraint is activated, and the system further obtains the geographical distance value of the store to be inserted and determines whether it is also not greater than the threshold; if it is, the verification is passed; otherwise, the store to be inserted must not be inserted before the current anchor.

[0102] In some implementations, for relevance gating constraints: the system obtains the relevance score of the store to be inserted and determines whether it is greater than a preset relevance threshold; if it is greater, the verification is passed; otherwise, the store to be inserted must not be inserted before the current anchor point.

[0103] Only after both constraints pass validation can the store to be inserted be inserted; if either constraint fails, the store to be inserted cannot be inserted before the current anchor point. Optionally, if a store to be inserted is rejected because it does not meet the constraints, it can be reserved for subsequent anchor points to continue trying, or marked as only allowed to be appended to the end.

[0104] In a further implementation, to unify the converted distance comparison, cumulative displacement budget, category quota, and relevance gating into a single comprehensive judgment metric, an insertion safety margin is calculated before each store is inserted. Only when the insertion safety margin is greater than zero is the store allowed to be inserted before the current anchor point. The insertion safety margin is calculated as follows: in, For the first The store to be inserted is relative to the first The insertion safety margin at each anchor point; For the first Anchor distance between anchor points; For the first The calculated distance value of each store to be inserted; , , These are the cumulative displacement budget, category quota occupancy, and penalty weights for insufficient relevance, respectively, which are preset hyperparameters; For the first The store to be inserted is inserted into the first... The expected backward displacement before each anchor point; This represents the current remaining value of the cumulative displacement budget. To prevent the budget lower bound constant from having a denominator of zero; For category The number of stores currently inserted; For category The maximum number of slots that can be inserted; For the first The relevance score of each store to be inserted; This is the correlation threshold; This is for calculating the larger value.

[0105] Expected backward displacement The calculation method is as follows: in, For the reason The store to be inserted is inserted into the first... A collection of ordinary shops that have moved backwards from an anchor point; For the first The amount of backward displacement of an ordinary store; For the first The geographical distance value of a typical store; For short-range threshold; This is an indicator function; it takes the value when the condition within the parentheses is true. Otherwise take .

[0106] when When the value is greater than 0, it indicates that the insertion not only meets the basic condition of a smaller converted distance, but also has a safety margin in terms of cumulative displacement budget, category quota, and relevance gating, allowing the insertion; when... If the value is ≤0, the insertion is rejected, and the store to be inserted is marked as either continuing to participate in subsequent anchor comparisons or only allowed to be appended to the end, depending on its status.

[0107] Thus, by using proximity-based constraints, when the anchor store is itself a nearby store, only other nearby stores are allowed to be inserted before it. This prevents distant stores from gaining an advantage in calculated distance and being inserted before nearby stores, thereby maintaining the concentrated distribution of nearby stores in the front area of ​​the ranking results and ensuring a reasonable progression of search results in terms of distance. Through relevance gating constraints, it is ensured that stores inserted at the front have sufficient relevance to the user's search keywords, preventing stores with low relevance from being displayed earlier due to smaller calculated distance values. This ensures priority for store insertion while maintaining a match between search results and user search intent. These two constraints work synergistically, simultaneously constraining insertion operations in both distance-based matching and relevance-based control dimensions, further improving the overall quality of the re-ranking results.

[0108] In some embodiments, the method further includes: when parameter groups are enabled by category, the converted distance value of each store is calculated based on preset parameters corresponding to its category and level, and an upper limit for the number of stores that can be inserted is set for each category; when the number of stores inserted in a category reaches the upper limit for the number of stores that can be inserted, the remaining stores to be inserted in that category will no longer participate in the insertion of the preceding anchor points, and will only be allowed to be added to the end.

[0109] In this embodiment of the disclosure, the parameter group differentiated by category refers to an independent set of parameters set for different categories (e.g., stores in different verticals or business types) when the system enables the parameter configuration mode differentiated by store category. Each parameter group includes at least a fixed distance threshold and a distance amplification factor for that category. For example, assuming the system includes two categories, "restaurant" and "hotel," different parameter groups can be configured for these two categories respectively: a fixed distance threshold for the restaurant category... Meters, distance magnification factor Fixed distance threshold for hotels Meters, distance magnification factor When calculating the discounted distance value for a store, the system first identifies the category to which the store belongs, and then performs the calculation based on the parameter set corresponding to its category level.

[0110] In this embodiment of the disclosure, the maximum number of insertable stores refers to the maximum number of candidate stores in each category that can be inserted into the front anchor positions during this re-ranking. This maximum number is determined based on a preset single-category percentage limit and the total number of slots at the front of the results page, and is used to prevent candidate stores of a certain category from excessively crowding the front area of ​​the ranking results. For example, if the total number of slots at the front of the results page... Single category percentage limit If the maximum number of insertion slots for a certain category is 6, it means that a maximum of 6 candidate stores in that category can be inserted at the preceding anchor point.

[0111] In this embodiment of the disclosure, "appending to the end" refers to a processing method where the store to be inserted is added to the end of the sequence after the anchor point sequence has been traversed, and the store is no longer attempted to be inserted into the preceding anchor point position. For example, when the number of inserted stores in a certain category has reached the limit, the remaining stores to be inserted in that category are processed by appending to the end.

[0112] In some implementations, before each store to be inserted into a preceding anchor point, the system identifies the category to which the store belongs and determines whether the number of stores already inserted in that category has reached its maximum limit. If the limit has not been reached, the store can participate in the preceding anchor point insertion decision; if the limit has been reached, the store will no longer participate in the preceding anchor point insertion and will be marked as "only allowed to be appended to the end," appended to the end of the sequence after the anchor point sequence traversal is completed. For example, suppose the maximum number of stores that can be inserted in the catering category is 6. When 6 stores in the catering category have already been inserted into preceding anchor points, the 7th store in the catering category will no longer participate in the preceding anchor point insertion decision in subsequent anchor point traversals and will be directly marked as "only allowed to be appended to the end."

[0113] In a preferred embodiment, when category-based parameter groups are enabled, the basic reduced distance calculation formula is replaced by the following formula: in, For the first The calculated distance value for each store. For the first The geographical distance value of each store. For the first The category to which each store belongs. For the first The level attributes of each store. For category And level attributes The corresponding fixed distance threshold, For category And level attributes The corresponding distance magnification factor, As the baseline value for scene scale, For category The maximum number of slots that can be inserted. This represents the upper limit of the percentage for a single category. This represents the total number of slots at the beginning of the results page. This is for rounding up.

[0114] When a certain category The number of stores already inserted has reached the maximum number of slots that can be inserted. At that time, this category The remaining shops to be inserted will no longer participate in the insertion of the preceding anchor points; they will only be allowed to be appended to the end. This process does not change the position of already inserted shops, nor does it rescan processed anchor points.

[0115] In a further embodiment, the fixed distance threshold in each parameter group and distance magnification factor The model was obtained through offline calibration. The offline calibration model used historical map search logs as training data, which included query intent categories, store categories, rating attributes, geographic distance values, exposure locations, click behavior, navigation behavior, phone call behavior, in-store conversion behavior, and user dwell behavior.

[0116] For each category and each level Extract the conversion distance set from historical effective conversion samples The fixed distance threshold and distance magnification factor are calibrated according to the following formula: in, For category And level The corresponding fixed distance threshold, Transform the distance set At quantile quantiles at , For level The corresponding quantiles, For category And level The corresponding distance magnification factor, For category Average distance of the first results in historical queries To prevent the distance lower limit constant from having a denominator of zero, This is for calculating the larger value.

[0117] The higher the level attribute, the higher the corresponding percentile. The larger the value, the greater the reasonable service radius that the threshold of high-level stores covers; distance from sensitive categories The distance magnification factor is relatively small. It will not be over-amplified; categories with a longer service radius can achieve greater results. and After offline calibration is completed, and The threshold configuration is written into a table, and the table is looked up and called by category and level during online reordering, without online training. This method ensures that the store's distance conversion and insertion quota match the category characteristics, preventing single-category stores from occupying too many front-row positions, while also avoiding overly lenient distance conversion for distance-sensitive categories.

[0118] Thus, by differentiating parameter groups by category, stores in different categories can use their own suitable fixed distance thresholds and distance amplification coefficients. This allows the level conversion logic for each category to be independently optimized based on the distribution characteristics of that category, avoiding conversion deviations caused by a single parameter configuration on stores in different categories, and improving the rationality of the calculated distance values ​​for each category. By setting an upper limit on the number of insertion slots for each category, it prevents a large number of stores from one category from excessively occupying the front area of ​​the ranking results, ensuring that stores from different categories have a reasonable opportunity to be displayed in the anchor insertion process, avoiding the monopoly of a single category in the front of the ranking results, and maintaining the diversity of search result categories. At the same time, this quota control mechanism works together with proximity-level constraints and relevance gating constraints to impose multi-dimensional collaborative constraints on anchor insertion based on distance level, relevance, and category diversity, further improving the overall quality of the re-ranking results.

[0119] In some embodiments, the method further includes: applying a hysteresis constraint to the extraction determination of a store in an adjacent request; the hysteresis constraint is: if a store was not extracted in the previous request, its calculated distance value can be identified as a store to be extracted only if it is less than the dynamic reference value minus the preset hysteresis band half-width; if a store has been extracted in the previous request, its calculated distance value can be identified as a store to be extracted only if it is less than the dynamic reference value plus the preset hysteresis band half-width.

[0120] In this embodiment, the hysteresis constraint means that whether a store is identified as a store to be extracted in the current request depends not only on the real-time data in the current request, but also on the extraction status of the store in the previous request. The hysteresis constraint sets a buffer area between adjacent requests, preventing the extraction status of a store from frequently switching due to small fluctuations in the calculated distance value or dynamic reference value. For example, if a store has already been extracted in the previous request, it can be extracted in the current request if its calculated distance value is less than the dynamic reference value plus half the hysteresis band width; this condition is relatively lenient. If it was not extracted in the previous request, its calculated distance value in the current request must be less than the dynamic reference value minus half the hysteresis band width to be extracted; this condition is relatively strict.

[0121] In this embodiment of the disclosure, the hysteresis band half-width refers to the width parameter constituting the hysteresis constraint buffer region, used to form a buffer zone between adjacent requests. When the store's calculated distance value falls within this interval, its extraction state does not switch, thereby avoiding repeated changes in the judgment result due to minor changes in boundary conditions. For example, the hysteresis band half-width can be determined based on the scene scale reference value and a preset hysteresis ratio coefficient.

[0122] In this embodiment of the disclosure, the extraction status refers to the determination result of whether a store is identified as a store to be extracted in a single request, and is usually represented in binary form. For example, the extraction status can take the values ​​"extracted" (indicating that the store was identified as a store to be extracted in this request) and "not extracted" (indicating that the store was not identified as a store to be extracted in this request). This status is recorded after the end of this request and used as a reference for the lag determination of the next adjacent request.

[0123] In this embodiment of the disclosure, adjacent requests refer to two map search reordering requests initiated by the same user in the same session that are consecutive in time or closely related in logic. For example, requests in scenarios such as a user continuously flipping through pages in a map client (from page 1 to page 2), or a user initiating two consecutive searches with the same or similar keywords within a short period, can be considered adjacent requests. Adjacent requests are strongly correlated—the user's intent and search context are essentially consistent, therefore the ranking results should maintain a certain degree of coherence.

[0124] In a preferred embodiment, in adjacent requests or page-turning requests within the same session, a hysteresis constraint is applied to the store retrieval determination, and the basic retrieval conditions are adjusted accordingly. Replace with: in, ; For the first The extraction status of each store in the previous request, retrieve Indicates that it has been extracted. This indicates that the item was not retrieved. For the first The calculated distance value for each store; The current value of the register; The hysteresis band is half the width; This is the hysteresis proportional coefficient; This serves as the baseline value for the scene scale.

[0125] If the store was not retrieved in the previous request ( When this condition is met, the current request must meet stricter conditions. Only then can it be extracted; if the store has already been extracted in the previous request ( When the current request is satisfied, This will maintain the extraction status. Therefore, the extraction status of the same store needs to span a width of [width value missing]. A switch can only occur after a hysteresis band has elapsed. If the session-level cache does not contain the retrieval status of the store from the previous request, then by default... .

[0126] The above method can reliably extract decisions when flipping through pages, refreshing, or when the user's position changes slightly, reducing the repeated jumps of priority stores in adjacent requests and improving the visual stability of search results.

[0127] Thus, by applying hysteresis constraints, a buffer zone is set up between adjacent requests for determining the extraction status of a store. This prevents the extraction status of a store from frequently switching due to minor fluctuations in the calculated distance value or dynamic reference value, suppressing the jitter of the ranking results and improving the stability and consistency of the ranking results for the same user in continuous page turning or continuous search scenarios. Simultaneously, by adopting an asymmetric determination rule of "not extracted → requires crossing a stricter threshold to enter the extraction state; already extracted → the threshold for maintaining the state is relatively loose," the switching of the extraction state has a directional lag, avoiding repeated switching of stores near boundary conditions and improving the anti-interference ability and result consistency of the re-ranking algorithm between adjacent requests. The hysteresis band half-width is dynamically determined based on the scene scale benchmark value, allowing the hysteresis band width to adaptively scale with the distance distribution of the current search scene. This maintains a reasonable state switching threshold in different scenarios such as dense business districts and sparse areas, avoiding the failure or oversensitivity of hysteresis constraints due to changes in scene distance scale.

[0128] In some embodiments, the method further includes: encapsulating the distance calculation, store traversal extraction, and anchor insertion into independent callable tool modules, with the orchestration agent determining the calling order and parameter configuration of each module based on the request context; the orchestration agent is used to output the tool calling sequence and parameter configuration information, and the modification of the sorting sequence is performed by the tool module according to the tool calling sequence.

[0129] Before applying the results of each tool execution, a safety check is performed. The check includes the reasonableness of the converted distance value, the cumulative displacement budget, the category quota, the close-range same-level constraints, and the correlation gating constraints. If the tool call times out, outputs an illegal value, the insertion position goes out of bounds, or any constraint is violated, the method falls back to the deterministic rearrangement process without orchestration agents enabled.

[0130] In this embodiment, the callable tool module refers to encapsulating core functions such as distance calculation, store traversal extraction, and anchor insertion into independent, callable program units or service interfaces. Each tool module has clearly defined inputs, outputs, and functional boundaries, and can be invoked by external callers (such as orchestration agents) according to specified parameters and order. For example, the distance calculation module can receive the sequence of stores to be sorted and the scene scale benchmark value as input, and output the distance value of each store; the store traversal extraction module can receive the sequence of stores to be sorted, the candidate store set, and the relevance threshold as input, and output the set of stores to be extracted; the anchor insertion module can receive the anchor sequence and the list of stores to be inserted as input, and output the rearranged target store sequence. Each tool module is independent of the others, does not depend on the internal implementation details of each other, and communicates only through standardized input / output interfaces.

[0131] In this embodiment, the orchestration agent refers to an independent decision-making component used to determine the calling order of each tool module and the parameter configuration required for each module based on the context information of the current request (such as scene scale baseline value, store category distribution, operation level configuration, etc.), and output its decision results in a structured manner (such as tool call sequence and parameter configuration information). The orchestration agent focuses on making decisions about what to do and what parameters to use, without performing specific sorting modification operations. For example, the orchestration agent can determine, based on the context information of the current request, whether to enable parameter groups differentiated by category, what value to take for the cumulative displacement budget coefficient, and what to set the relevance threshold, etc., and output the results in the order of "first calling the distance calculation module, then calling the store traversal extraction module, and finally calling the anchor insertion module".

[0132] In this embodiment of the disclosure, the tool call sequence refers to a list of tool module call instructions output by the orchestration agent and arranged in the order of execution, used to instruct the execution engine which tool modules to call in sequence. For example, the tool call sequence can be represented as ["Reduced Distance Calculation Module" → "Store Traversal Extraction Module" → "Anchor Point Insertion Module"], indicating that the execution engine should call these three tool modules in this order.

[0133] In this embodiment of the disclosure, parameter configuration information refers to the set of parameter values ​​determined by the orchestration agent for the execution of each tool module, including but not limited to the target quantity. Correlation threshold Fixed distance thresholds corresponding to each level and distance magnification factor Cumulative displacement budget coefficient Near-distance threshold Single category percentage limit Hysteresis proportional coefficient For example, the parameter configuration information can be represented as {"Target Quantity": 10, "Relevance Threshold": 0.8, "Near Distance Threshold": 1000 meters, "Single Category Percentage Limit": 30%}, and each tool module reads these parameter values ​​during execution.

[0134] In this embodiment of the disclosure, security verification refers to the process by which an independent verification component checks the correctness and compliance of the execution result of the tool module before it is formally applied to the sorting sequence. Verification content includes, but is not limited to: whether the converted distance value is within a reasonable range, whether the cumulative displacement budget has not been over-consumed, whether the number of insertions in each category has not exceeded the quota limit, and whether the insertion operation satisfies the proximity-level constraint and correlation gating constraint. For example, if the insertion position output by a tool module exceeds the length range of the anchor point sequence, the security verification will determine that the insertion position is out of bounds and reject the execution result.

[0135] In this embodiment, the deterministic reordering process refers to an alternative reordering scheme that is logically fixed and has a unique execution path, independent of orchestration agent decisions. When an orchestration agent or tool module malfunctions, the system automatically switches to this deterministic process to ensure that the reordering operation can still be completed normally. For example, the deterministic reordering process can use preset fixed parameters and a fixed calling order to execute the reordering, without involving any dynamic decisions from the orchestration agent. This sacrifices a certain degree of scenario adaptability to ensure that the reordering process can be completed under any circumstances.

[0136] In this embodiment of the disclosure, rollback refers to an exception handling mechanism that automatically abandons the current execution result and switches to a deterministic reordering process when the system detects an abnormal situation during the execution of the orchestration agent or tool module.

[0137] In some implementations, during the system initialization or deployment phase, the logic for calculating the distance is encapsulated into a distance calculation tool module, the logic for identifying stores to be extracted based on dynamic reference values ​​is encapsulated into a store traversal extraction tool module, and the logic for conditional insertion based on anchor point distance is encapsulated into an anchor point insertion tool module. Each module provides calling capabilities to the outside world through standardized interfaces, and there are no circular dependencies or shared variable states between modules.

[0138] Each time a reordering request arrives, the orchestration agent obtains the request context, which includes at least the scenario scale baseline value for this reordering, the category distribution information of candidate stores, and the current parameter configuration of the system. Based on this context information, the orchestration agent determines the calling order of each tool module and the parameter configuration required by each module in this reordering through pre-configured decision logic, and outputs it in the form of tool call sequence and parameter configuration information. This output does not contain modification instructions for the sorting sequence or actual data, but only the call plan and parameter values.

[0139] After receiving the output from the orchestration agent, the execution engine calls each tool module in sequence according to the tool call sequence and passes the parameter configuration information to each module. After each module executes, it returns the execution result, and the execution engine applies the result to the sorting sequence step by step.

[0140] Before each tool module's execution result is applied to the sorting sequence, a security verification component performs checks: for the output of the distance calculation module, it verifies whether each distance value is within a reasonable range; for the output of the store traversal extraction module and the anchor insertion module, it verifies whether they meet the cumulative displacement budget constraint, whether the number of insertions in each category exceeds the quota limit, and whether the insertion operation meets the proximity-based constraint and relevance gating constraint. If all checks pass, application is allowed; if any check fails, a rollback mechanism is triggered.

[0141] In the rollback mechanism, the system terminates the execution of all current tool modules, clears the intermediate results already generated, discards the output of the orchestration agent, and switches to a deterministic reordering process without enabling the orchestration agent. For example, if a tool module call times out, returns an illegal value, the insertion position goes out of bounds, or security checks find that the number of insertions in a certain category has exceeded the quota limit but there are still stores in that category waiting to be inserted being attempted to be inserted, then a rollback is triggered immediately.

[0142] In a preferred embodiment, the safety barrier generates an execution certificate before each candidate store is inserted. The execution document is a quintuple, with each component corresponding to the validation results of the insertion in five dimensions: discounted distance advantage, cumulative displacement budget, category quota, relevance gating, and latency budget. in, For the first The store to be inserted is relative to the first Execution certificate for each anchor point; For the first Anchor distance between anchor points; For the first The calculated distance value of each store to be inserted; This represents the current remaining value of the cumulative displacement budget. For the first The store to be inserted is inserted into the first... The expected backward displacement before each anchor point; For category The maximum number of slots that can be inserted; For category The number of stores currently inserted; For the first The relevance score of each store to be inserted; This is the correlation threshold; The maximum allowed latency for a single tool call; For the first The actual time taken to call the corresponding tool for each store to be inserted.

[0143] When all components of the execution document are not less than zero, it indicates that the insertion meets all constraints, and the safety barrier allows execution. When any component is less than zero, the safety barrier rejects the insertion and records the corresponding negative component as the reason for rejection. The execution document, along with the store identifier to be inserted, the anchor store identifier, and the current request identifier, are written to the rearrangement log for online auditing, anomaly replay, and parameter calibration.

[0144] Thus, by encapsulating distance calculation, store traversal extraction, and anchor point insertion into independent callable tool modules, decoupling these modules is achieved. Each module can be independently developed, tested, optimized, and reused, and changes within any module do not affect the normal operation of other modules, thereby improving the system's maintainability and scalability. The orchestration agent dynamically determines the calling order and parameter configuration of each module based on the request context. The reordering process can adaptively adjust according to the characteristics of the current search scenario, offering stronger scenario adaptability compared to deterministic processes with fixed order and parameters. By separating decision-making from execution, the orchestration agent only outputs the tool calling sequence and parameter configuration information without directly modifying the sorting sequence, avoiding coupling between the orchestration agent's decision logic and the tool module's execution logic. This ensures that changes to the orchestration agent do not affect the correctness of the tool module's execution, and vice versa. A security verification mechanism performs multi-dimensional compliance verification before each tool execution result is applied, preventing reordering results from violating constraints due to orchestration agent decision errors or tool module execution anomalies, thus ensuring the security and compliance of the reordering results. Through the abnormal rollback mechanism, when abnormal situations such as timeout, illegal value, out-of-bounds or constraint violation are detected, the system automatically switches to the deterministic reordering process to ensure that the reordering operation can be completed under various conditions, avoid the unavailability of the reordering service due to abnormalities, and improve the robustness and fault tolerance of the system.

[0145] This disclosure provides a map search result reordering device, such as... Figure 2As shown, the device may include: a feature acquisition module 201, used to acquire a sequence of stores to be sorted and a set of candidate stores, wherein each store in the sequence of stores to be sorted has a store identifier, a geographical distance value, a grade attribute, and a relevance score; a distance calculation module 202, used to determine a scene scale benchmark value based on the geographical distance values ​​of the first target number of stores in the sequence of stores to be sorted, and to calculate the distance value of each store based on the grade attribute and the scene scale benchmark value; a store traversal extraction module 203, used to traverse the sequence of stores to be sorted, and to identify stores that meet preset extraction conditions as stores to be extracted based on the distance value of each store and the dynamic reference value maintained during the traversal process; a candidate list management module 204, used to generate a list of stores to be inserted based on the stores in the candidate store set that do not appear in the sequence of stores to be sorted and the stores to be extracted, and to remove the stores to be extracted from the sequence of stores to be sorted to obtain an anchor point sequence; and an anchor point insertion module 205, used to insert the stores to be inserted that meet preset insertion conditions in the list of stores to be inserted into the corresponding anchor point positions based on the anchor point distance of each anchor point store in the anchor point sequence to obtain a target store sequence.

[0146] In the store traversal extraction module 203, the preset extraction conditions include: the store belongs to the candidate store set or has a valid level attribute; the store's calculated distance value is less than the dynamic reference value; and the store's relevance score is greater than the preset threshold.

[0147] Specifically, the store traversal extraction module 203 is used to: when traversing the store sequence to be sorted, use the maximum comparison distance value recorded in the register as a dynamic reference value; if the current store meets the preset extraction conditions, the register is not updated; otherwise, the register is updated with the comparison distance value of the current store. The comparison distance value is the converted distance value when the current store belongs to the candidate store set or has a valid level attribute, otherwise the geographical location distance value is taken.

[0148] In the anchor point condition insertion module, the anchor point distance is determined by the following rules: if the anchor point store belongs to the candidate store set or has a valid level attribute, its anchor point distance is the converted distance value; otherwise, the geographical location distance value is used. The preset insertion conditions include: the converted distance value of the store to be inserted is less than the anchor point distance of the current anchor point store.

[0149] Specifically, the conversion distance calculation module 202 is used to: calculate the scene scale benchmark value once from the original data of the store sequence to be sorted before the start of this reordering, and keep it constant during the conversion distance calculation, store identification to be extracted, anchor sequence generation and anchor insertion.

[0150] The distance calculation module 202 is also used to: if the total number of stores in the store sequence to be sorted is less than the target number, then the actual number of stores is used to participate in the calculation of the scene scale benchmark value.

[0151] Specifically, the store traversal extraction module 203 is used to: construct a store identifier index set based on the candidate store set before the traversal begins; if the store's level attribute is a valid level value or its identifier falls into the index set, then the store is determined to belong to the candidate store set or have a valid level attribute.

[0152] In some embodiments, the device further includes: Candidate List Management Module 206 Figure 2 (Not shown in the image) is used to remove duplicates from the list of stores to be inserted by store identifier and set a status identifier for each store to be inserted; to sort the list of stores to be inserted in ascending order by the converted distance value, and the same store to be inserted can be inserted at most once in a single reordering; and to mark stores that cannot be inserted at the previous anchor point position as only allowed to be appended to the end.

[0153] In some embodiments, the device further includes: a budget control module 207 ( Figure 2 (not shown in the image) is used to set the cumulative displacement budget before performing anchor point insertion; the anchor point insertion module 205 is specifically used to: calculate and accumulate the backward displacement increment that the insertion will cause to the affected stores before each proposed insertion; if the accumulated value exceeds the remaining value of the cumulative displacement budget, the insertion is rejected.

[0154] In some embodiments, the device further includes: a constraint verification module 208 ( Figure 2 (Not shown in the image) is used to apply proximity-based and correlation-based gating constraints to anchor point insertion. The proximity-based constraint is: if the distance between the anchor point and the store is not greater than a preset threshold, then only stores whose distance is also not greater than the preset threshold are allowed to be inserted. The correlation-based gating constraint is: the correlation score of the store to be inserted must be greater than a preset threshold.

[0155] In some embodiments, the device further includes: a category management module 209 ( Figure 2 (Not shown in the image) is used to calculate the converted distance value of each store based on the preset parameters corresponding to its category and level when the parameter group is distinguished by category is enabled, and to set the upper limit of the number of stores that can be inserted for each category; when the number of stores inserted in a category reaches the upper limit of the number of stores that can be inserted, the remaining stores in that category will no longer participate in the insertion of the preceding anchor points, and can only be added to the end.

[0156] In some embodiments, the device further includes: a hysteresis control module 210 ( Figure 2(Not shown in the image) is used to apply hysteresis constraints to the retrieval determination of a store in an adjacent request. The hysteresis constraints are as follows: if a store was not retrieved in the previous request, it can be identified as a store to be retrieved only if its calculated distance value is less than the dynamic reference value minus the preset hysteresis band half-width; if a store has been retrieved in the previous request, it can be identified as a store to be retrieved only if its calculated distance value is less than the dynamic reference value plus the preset hysteresis band half-width.

[0157] In some embodiments, the device further includes: a tool packaging module 211 ( Figure 2 (not shown in the image), used to encapsulate the distance calculation, store traversal extraction, and anchor point insertion into independent callable tool modules; orchestration proxy module 212 ( Figure 2 (Not shown in the image), used to determine the calling order and parameter configuration of each module based on the request context, and output the tool calling sequence and parameter configuration information; the modification of the sorting sequence is executed by the tool module according to the tool calling sequence; security verification module 213 ( Figure 2 (Not shown in the image), used to perform security checks on the results of each tool execution before application. The checks include the reasonableness of the converted distance value, the cumulative displacement budget, the category quota, the close-range same-level constraints, and the correlation gating constraints; anomaly rollback module 214 ( Figure 2 (not shown in the image) is used to fall back to a deterministic rearrangement process without orchestration agents if the tool call times out, outputs an illegal value, the insertion position is out of bounds, or any constraint is violated.

[0158] The specific functions and examples of each module and submodule of the apparatus in this disclosure can be found in the relevant descriptions of the corresponding steps in the above method embodiments, and will not be repeated here.

[0159] The map search result reordering device in this embodiment can convert the store's level attribute into a distance metric comparable to its geographical location, thereby mitigating the opacity problem caused by the difference in the units of measurement of factors such as level and distance. This allows stores of different levels to participate in the ranking comparison under the same distance semantics. Furthermore, by identifying the stores to be extracted through dynamic reference values ​​maintained during the traversal process and inserting them based on the anchor point distance, the advance of priority stores adapts to the distance distribution of the current search scenario. Thus, while ensuring reasonable exposure for priority stores, it avoids priority stores at a distance from unconditionally crowding out ordinary stores at a distance, improving the rationality, scenario adaptability, and online processing efficiency of search result reordering in the distance dimension.

[0160] This disclosure provides a scenario illustration of a map search result reordering method, such as... Figure 3 As shown.

[0161] As previously described, the map search result reordering method provided in this disclosure is applied to an electronic device. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. This electronic device may be installed in or connected to an autonomous vehicle.

[0162] Specifically, the electronic device may perform the following operations: Obtain the unsorted store sequence and the candidate store set. Each store in the unsorted store sequence has a store identifier, geographic distance value, level attribute, and relevance score. Determine the scene scale benchmark value based on the geographic distance values ​​of the first target number of stores in the unsorted store sequence, and calculate the converted distance value of each store based on the level attribute and the scene scale benchmark value. Traverse the unsorted store sequence, and identify stores that meet the preset extraction conditions as stores to be extracted based on the converted distance value of each store and the dynamic reference value maintained during the traversal. Generate a list of stores to be inserted based on the stores in the candidate store set that do not appear in the unsorted store sequence and the stores to be extracted, and remove the stores to be extracted from the unsorted store sequence to obtain the anchor point sequence. Based on the anchor point distance of each anchor point store in the anchor point sequence, insert the stores to be inserted that meet the preset insertion conditions in the list of stores to be inserted into the corresponding anchor point positions to obtain the target store sequence.

[0163] The map server sends the sequence of stores to be sorted and the set of candidate stores to the electronic device. After the electronic device performs the above steps, it returns the target store sequence to the map server, which then returns the search results to the client based on the target store sequence.

[0164] It should be understood that Figure 3 The scene diagrams shown are merely illustrative and not restrictive; those skilled in the art can interpret them based on... Figure 3 Even with various obvious changes and / or substitutions to the examples, the resulting technical solutions still fall within the scope of this disclosure.

[0165] The acquisition, storage, and application of user personal information involved in the technical solution disclosed herein comply with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0166] According to embodiments of this disclosure, this disclosure also provides an electronic device, a readable storage medium, and a computer program product.

[0167] Figure 4A schematic block diagram of an example electronic device 400 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0168] like Figure 4 As shown, device 400 includes a computing unit 401, which can perform various appropriate actions and processes based on a computer program stored in read-only memory (ROM) 402 or a computer program loaded from storage unit 408 into random access memory (RAM) 403. RAM 403 may also store various programs and data required for the operation of device 400. The computing unit 401, ROM 402, and RAM 403 are interconnected via bus 404. Input / output (I / O) interface 405 is also connected to bus 404.

[0169] Multiple components in device 400 are connected to I / O interface 405, including: input unit 406, such as keyboard, mouse, etc.; output unit 407, such as various types of monitors, speakers, etc.; storage unit 408, such as disk, optical disk, etc.; and communication unit 409, such as network card, modem, wireless transceiver, etc. Communication unit 409 allows device 400 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0170] The computing unit 401 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 401 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any suitable processor, controller, microcontroller, etc. The computing unit 401 performs the various methods and processes described above, such as the map search result reordering method. For example, in some embodiments, the map search result reordering method can be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 408. In some embodiments, part or all of the computer program can be loaded and / or installed on device 400 via ROM 402 and / or communication unit 409. When the computer program is loaded into RAM 403 and executed by the computing unit 401, one or more steps of the map search result reordering method described above can be performed. Alternatively, in other embodiments, the computing unit 401 may be configured to perform a map search result reordering method by any other suitable means (e.g., by means of firmware).

[0171] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-chip (SoCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.

[0172] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0173] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory, read-only memory, erasable programmable read-only memory (EPROM), flash memory, optical fiber, compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0174] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a cathode ray tube (CRT) or liquid crystal display (LCD) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0175] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.

[0176] Computer systems can include clients and servers. Clients and servers are generally located far apart and typically interact via communication networks. Client-server relationships are created by computer programs running on the respective computers and having a client-server relationship with each other. Servers can be cloud servers, servers in distributed systems, or servers incorporating blockchain technology.

[0177] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this disclosure can be achieved, and this is not limited herein.

[0178] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the principles of this disclosure should be included within the scope of protection of this disclosure.

Claims

1. A method for reordering map search results, comprising: Obtain a sequence of stores to be sorted and a set of candidate stores. Each store in the sequence of stores to be sorted has a store identifier, a geographical distance value, a level attribute, and a relevance score. The scene scale benchmark value is determined based on the geographical distance values ​​of the first target number of stores in the unsorted store sequence, and the converted distance value of each store is calculated based on the level attribute of each store and the scene scale benchmark value. Traverse the sequence of stores to be sorted, and identify stores that meet the preset extraction conditions as stores to be extracted based on the converted distance value of each store and the dynamic reference value maintained during the traversal process. Based on the stores in the candidate store set that do not appear in the unsorted store sequence and the stores to be extracted, a list of stores to be inserted is generated, and the stores to be extracted are removed from the unsorted store sequence to obtain an anchor sequence. Based on the anchor point distance of each anchor point store in the anchor point sequence, the stores to be inserted in the list of stores to be inserted that meet the preset insertion conditions are inserted into the corresponding anchor point positions to obtain the target store sequence.

2. The method according to claim 1, wherein, The preset extraction conditions include: The store belongs to the candidate store set or has a valid rating attribute; Furthermore, the calculated distance value of the store is less than the dynamic reference value; Furthermore, the store's relevance score is greater than the preset threshold.

3. The method according to claim 2, further comprising: Before the traversal begins, a set of store identifier indexes is constructed based on the candidate store set; If a store's rating attribute is a valid rating value or its identifier falls into the index set, then the store is determined to belong to the candidate store set or have a valid rating attribute.

4. The method according to claim 1, wherein, The dynamic reference values ​​maintained during the traversal are: When traversing the sequence of stores to be sorted, the maximum comparison distance value among the traversed stores is recorded in a register; If the current store meets the preset extraction conditions, the register is not updated; otherwise, the register is updated with the comparison distance value of the current store; wherein, the comparison distance value is the converted distance value when the current store belongs to the candidate store set or has a valid level attribute, and the geographical location distance value is used otherwise.

5. The method according to claim 1, wherein, The rule for determining the anchor point distance is as follows: if the anchor point store belongs to the candidate store set or has a valid level attribute, then its anchor point distance is the converted distance value; otherwise, the geographical location distance value is used. The preset insertion conditions include: the converted distance value of the store to be inserted is less than the anchor point distance of the current anchor point store.

6. The method according to claim 1, wherein, The scene scale benchmark value is calculated once from the original data of the store sequence to be sorted before the start of this reordering, and remains constant during the calculation of the converted distance, the identification of the stores to be extracted, the generation of the anchor sequence, and the insertion of the anchor. If the total number of stores in the store sequence to be sorted is less than the target number, the actual number of stores will be used in the calculation.

7. The method according to claim 1, further comprising: The list of stores to be inserted is deduplicated by store identifier, and a status identifier is set for each store to be inserted. The list of stores to be inserted is sorted in ascending order by the calculated distance value. The same store to be inserted is inserted at most once in a single reordering. Mark stores that cannot be inserted at the preceding anchor point as only allowed to be appended to the end.

8. The method according to claim 1, further comprising: Set the cumulative displacement budget before performing anchor point insertion; Before each proposed insertion of a candidate store, calculate and accumulate the incremental backward displacement that the insertion will cause to the affected stores; If the accumulated value exceeds the remaining value of the accumulated displacement budget, the insertion is rejected.

9. The method according to claim 1, further comprising: Apply proximity-level constraints and correlation-gated constraints to anchor point insertion; The close proximity constraint is as follows: if the distance between the anchor point and the store is not greater than a preset threshold, then only stores whose distance is also not greater than the preset threshold are allowed to be inserted. The relevance gating constraint is that the relevance score of the store to be inserted must be greater than a preset threshold.

10. The method according to claim 1, further comprising: When parameter groups are enabled by category, the calculated distance value for each store is calculated based on the preset parameters corresponding to its category and level, and an upper limit for the number of stores that can be inserted is set for each category; Once the number of inserted stores in a certain category reaches the maximum number of insertable stores, the remaining stores in that category will no longer participate in the insertion of anchor points ahead, and will only be allowed to be added to the end.

11. The method according to claim 1, further comprising: In adjacent requests, apply hysteresis constraints to the store's extraction decision; The hysteresis constraint is as follows: if a store was not extracted in the previous request, it can be identified as a store to be extracted only if its calculated distance value is less than the dynamic reference value minus the preset hysteresis band half-width; if a store has been extracted in the previous request, it can be identified as a store to be extracted only if its calculated distance value is less than the dynamic reference value plus the preset hysteresis band half-width.

12. The method according to claim 1, further comprising: The distance calculation, store traversal extraction, and anchor point insertion are each encapsulated as independent callable tool modules. The orchestration agent determines the calling order and parameter configuration of each module based on the request context. The orchestration agent is used to output the tool calling sequence and parameter configuration information. Modification of the sorting sequence is performed by the tool module according to the tool calling sequence. Before applying the results of each tool execution, a security check is performed. The check includes the rationality of the converted distance value, the cumulative displacement budget, the category quota, the close-range same-level constraints, and the correlation gating constraints. If the tool call times out, outputs an illegal value, the insertion position is out of bounds, or any constraint is violated, the process falls back to a deterministic rearrangement process without enabling the orchestration agent.

13. A map search result reordering device, comprising: The feature acquisition module is used to acquire a sequence of stores to be sorted and a set of candidate stores. Each store in the sequence of stores to be sorted has a store identifier, a geographical distance value, a level attribute, and a relevance score. The distance calculation module is used to determine the scene scale benchmark value based on the geographical distance values ​​of the first target number of stores in the store sequence to be sorted, and to calculate the distance value of each store based on the level attribute of each store and the scene scale benchmark value. The store traversal and extraction module is used to traverse the sequence of stores to be sorted, and identify stores that meet the preset extraction conditions as stores to be extracted based on the converted distance value of each store and the dynamic reference value maintained during the traversal process. The candidate list management module is used to generate a list of stores to be inserted based on the stores in the candidate store set that do not appear in the unsorted store sequence and the stores to be extracted, and to remove the stores to be extracted from the unsorted store sequence to obtain the anchor sequence. An anchor insertion module is used to insert stores that meet preset insertion conditions from the list of stores to be inserted into the corresponding anchor positions based on the anchor distance of each anchor store in the anchor sequence, thereby obtaining the target store sequence.

14. An electronic device comprising: At least one processor; as well as A memory that is communicatively connected to at least one processor; wherein, The memory stores instructions that can be executed by at least one processor to enable the at least one processor to perform the method of any one of claims 1-12.

15. A non-transitory computer-readable storage medium storing computer instructions, wherein, Computer instructions are used to cause a computer to perform the method according to any one of claims 1-12.

16. A computer program product comprising a computer program stored on a storage medium, wherein the computer program, when executed by a processor, implements the method according to any one of claims 1-12.