Photovoltaic unmanned aerial vehicle cleaning path candidate generation method based on representative sampling

By generating photovoltaic drone cleaning paths through representative sampling, the problems of component order within the array, contaminated area coverage, and flight range control in existing technologies are solved, achieving efficient and low-cost photovoltaic drone cleaning path planning.

CN121995927APending Publication Date: 2026-05-08SUZHOU UNIV +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511825645.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-12-05
Publication Date
2026-05-08

AI Technical Summary

Technical Problem

Existing photovoltaic drone cleaning methods struggle to balance the order of components within the array, prioritize coverage of heavily soiled areas, and control flight range and operation time, resulting in extremely high computational costs and making them impractical for engineering applications.

Method used

A representative sampling-based approach is adopted to design the photovoltaic drone cleaning path through a small-sample representative combination sampling method. A small number of balanced and low-correlation candidate paths are generated by focusing on the selection of the starting point, the intra-cluster construction strategy, the weight-distance trade-off coefficient, and the cross-level connection rule. Combined with the optimization of the intra-cluster component order and direction, high-quality candidate paths are generated.

Benefits of technology

The generated candidate paths satisfy the array priority constraint, take into account both the rapid coverage of dirt and filth weights and the control of flight distance/time costs, significantly reduce computational costs, and are suitable for UAV systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121995927A_ABST
    Figure CN121995927A_ABST
Patent Text Reader

Abstract

The invention relates to a photovoltaic unmanned aerial vehicle cleaning path candidate generation method based on representative sampling, and the method comprises the steps: designing a small number of balanced and low-correlation factor combinations around key factors such as starting point selection, an intra-cluster construction strategy, a weight-distance tradeoff coefficient and a cross-grade connection rule through a small-sample representative combination sampling method, and carrying out the selection of the cleaning path candidate of a photovoltaic unmanned aerial vehicle. Quickly generating a small batch of array cluster access sequence candidates with strong representativeness; under each cluster sequence, a component-level path is generated according to a set intra-cluster component sequence and direction optimization strategy; and finally, combining the clusters with the paths in the clusters to generate all candidate paths. According to the method, dirt weight rapid coverage and flight path / time cost control are taken into consideration, and high-quality candidate paths are provided for subsequent global path scoring and screening.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of unmanned aerial vehicle (UAV) automated operation and path planning technology, specifically to a method for generating candidate paths for array priority cleaning operations in photovoltaic power plants. Background Technology

[0002] Existing photovoltaic drone cleaning methods mostly employ a traversal approach, which struggles to address the following constraints: ① the engineering constraint of cleaning the entire array before moving to the next module (cleaning all modules within an array before moving on to the next); ② prioritizing highly contaminated areas for faster returns; and ③ controlling flight range and operation time. Exhaustively searching for possible paths across all array clusters would involve factorial-scale computations, resulting in extremely high costs and making it impractical in engineering. Therefore, a drone cleaning candidate path generation method is urgently needed that covers a large combination space with a limited number of samples and matches the triple constraints. Summary of the Invention

[0003] The purpose of this invention is to overcome the problems existing in the prior art and provide a method for generating candidate cleaning paths for photovoltaic UAVs based on representative sampling. This method employs a small-sample representative combination sampling approach: focusing on key factors such as "starting point selection, intra-cluster construction strategy, weight-distance trade-off coefficient, and cross-level connection rules," it designs a small number of balanced and low-correlation factor combinations to quickly generate a small batch of highly representative "array cluster access order" candidates. Under each cluster order, a component-level path is generated according to a predetermined intra-cluster component order and direction optimization strategy. Finally, these clusters and intra-cluster paths are combined to generate all candidate paths, balancing rapid coverage of contamination weights with control of flight distance / time costs, providing high-quality candidate paths for subsequent global path scoring and screening.

[0004] To achieve the above-mentioned technical objectives and effects, the present invention is implemented through the following technical solution:

[0005] A method for generating candidate cleaning paths for photovoltaic drones based on representative sampling, the method comprising the following steps:

[0006] Step S1: Object Detection and Component Set Construction

[0007] Perform component target detection on the input orthophoto image to obtain the set of component bounding rectangles:

[0008]

[0009] Step S2: Dirt Ratio and Array Cluster Construction

[0010] Obtain the dirt ratio r within the component. k The components are aggregated into array clusters according to the array polygons; where:

[0011] The smallest particle unit corresponding to a single photovoltaic panel or the detection output is denoted as the kth component, and the dirt ratio r inside the component is obtained by detection. k ∈[0,1], the component is accompanied by a non-negative weight w module This is used to reflect the importance of the component to the cleaning decision;

[0012] Generation of array cluster boundary Cj:

[0013] Use YOLOv8 to detect all component boxes and write all component boxes onto a binary mask M on the entire image;

[0014] A single expansion of M with a rectangular core K is used to connect adjacent / nearest neighbor components;

[0015] The outer contour of the dilation result is extracted, and the array cluster boundary Cj is obtained by the polygon approximation method RDP.

[0016] Each cluster contains several photovoltaic modules and their weights:

[0017]

[0018] w module =Tier(r) k )∈{1,2,3};

[0019] Step S3: Generation of inter-cluster paths for candidate arrays

[0020] First, determine the candidate access order between clusters, and then arrange the component order and left and right directions within each cluster;

[0021] Step S4: Define the intra-cluster starting point

[0022] The starting point for the first array cluster: select the percentage of dirt r within this cluster. k The highest-level component serves as the starting point;

[0023] The starting point of the subsequent array cluster components: Let P be the exit component of the previous cluster. out Within the current cluster, the starting point is selected according to the following priority:

[0024] In the component set with weight = 3, select P. out The closest to Euclidean distance;

[0025] If there is no weight = 3, then select in the same way if there is no weight = 2; if there is still no weight = 1, then select in the same way.

[0026] If any of the above points are in the same order, all of them will be included in the candidate path.

[0027] Step S5: Intra-cluster component access order and endpoint definition

[0028] For cluster c iThe k-th component box Take its left midpoint / right midpoint as the cleaning endpoint:

[0029]

[0030] Lateral crossing cleaning time t of a single component k Defined as:

[0031] In the formula, v clean Component cleaning speed, unit: pixels / second, t over Fixed preparation / triggering overhead time for each component, in seconds;

[0032] Step S6: Dynamic programming for intra-cluster orientation selection

[0033] Let the access order be p1, p2, ..., p n Each component board has two orientations:

[0034] 1) d = 0, clean L from left to right k →R k Enter point S k (0)=L k ;

[0035] 2) d = 1 Clean R from right to left k →L k Enter point S k (1) = R k ;

[0036] Let the cross-plate displacement velocity v move Define dp:

[0037] dp[k][d] = the minimum cumulative time to complete the cleaning of the k-th component with the cleaning direction of the k-th component being d;

[0038] When performing the recursion, consider the displacement time from the end point of the previous block to the start point of the current block:

[0039] In the formula, ||·|| is the Euclidean distance. The initial value of dp considers the distance between the take-off point and the starting point of the first cleaning block. Backtracking is used to obtain the optimal direction sequence of the entire cluster and the endpoint sequence of entering / leaving on the k-th block.

[0040] Furthermore, in step S1, C1 is set to 5%, C2 to 15%, and C3 to 30%, for cases where the dirt ratio is below the threshold r. k Components in C1 are skipped and will not participate in cleaning and planning.

[0041] Furthermore, in step S3, the starting point is limited to the highest weight level, i.e., W. clusterThe largest cluster is generated around four decision option factors F1–F4, with four value levels set for each factor. Sixteen representative combinations are then constructed, and these 16 representative combinations statistically satisfy the following:

[0042] 1) The frequency of occurrence of each level is approximately balanced;

[0043] 2) The level pairing relationship between any two factors is fully covered, so that the estimation bias is minimized under the premise of a fixed sample size;

[0044] This generates a batch of inter-cluster sequential candidates, and then each candidate is further refined and fine-tuned within the cluster.

[0045] Furthermore, in step S3, the four decision option factors F1–F4

[0046] The selectable values ​​are as follows:

[0047] F1 starting line candidates:

[0048] 1) maxW_T3: Select seeds from high to low based on the dirtiness weight of the array cluster;

[0049] 2) rand_T3: Randomly sampled from Tier-3, i.e., the heavily soiled portion;

[0050] 3) far_T3: Prioritizes the outermost value relative to the global geometric center;

[0051] 4) spread_T3: Uniform sampling by azimuth angle to enhance coverage;

[0052] F2 cluster intra-cluster construction method:

[0053] 1) NN_2opt: After nearest neighbor growth, 2-opt fine-tuning is performed, where:

[0054] Nearest Neighbor Neighbors (NN): Starting from a starting point, each time the nearest next point is selected to quickly construct an initial path with a shorter total distance.

[0055] 2-opt: Select two nodes from the current solution, swap the path sequences of these two nodes, compare the total distance of the new path with the total distance of the original path, if the total distance of the new path is less than the total distance of the original path, update the current solution, and repeat the above steps until no better swap can be found, or the preset number of iterations is reached;

[0056] 2) GRASP-8: In each step, one high-scoring candidate is randomly selected for access, with the score calculated as weight - λ. score(j) = W cluster,j -λ·d, then fine-tune with 2-opt;

[0057] 3) GRASP-12: Same as above, but the candidate table size is 12;

[0058] 4) ValueTime: Grow by value per unit distance, i.e., weight / distance. Select the point with the highest value per unit distance for the next point, sort in order, and then fine-tune with 2-opt.

[0059] F3 distance tradeoff coefficient λ:

[0060] 1) The benchmark for the tradeoff coefficients adopts an adaptive value: In the formula, w0 is the median of the cluster weights, and d0 is the median of the common neighboring cluster distances;

[0061] 2) The tradeoff coefficient λ is taken as follows

[0062] F4 gear shifting strategy:

[0063] 1) Closest: Select the array cluster that is closest to the current last cluster as the starting point for the next step;

[0064] 2) hub: Select the array cluster closest to the global geometric center as the starting point for the next level;

[0065] 3) Closest;

[0066] 4) hub.

[0067] Furthermore, in step S3:

[0068] The outermost priority starting point candidate methods in far_T3 are as follows:

[0069] 1) First, place the centroids of all array clusters in the same plane coordinate system;

[0070] 2) Calculate the global geometric center of these points:

[0071] 3) Calculate the Euclidean distance from the centroid Pi of each cluster to C.

[0072] 4) Select several points with large distances as candidates for the outermost starting point;

[0073] The specific methods in spread_T3 are as follows:

[0074] 1) Taking the global geometric center C as the origin, divide the plane into several equal-angled sector regions, with each region serving as a bucket. The angle is chosen to be 30°. This selection of the starting point makes it less likely for the cluster order to get trapped in local optima.

[0075] 2) Retain one representative in each bucket, that is, take the array cluster that is the furthest away from the centroid C in the bucket;

[0076] In d0, the list of cluster centroids is P = [(x1, y1), ..., (x... N y N )]:

[0077] 1) For each i: calculate That is, traverse all other clusters, and j ≠ i;

[0078] 2) Collect all d i ;

[0079] 3) Take the median as d0.

[0080] Furthermore, in step S3, the construction principle of the 16 representative combinations is to generate 16 schemes based on the sample selection criteria of balanced coverage and low correlation, without exhausting all combinations. The specific rules are as follows:

[0081] 1) Ensure that the four values ​​of each decision option factor F1-F4 appear approximately equally in the overall sample;

[0082] 2) Ensure that the pairwise decisions and value combinations are evenly covered;

[0083] 3) Control the redundancy and correlation between schemes to improve information gain / sample efficiency;

[0084] 4) This process is regarded as a hierarchical sampling and homogenization screening of the factor space, so as to achieve a representative characterization of a large space with a small number of samples.

[0085] Furthermore, in step S5, the initial order within the cluster is selected from one of the following three heuristics:

[0086] 1) Press w module Decreasing;

[0087] 2) Nearest neighbor + 2-opt;

[0088] 3) greedy_weighted: maximizes the greedy algorithm w-β·d, where w is the weight of the component, d is the straight-line distance from the current point to the centroid of the component, and β is the distance penalty coefficient. The larger β is, the more inclined to select the closer component first, and the smaller β is, the more inclined to select the dirtier component first.

[0089] The beneficial effects of this invention are:

[0090] 1. Array-first structured candidates: The generated candidates naturally satisfy the constraint of "array first, component later", which meets the actual needs of engineering.

[0091] 2. Balancing dirt and cost: By balancing the factors of "weight / distance", the candidate path takes into account both the dual constraints of prioritizing the cleaning of heavily polluted clusters and controlling the mileage.

[0092] 3. Very small sample size and strong coverage: Using very few combinations to statistically balance the levels of each factor and the pairwise pairing relationships, significantly reducing the sample size while maintaining representativeness, making it highly practical.

[0093] 4. Implementation-friendly: This method only relies on readily available quantities such as cluster centroids and contamination weights, has stable computational complexity, and is easy to integrate into UAV host computer systems.

[0094] 5. Determinism of intra-cluster starting point and reproducible cross-cluster connection: The rules for determining the intra-cluster starting point are clearly given—the first cluster selects the "component with the highest proportion of contamination in the cluster" as the starting point; when crossing clusters, priority is given to selecting the component with the closest Euclidean distance to the exit component of the previous cluster from the component set with weight = 3 (if none is found, it is downgraded to weight = 2 / 1), and the parallel cases are retained as candidates, so that the intra-cluster access order is deterministic and reproducible, significantly reducing the randomness and repeated trial and error costs of cross-cluster entry.

[0095] 6. Optimal guarantee of dynamic programming for direction selection: Given the access order within the cluster, a two-state dynamic programming (L→R / R→L) is used to consider the cross-plate displacement time of "exit of the previous plate → entrance of the next plate". The optimal direction sequence of the entire cluster and the endpoint sequence of entering / leaving on the k-th plate are obtained by backtracking. Attached Figure Description

[0096] Figure 1 This is a schematic diagram of the outer rectangular frame of the component of the present invention;

[0097] Figure 2 This is a schematic diagram of the components of the present invention being aggregated into an array cluster;

[0098] Figure 3 This is a schematic diagram of the components and array clusters of the present invention;

[0099] Figure 4 This is a schematic diagram illustrating the calculation of the percentage of contamination in photovoltaic modules / arrays according to the present invention;

[0100] Figure 5 This is a thermal diagram of contamination at the photovoltaic array level of this invention;

[0101] Figure 6 This is a schematic diagram of the invention, showing the bins divided by azimuth angle;

[0102] Figure 7 The present invention generates 16 sets of scheme tables based on the sample selection criteria of balanced coverage and low correlation.

[0103] Figure 8 This is a schematic diagram of the component cleaning direction of the present invention;

[0104] Figure 9 This diagram illustrates two cases, a and b, where the component cleaning direction of the present invention is d=0.

[0105] Figure 10 This diagram illustrates two cases, a and b, where the component cleaning direction of the present invention is d=1. Detailed Implementation

[0106] The present invention will now be described in detail with reference to the accompanying drawings and embodiments.

[0107] A method for generating candidate cleaning paths for photovoltaic drones based on representative sampling, the method comprising the following steps:

[0108] Step S1: Object Detection and Component Set Construction

[0109] Perform component target detection on the input orthophoto image, such as... Figure 1 As shown, the set of bounding rectangles of the component is obtained:

[0110]

[0111] Step S2: Dirt Ratio and Array Cluster Construction

[0112] Obtain the dirt ratio r within the component. k The components are aggregated into clusters based on their array polygons; where:

[0113] The smallest particle unit corresponding to a single photovoltaic panel or the detection output is denoted as the kth component, and the dirt ratio r inside the component is obtained by detection. k ∈[0,1], the component is accompanied by a non-negative weight w module This is used to reflect the importance of the component to the cleaning decision;

[0114] Generation of array cluster boundary Cj:

[0115] Use YOLOv8 to detect all component boxes and write all component boxes onto a binary mask M on the entire image;

[0116] A single expansion of M with a rectangular core K is used to connect adjacent / near neighbor components (by "sticking" the component blocks that are close to each other together, the internal array will be connected into a whole block, and different arrays will not be mistakenly connected due to the large spacing).

[0117] Extract the outer contour of the dilation result, such as Figure 2 and Figure 3 As shown, the array cluster boundary Cj is obtained using the polygon approximation method RDP;

[0118] Each cluster contains several photovoltaic modules and their weights (the weight generation logic for array contamination is the same as that for modules):

[0119]

[0120] w module =Tier(r) k )∈{1,2,3};

[0121] Step S3: Generation of inter-cluster paths for candidate arrays

[0122] If there are N array clusters (e.g., N=56), the number of complete permutations and combinations of cleaning paths is N! (e.g., 56!). Directly exhaustively solving this problem is extremely costly. Therefore, we first determine the candidate access order between clusters, and then arrange the component order and left and right directions within each cluster. In this way, a large space can be covered by a small number of structured factor combination samples, and several high-quality candidate paths can be generated quickly.

[0123] Step S4: Define the intra-cluster starting point

[0124] To ensure the reproducibility and stability of the access order within a cluster, the first component (starting point) of each array cluster is first determined:

[0125] The component starting point of the first array cluster (the component starting point of the first cluster in the cluster sequence): Select the percentage of dirt r within this cluster. k The highest-level component serves as the starting point;

[0126] The starting point of components in subsequent array clusters (cross-cluster connections): Let P be the exit component of the previous cluster. out Within the current cluster, the starting point is selected according to the following priority:

[0127] In the component set with weight = 3, select P. out The closest to Euclidean distance;

[0128] If there is no weight = 3, then select in the same way if there is no weight = 2; if there is still no weight = 1, then select in the same way.

[0129] If any of the above points are in the same order, all of them will be included in the candidate path.

[0130] Step S5: Intra-cluster component access order and endpoint definition

[0131] For cluster c i The k-th component box Take its left midpoint / right midpoint as the cleaning endpoint:

[0132]

[0133] Lateral crossing cleaning time t of a single component k Defined as:

[0134] In the formula, v clean Component cleaning speed, unit: pixels / second, t overFixed preparation / triggering overhead time for each component, in seconds;

[0135] Step S6: Dynamic programming for intra-cluster orientation selection

[0136] Let the access order be p1, p2, ..., p n ,like Figure 8 As shown, each component board has two orientations:

[0137] 1) d = 0, clean L from left to right k →R k Enter point S k (0)=L k ;

[0138] 2) d = 1 Clean R from right to left k →L k Enter point S k (1) = R k ;

[0139] Let the cross-plate displacement velocity v move Define dp:

[0140] dp[k][d] = the minimum cumulative time to complete the cleaning of the k-th component with the cleaning direction of the k-th component being d;

[0141] When performing the recursion, consider the displacement time from the end point of the previous block to the start point of the current block:

[0142] In the formula, ||·|| is the Euclidean distance, such as Figure 9 and Figure 10 As shown, the initial value of dp considers the distance between the take-off point and the starting point of the first cleaning block, and backtracks to obtain the optimal direction sequence of the entire cluster and the endpoint sequence of entering / leaving on the k-th block.

[0143] In step S1, C1 is set to 5%, C2 to 15%, and C3 to 30%, for cases where the dirt ratio is below the threshold r. k Components in C1 are skipped and will not participate in cleaning and planning.

[0144] In step S3, the starting point is limited to the highest weight level, i.e., W. cluster The largest cluster is generated around four decision option factors F1–F4, with four value levels set for each factor. Sixteen representative combinations are then constructed, and these 16 representative combinations statistically satisfy the following:

[0145] 1) The frequency of occurrence of each level is approximately balanced;

[0146] 2) The level pairing relationship between any two factors is fully covered, so that the estimation bias is minimized under the premise of a fixed sample size;

[0147] This generates a batch of inter-cluster sequential candidates, and then each candidate is further refined and fine-tuned within the cluster.

[0148] In step S3, the four decision option factors F1–F4 and their selectable values ​​are as follows:

[0149] F1 starting line candidates:

[0150] 1) maxW_T3: Select seeds from high to low based on the array cluster dirtiness weight, such as... Figure 4 As shown, the calculated cluster contamination ratio will be displayed in the upper right corner of each array, and seeds will be selected from high to low contamination weight.

[0151] 2) rand_T3: Randomly sampled from Tier-3, i.e., the heavily soiled portion, such as... Figure 5 As shown, Tier-3 is the heavily soiled section;

[0152] 3) far_T3: Priority is given to the outermost point relative to the global geometric center (the following point sets are all Tier-3 points);

[0153] 4) spread_T3: Uniform sampling by azimuth angle (sampling at fixed angle intervals) to enhance coverage;

[0154] F2 cluster intra-cluster construction method:

[0155] 1) NN_2opt: After nearest neighbor growth, 2-opt fine-tuning is performed, where:

[0156] Nearest Neighbor Neighbors (NN): Starting from a starting point, each time the nearest next point is selected to quickly construct an initial path with a shorter total distance.

[0157] 2-opt: Select two nodes from the current solution, swap the path sequences of these two nodes, compare the total distance of the new path with the total distance of the original path, if the total distance of the new path is less than the total distance of the original path, update the current solution, and repeat the above steps until no better swap can be found, or the preset number of iterations is reached;

[0158] 2) GRASP-8: In each step, one high-scoring candidate is randomly selected for access, with the score calculated as weight - λ. score(j) = W cluster,j -λ·d, which is the value of the next station - distance penalty, then fine-tuned by 2-opt;

[0159] 3) GRASP-12: Same as above, but the candidate table size is 12;

[0160] 4) ValueTime: Grow by value per unit distance, i.e., weight / distance. Select the point with the highest value per unit distance for the next point, sort in order, and then fine-tune with 2-opt.

[0161] The F3 distance tradeoff coefficient λ is used to score "weight - λ·distance". The smaller λ is, the greater the weight; the larger λ is, the more reluctant to travel.

[0162] 1) The benchmark for the tradeoff coefficients adopts an adaptive value: In the formula, w0 is the median of the cluster weights, and d0 is the median of the common neighboring cluster distances;

[0163] 2) The tradeoff coefficient λ is taken as follows

[0164] F4 Gear Shifting Strategy (Selection method when moving from the last cluster of the previous gear to the starting cluster of the next gear):

[0165] 1) Closest: Select the array cluster that is closest to the current last cluster as the starting point for the next step;

[0166] 2) hub: Select the array cluster closest to the global geometric center as the starting point for the next level;

[0167] 3) `closest(repeated value, balances the strength of L16 column);`

[0168] 4) hub (same as above).

[0169] In step S3:

[0170] The outermost priority starting point candidate methods in far_T3 are as follows:

[0171] 1) First, place the centroids of all array clusters in the same plane coordinate system;

[0172] 2) Calculate the global geometric center of these points:

[0173] 3) Calculate the Euclidean distance from the centroid Pi of each cluster to C.

[0174] 4) Select several points with large distances (e.g., the top 25%) as candidates for the outermost priority starting point;

[0175] The specific methods in spread_T3 are as follows:

[0176] 1) such as Figure 6 As shown, with the global geometric center C as the origin, the plane is divided into several equal-angled sector regions, each region is used as a bucket, and the angle is chosen to be 30°. This selection of the starting point makes it less likely for the cluster order to get trapped in local optima.

[0177] 2) Retain one representative in each bucket, that is, take the array cluster that is the furthest away from the centroid C in the bucket;

[0178] In d0, the list of cluster centroids is P = [(x1, y1), ..., (x... N y N )]:

[0179] 1) For each i: calculate That is, traverse all other clusters, and j ≠ i;

[0180] 2) Collect all d i ;

[0181] 3) Take the median as d0.

[0182] In step S3, the construction principle of the 16 representative combinations is to generate 16 schemes based on the criteria of balanced coverage and low correlation, without exhausting all combinations. The specific rules are as follows:

[0183] 1) Ensure that the four values ​​of each decision option factor F1-F4 appear approximately equally in the overall sample;

[0184] 2) Ensure that the pairwise decisions and value combinations are evenly covered;

[0185] 3) Control the redundancy and correlation between schemes to improve information gain / sample efficiency;

[0186] 4) This process is regarded as a hierarchical sampling and homogenization screening of the factor space, so as to achieve a representative characterization of a large space with a small number of samples;

[0187] Specifically, as follows Figure 7 As shown.

[0188] In step S5, the initial order within the cluster is selected from one of the following three heuristics:

[0189] 1) Press w module Decreasing;

[0190] 2) Nearest neighbor + 2-opt;

[0191] 3) greedy_weighted: maximizes the greedy algorithm w-β·d, where w is the weight of the component (e.g., obtained by classifying it as dirty 0 / 1 / 2 / 3), d is the straight-line distance from the current point to the centroid of the component, and β is the distance penalty coefficient. The larger β is, the more inclined to select the closer component first; the smaller β is, the more inclined to select the dirtier component first.

[0192] The initial order only determines the access order of the components; the left and right directions of each board are further optimized by dp in step S6.

[0193] The above description is merely a preferred embodiment of the present invention and is not intended to limit the invention. Various modifications and variations can be made to the present invention by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A method for generating candidate cleaning paths for photovoltaic drones based on representative sampling, characterized in that, The method includes the following steps: Step S1: Object Detection and Component Set Construction Perform component target detection on the input orthophoto image to obtain the set of component bounding rectangles: Step S2: Dirt Ratio and Array Cluster Construction Obtain the dirt ratio r within the component. k The components are aggregated into array clusters according to the array polygons; where: The smallest particle unit corresponding to a single photovoltaic panel or the detection output is denoted as the kth component, and the dirt ratio r inside the component is obtained by detection. k ∈[0,1], the component is accompanied by a non-negative weight W. module This is used to reflect the importance of the component to the cleaning decision; Generation of array cluster boundary Cj: Use YOLOv8 to detect all component boxes and write all component boxes onto a binary mask M on the entire image; A single expansion of M with a rectangular core K is used to connect adjacent / nearest neighbor components; The outer contour of the dilation result is extracted, and the array cluster boundary Cj is obtained by the polygon approximation method RDP. Each cluster contains several photovoltaic modules and their weights: w module =Tier(r k )∈{1,2,3}; Step S3: Generation of inter-cluster paths for candidate arrays First, determine the candidate access order between clusters, and then arrange the component order and left and right directions within each cluster; Step S4: Define the intra-cluster starting point The starting point for the first array cluster: select the percentage of dirt r within this cluster. k The highest-level component serves as the starting point; The starting point of the subsequent array cluster components: Let P be the exit component of the previous cluster. out Within the current cluster, the starting point is selected according to the following priority: In the component set with weight = 3, select P. out The closest to Euclidean distance; If there is no weight = 3, then select in the same way if there is no weight = 2; if there is still no weight = 1, then select in the same way. If any of the above points are in the same order, all of them will be included in the candidate path. Step S5: Intra-cluster component access order and endpoint definition For cluster c i The k-th component box Take its left midpoint / right midpoint as the cleaning endpoint: Lateral crossing cleaning time t of a single component k Defined as: In the formula, v clean Component cleaning speed, unit: pixels / second, t over Fixed preparation / triggering overhead time for each component, in seconds; Step S6: Dynamic programming for intra-cluster orientation selection Let the access order be p1, p2, ..., p n Each component board has two orientations: 1) d = 0, clean L from left to right k →R k Enter point S k (0)=L k ; 2) d = 1 Clean R from right to left k →L k Enter point S k (1) = R k ; Let the cross-plate displacement velocity v move Define dp: dp[k][d] = the minimum cumulative time to complete the cleaning of the k-th component with the cleaning direction of the k-th component being d; When performing the recursion, consider the displacement time from the end point of the previous block to the start point of the current block: In the formula, ||·|| is the Euclidean distance. The initial value of dp considers the distance between the take-off point and the starting point of the first cleaning block. Backtracking is used to obtain the optimal direction sequence of the entire cluster and the endpoint sequence of entering / leaving on the k-th block.

2. The photovoltaic UAV cleaning path candidate generation method based on representative sampling according to claim 1, characterized in that, In step S2, C1 is set to 5%, C2 to 15%, and C3 to 30%, for cases where the dirt ratio is below the threshold r. k Components in C1 are skipped and will not participate in cleaning and planning.

3. The photovoltaic UAV cleaning path candidate generation method based on representative sampling according to claim 1, characterized in that, In step S3, the starting point is limited to the highest weight level, i.e., W. cluster The largest cluster is generated around four decision option factors F1–F4, with four value levels set for each factor. Sixteen representative combinations are then constructed, and these 16 representative combinations statistically satisfy the following: 1) The frequency of occurrence of each level is approximately balanced; 2) The level pairing relationship between any two factors is fully covered, so that the estimation bias is minimized under the premise of a fixed sample size; This generates a batch of inter-cluster sequential candidates, and then each candidate is further refined and fine-tuned within the cluster.

4. The photovoltaic UAV cleaning path candidate generation method based on representative sampling according to claim 3, characterized in that, In step S3, the four decision option factors F1–F4 and their selectable values ​​are as follows: F1 starting line candidates: 1) maxW_T3: Select seeds from high to low based on the dirtiness weight of the array cluster; 2) rand_T3: Randomly sampled from Tier-3, i.e., the heavily soiled portion; 3) far_T3: Prioritizes the outermost value relative to the global geometric center; 4) spread_T3: Uniform sampling by azimuth angle to enhance coverage; F2 cluster intra-cluster construction method: 1) NN_2opt: After nearest neighbor growth, 2-opt fine-tuning is performed, where: Nearest Neighbor Neighbors (NN): Starting from a starting point, each time the nearest next point is selected to quickly construct an initial path with a shorter total distance. 2-opt: Select two nodes from the current solution, swap the path sequences of these two nodes, compare the total distance of the new path with the total distance of the original path, if the total distance of the new path is less than the total distance of the original path, update the current solution, and repeat the above steps until no better swap can be found, or the preset number of iterations is reached; 2) GRASP-8: In each step, one high-scoring candidate is randomly selected for access, with the score calculated as weight - λ. sxore(j)=W cluster,j -λ·d is then fine-tuned with 2-opt; 3) GRASP-12: Same as above, but the candidate table size is 12; 4) ValueTime: Grow by value per unit distance, i.e., weight / distance. Select the point with the highest value per unit distance for the next point, sort in order, and then fine-tune with 2-opt. F3 distance tradeoff coefficient λ: 1) The benchmark for the tradeoff coefficients adopts an adaptive value: In the formula, w0 is the median of the cluster weights, and d0 is the median of the common neighboring cluster distances; 2) The tradeoff coefficient λ is taken as follows F4 gear shifting strategy: 1) Closest: Select the array cluster that is closest to the current last cluster as the starting point for the next step; 2) hub: Select the array cluster closest to the global geometric center as the starting point for the next level; 3) Closest; 4) hub.

5. The photovoltaic UAV cleaning path candidate generation method based on representative sampling according to claim 4, characterized in that, In step S3: The outermost priority starting point candidate methods in far_T3 are as follows: 1) First, place the centroids of all array clusters in the same plane coordinate system; 2) Calculate the global geometric center of these points: 3) Calculate the Euclidean distance from the centroid Pi of each cluster to C. 4) Select several points with large distances as candidates for the outermost starting point; The specific methods in spread_T3 are as follows: 1) Taking the global geometric center C as the origin, divide the plane into several equal-angled sector regions, with each region serving as a bucket. The angle is chosen to be 30°. This selection of the starting point makes it less likely for the cluster order to get trapped in local optima. 2) Retain one representative in each bucket, that is, take the array cluster that is the furthest away from the centroid C in the bucket; In d0, the list of cluster centroids is P = [(x1,y1),...,(x... N ,y N )]: 1) For each i: calculate That is, traverse all other clusters, and j ≠ i; 2) Collect all d i ; 3) Take the median as d0.

6. The photovoltaic UAV cleaning path candidate generation method based on representative sampling according to claim 5, characterized in that, In step S3, the construction principle of the 16 representative combinations is to generate 16 schemes based on the criteria of balanced coverage and low correlation, without exhausting all combinations. The specific rules are as follows: 1) Ensure that the four values ​​of each decision option factor F1-F4 appear approximately equally in the overall sample; 2) Ensure that the pairwise decisions and value combinations are evenly covered; 3) Control the redundancy and correlation between schemes to improve information gain / sample efficiency; 4) This process is regarded as a hierarchical sampling and homogenization screening of the factor space, so as to achieve a representative characterization of a large space with a small number of samples.

7. The photovoltaic UAV cleaning path candidate generation method based on representative sampling according to claim 6, characterized in that, In step S5, the initial order within the cluster is selected from one of the following three heuristics: 1) Press w module Decreasing; 2) Nearest neighbor + 2-opt; 3) greedy_weighted: maximizes the greedy algorithm w-β·d, where w is the weight of the component, d is the straight-line distance from the current point to the centroid of the component, and β is the distance penalty coefficient. The larger β is, the more inclined to select the closer component first, and the smaller β is, the more inclined to select the dirtier component first.