Fishing boat docking pre-estimation method based on route historical information and navigation management system
By analyzing the route historical information of fishing boats, establishing the relationship between fishing and unloading time of fishing boats in different fishing grounds, the problems of improper planning and waste of resources in fishing boat management are solved, and efficient management of fishing ports is achieved.
Patent Information
- Application Number
- CN202510857007.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-25
- Publication Date
- 2025-07-29
- Estimated Expiration
- 2045-06-25
AI Technical Summary
In the existing technology, fishing boat management relies on manual experience and simple GPS positioning, and lacks in-depth analysis of historical data, resulting in fishing boats often failing to plan, waste resources and inefficient management when docking.
By analyzing the route history information of fishing boats, obtaining the fishing time and fishing catch unloading time of fishing boats in different fishing grounds, establishing a relationship, estimating the return to port and unloading time of fishing boats, and providing a fishing boat docking estimate method and navigation management system based on route history information.
It improves the management efficiency of fishing ports, can accurately estimate the port docking operation time of fishing boats, and helps fishing ports better arrange and manage the docking and unloading of multiple fishing boats.
Smart Images

Figure CN120387653A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of port management, and particularly relates to a fishing boat berthing prediction method and a navigation management system based on route historical information. Background Art
[0002] With the increasing prosperity of global marine fishery catches, it is difficult to effectively manage the berthing of fishing boats. Traditional fishing boat management relies on manual experience and simple GPS positioning, lacking in-depth analysis and utilization of historical data. This leads to problems such as poor planning, resource waste, and low management efficiency when fishing boats berth. Summary of the Invention
[0003] The purpose of the present invention is to provide a fishing boat berthing prediction method and a navigation management system based on route historical information. By analyzing the route historical information of fishing boats berthed in fishing ports, it can accurately predict the port berthing operation time of fishing boats, improving the management efficiency of fishing ports.
[0004] To solve the above technical problems, the present invention is realized through the following technical solutions: The present invention provides a fishing boat berthing prediction method based on route historical information, including: Obtaining the route historical information of incoming fishing boats to obtain the fishing duration of incoming fishing boats in different fishing grounds; Obtaining the return port berthing duration of incoming fishing boats and the unloading duration of different types of catches; Based on the fishing duration of incoming fishing boats in different fishing grounds, as well as the return port berthing duration and the estimated unloading duration of different types of catches, obtaining the correlation between the fishing duration of fishing boats in different fishing grounds and the estimated return port berthing duration and the estimated unloading duration of different types of catches; Continuously obtaining the ship position information of reported fishing boats to be berthed to obtain the route historical information and the fishing duration of reported fishing boats to be berthed in different fishing grounds; Based on the fishing duration of reported fishing boats to be berthed in different fishing grounds and the correlation between the fishing duration of fishing boats in different fishing grounds and the estimated return port berthing duration and the estimated unloading duration of different types of catches, obtaining the estimated return port berthing duration and the estimated unloading duration of different types of catches of reported fishing boats to be berthed.
[0005] The present invention also discloses a fishing boat berthing prediction method based on route historical information, including: Receiving the estimated return port berthing duration and the estimated unloading duration of different types of catches of reported fishing boats to be berthed; Preparing for berthing and catch unloading work according to the estimated return port berthing duration and the estimated unloading duration of different types of catches of reported fishing boats to be berthed.
[0006] The present invention also discloses a navigation management system based on route historical information, including a port management terminal, configured to obtain the route historical information of the fishing boats entering the port to obtain the fishing duration of the fishing boats entering the port in different fishing grounds; obtain the return port docking duration of the fishing boats entering the port and the unloading duration of different types of catches; obtain the correlation relationship between the fishing duration of the fishing boats in different fishing grounds and the estimated return port docking duration and the estimated unloading duration of different types of catches based on the fishing duration of the fishing boats entering the port in different fishing grounds, the return port docking duration, and the unloading duration of different types of catches; continuously obtain the position information of the fishing boats to be berthed for reporting to obtain the route historical information and obtain the fishing duration of the fishing boats to be berthed for reporting in different fishing grounds; obtain the estimated return port docking duration and the estimated unloading duration of different types of catches of the fishing boats to be berthed for reporting based on the fishing duration of the fishing boats to be berthed for reporting in different fishing grounds and the correlation relationship between the fishing duration of the fishing boats in different fishing grounds and the estimated return port docking duration and the estimated unloading duration of different types of catches; a shipping terminal, configured to receive the estimated return port docking duration and the estimated unloading duration of different types of catches of the fishing boats to be berthed for reporting; make preparations for berthing and catch unloading work according to the estimated return port docking duration and the estimated unloading duration of different types of catches of the fishing boats to be berthed for reporting.
[0007] The present invention analyzes the route historical information, return port docking duration, and unloading duration of different types of catches of the fishing boats entering the port through the port management terminal, so as to obtain the empirical correlation relationship between the fishing duration of the fishing boats in different fishing grounds and the estimated return port docking duration and the estimated unloading duration of different types of catches. Substitute and analyze the fishing boats to be berthed for reporting respectively, so as to more accurately estimate the port docking operation time of the fishing boats to be berthed for reporting, facilitate the arrangement and management of many fishing boats to be berthed for reporting by the fishing port, and effectively improve the management efficiency of the fishing port.
[0008] Of course, it is not necessary for any product implementing the present invention to achieve all the above advantages simultaneously. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for describing the embodiments will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0010] Figure 1 It is a schematic diagram of the functional terminals and information flow directions of an embodiment of the navigation management system based on route historical information described in the present invention; Figure 2 Schematic diagram of the step flow of the port management terminal of the present invention in an embodiment; Figure 3 Schematic diagram of the step flow of the shipping terminal of the present invention in an embodiment; Figure 4 Schematic diagram of the step flow of step S3 of the present invention in an embodiment; Figure 5 Schematic diagram of the step flow of step S31 of the present invention in an embodiment; Figure 6 Schematic diagram of the step flow of step S32 of the present invention in an embodiment; Figure 7 Schematic diagram of the step flow of step S323 of the present invention in an embodiment; Figure 8 Schematic diagram of the step flow of step S33 of the present invention in an embodiment; Figure 9 Schematic diagram of the step flow of step S5 of the present invention in an embodiment; Figure 10 Schematic diagram of the step flow of the port management terminal of the present invention in another embodiment; In the accompanying drawings, the list of components represented by each reference numeral is as follows: 1 - Port management terminal, 2 - Shipping terminal. Detailed implementation manners
[0011] To make the objectives, technical solutions and advantages of the present application clearer, the following will further describe in detail the embodiments of the present application in conjunction with the accompanying drawings.
[0012] It should be noted that the terms "first", "second", etc. in the present application are used to distinguish similar objects, and do not necessarily describe a specific order or sequence. It should be understood that such data used can be interchanged under appropriate circumstances, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. The implementation manners described in the following exemplary embodiments do not represent all implementation manners consistent with the present application. On the contrary, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the appended claims.
[0013] Please refer to Figures 1 to 3 As shown, the present invention provides a navigation management system based on route historical information, which includes, from a functional perspective, a port management terminal 1 and a shipping terminal 2 that interact with each other for information. The port management terminal 1 collects the route historical information sent by the shipping terminal 2, analyzes and summarizes the estimated durations of various items of fishing boats to be reported for berthing, and sends them to the port management terminal 1 for work preparation.
[0014] During the operation of the port management terminal 1 in this system, it can first execute step S1 to obtain the historical route information of the incoming fishing boats, and get the fishing durations of the incoming fishing boats in different fishing grounds. These data can be collected through the shipping system and the inbound and outbound management system. Next, it can execute step S2 to obtain the return port docking durations of the incoming fishing boats and the unloading durations of different types of catches. Next, it can execute step S3 to obtain the correlation between the fishing durations of the fishing boats in different fishing grounds, the estimated return port docking durations, and the estimated unloading durations of different types of catches. Next, it can execute step S4 to continuously obtain the position information of the fishing boats to be berthed for reporting, and get the fishing durations of the fishing boats to be berthed for reporting in different fishing grounds. Finally, it can execute step S5 to obtain the estimated return port docking durations of the fishing boats to be berthed for reporting and the estimated unloading durations of different types of catches according to the fishing durations of the fishing boats to be berthed for reporting in different fishing grounds and the correlation between the fishing durations of the fishing boats in different fishing grounds, the estimated return port docking durations, and the estimated unloading durations of different types of catches.
[0015] In order to allow the fishing boats to be berthed for reporting to make preparations in advance, the estimated return port docking durations of the fishing boats to be berthed for reporting and the estimated unloading durations of different types of catches can be sent to the shipping terminal 2 of the corresponding fishing boats. After that, the shipping terminal 2 can trigger the execution of step S021 to receive the estimated return port docking durations of the fishing boats to be berthed for reporting and the estimated unloading durations of different types of catches. Finally, it can execute step S022 to make preparations for berthing and catch unloading work according to the estimated return port docking durations of the fishing boats to be berthed for reporting and the estimated unloading durations of different types of catches.
[0016] Please refer to Figure 10 As shown, since the berthing processing capacity of the fishing ground is limited, in order to avoid chaos caused by overloading in the fishing port, the port management terminal 1 can execute step S6 to obtain the remaining processing capacity of the fishing port during the current period. Next, it can execute step S7 to determine whether the estimated return port docking durations of all the fishing boats to be berthed for reporting and the estimated unloading durations of different types of catches during the current period exceed the remaining processing capacity. If so, then it can execute step S8 to require some of the fishing boats to be berthed for reporting to wait at the outer anchorage of the port. If not, then it can execute step S9 without any operation and let the fishing port normally process the berthed fishing boats.
[0017] Please refer to Figures 4 to 5As shown, after fishing boats have carried out fishing operations of similar durations in the same fishing grounds, the types and quantities of their catches are usually similar, and the docking durations and working durations after docking at fishing ports are also close. This enables the estimation of the docking operation duration based on historical route information. Of course, the type of fishing boat needs to be considered, such as trawlers, purse seiners, gillnetters, longliners, handliners, etc., so the incoming fishing boats are classified. Different types of incoming fishing boats need to be processed separately. Specifically, first, step S31 can be executed to obtain the fishing route characteristics of the incoming fishing boat based on the fishing durations in different fishing grounds. During the implementation of this solution, step S311 can be executed to sort the fishing grounds in a set order to obtain the fishing ground order. For each incoming fishing boat, next, step S312 can be executed to sort the numerical values of the fishing durations of the incoming fishing boat in different fishing grounds according to the fishing ground order and vectorize them into a matrix to obtain the fishing route characteristics of the incoming fishing boat, and the fishing route characteristics of each incoming fishing boat are summarized.
[0018] Next, step S32 can be executed to classify the incoming fishing boats with common fishing route characteristics into the same incoming fishing boat group. Next, step S33 can be executed for all the incoming fishing boats belonging to the same incoming fishing boat group to obtain the comprehensive return docking duration of the incoming fishing boat group and the comprehensive unloading durations of different types of catches based on their return docking durations and the unloading durations of different types of catches. Next, step S34 can be executed to use the comprehensive return docking duration and the comprehensive unloading durations of different types of catches corresponding to each incoming fishing boat group as the estimated return docking duration and the estimated unloading durations of different types of catches for the fishing boats with common fishing route characteristics in the incoming fishing boat group, and obtain the correlation between the fishing durations of this type of fishing boat in different fishing grounds and the estimated return docking duration and the estimated unloading durations of different types of catches. Finally, step S35 can be executed to summarize the correlation between the fishing durations of each type of fishing boat in different fishing grounds and the estimated return docking duration and the estimated unloading durations of different types of catches.
[0019] Please refer to Figures 6 to 7As shown, in order to classify the inbound fishing vessels with commonalities into the same inbound fishing vessel group, first, step S321 can be executed to classify the inbound fishing vessels that have fished in the same fishing ground into the same inbound fishing vessel group according to the fishing duration of the inbound fishing vessels in different fishing grounds. Next, step S322 can be executed. Within each inbound fishing vessel group, rank each inbound fishing vessel in the group according to the cumulative fishing duration of the inbound fishing vessels in different fishing grounds. Within each inbound fishing vessel group, next, step S323 can be executed to select the inbound fishing vessel with the first-ranked cumulative fishing duration as the reference inbound fishing vessel. Finally, step S324 can be executed to calculate the differences between the fishing route characteristics of each reference inbound fishing vessel and those of other inbound fishing vessels, and classify the inbound fishing vessels with common fishing route characteristics into the same inbound fishing vessel group, obtaining multiple inbound fishing vessel groups.
[0020] In the specific process of classifying the inbound fishing vessel groups, first, step S3241 can be executed to calculate the matrix difference norm between the fishing route characteristics of each reference inbound fishing vessel and those of other inbound fishing vessels. Next, step S3242 can be executed. For each other inbound fishing vessel other than the reference inbound fishing vessel, classify the inbound fishing vessel into the same inbound fishing vessel group as the reference inbound fishing vessel with the smallest matrix difference norm between the inbound fishing vessel and the fishing route characteristics.
[0021] In order to determine whether there is sufficient commonality between the fishing route characteristics of the inbound fishing vessels within the already classified inbound fishing vessel groups, next, step S3243 can be executed to calculate the mean matrix of the fishing route characteristics of all inbound fishing vessels within each inbound fishing vessel group. Next, step S3244 can be executed to use the inbound fishing vessel with the smallest matrix difference norm between the fishing route characteristics of each inbound fishing vessel group and the mean matrix of the fishing route characteristics of all inbound fishing vessels as the updated reference inbound fishing vessel. Next, step S3245 can be executed. Within each inbound fishing vessel group, according to the ranking order of the cumulative fishing duration of the inbound fishing vessels, the mean of the differences in the cumulative fishing duration between each inbound fishing vessel in the group and the adjacent inbound fishing vessel is used as the accidental change duration. Next, step S3246 can be executed to determine whether the difference in the cumulative fishing duration between the reference inbound fishing vessels before and after the update exceeds the accidental change duration. If so, it indicates that there is insufficient commonality within the inbound fishing vessel group. Therefore, next, steps S3241 to S3246 can be executed, continuously classifying to generate inbound fishing vessel groups and determining whether the difference in the cumulative fishing duration between the reference inbound fishing vessels before and after the update exceeds the accidental change duration until the difference in the cumulative fishing duration between the reference inbound fishing vessels before and after the update does not exceed the accidental change duration.
[0022] The above method continuously generates new groups of incoming fishing boats through an iterative update method until the cumulative fishing duration difference between the reference incoming fishing boats before and after the update does not exceed the accidental change duration. Otherwise, it means that there is sufficient commonality within each group of incoming fishing boats. Therefore, finally, step S3247 can be executed to obtain multiple groups of incoming fishing boats with commonality within.
[0023] To supplement the implementation process of the above steps S321 to S324, the source code of some functional modules is provided, and corresponding explanations are given in the comment section. To avoid the leakage of data involving business secrets, some data that does not affect the implementation of the solution is desensitized. The same applies hereinafter.
[0024] using namespace std; / / Define the fishing boat structure struct FishingBoat { int id; / / Fishing boat ID vector <double>fishingDuration; / / Fishing duration in different fishing grounds vector<vector <double>>fishingRoute; / / Fishing route characteristics (in matrix form) }; / / Calculate the Frobenius norm of the matrix (used to measure the difference in route characteristics) double calculateFrobeniusNorm(const vector<vector <double>>&matrix) { double norm = 0.0; for (const auto&row : matrix) { for (double val : row) { norm += val * val; } } return sqrt(norm); } / / Calculate the Frobenius norm of the difference matrix of two matrices double calculateMatrixDifferenceNorm(const vector<vector <double>>&matrix1, const vector<vector <double>>&matrix2) { vector<vector <double>>diff(matrix1.size(), vector <double>(matrix1[0].size(), 0.0)); for (size_t i = 0; i<matrix1.size(); ++i) { for (size_t j = 0; j<matrix1[0].size(); ++j) { diff[i][j]= matrix1[i][j]- matrix2[i][j]; } } return calculateFrobeniusNorm(diff); } / / Calculate the mean matrix of the matrix vector<vector <double>>calculateMeanMatrix(const vector<vector<vector <double>>>&matrices) { if (matrices.empty()) return {}; size_t rows = matrices[0].size(); size_t cols = matrices[0][0].size(); vector<vector <double>>mean(rows, vector <double>(cols, 0.0)); for (const auto& matrix : matrices) { for (size_t i = 0; i < rows; ++i) { for (size_t j = 0; j < cols; ++j) { mean[i][j]+= matrix[i][j]; } } } for (size_t i = 0; i < rows; ++i) { for (size_t j = 0; j < cols; ++j) { mean[i][j] / = matrices.size(); } } return mean; } / / Main classification function vector<vector <fishingboat>>classifyFishingBoats(vector <fishingboat>&boats) { / / Classify according to the fishing duration in the fishing ground map<vector <double>, vector <fishingboat>>groupsByDuration; for (const auto&boat : boats) { groupsByDuration[boat.fishingDuration].push_back(boat); } vector<vector <fishingboat>> initialGroups; for (const auto& pair : groupsByDuration) { initialGroups.push_back(pair.second); } / / Sort by cumulative fishing duration within each group for (auto& group : initialGroups) { sort(group.begin(), group.end(), [](const FishingBoat& a, const FishingBoat& b) { double sumA = accumulate(a.fishingDuration.begin(), a.fishingDuration.end(), 0.0); double sumB = accumulate(b.fishingDuration.begin(), b.fishingDuration.end(), 0.0); return sumA > sumB; }); } / / Select the reference fishing boat for each group (the one with the highest cumulative duration ranking first) vector <fishingboat>referenceBoats; for (const auto& group : initialGroups) { if (!group.empty()) { referenceBoats.push_back(group[0]); } } / / Grouping based on route characteristics vector<vector <fishingboat>>finalGroups; for (const auto& refBoat : referenceBoats) { vector <fishingboat>newGroup; newGroup.push_back(refBoat); finalGroups.push_back(newGroup); } bool changed; do { changed = false; / / Step S32431 - S32432: Assign fishing boats to the nearest reference fishing boat group for (auto&boat : boats) { double minNorm = numeric_limits <double>::max(); int bestGroupIdx = -1; for (size_t i = 0; i <finalGroups.size(); ++i) { const auto&refBoat = finalGroups[i][0]; / / Current reference fishing boat double norm = calculateMatrixDifferenceNorm(boat.fishingRoute, refBoat.fishingRoute); if (norm <minNorm) { minNorm = norm; bestGroupIdx = i; } } / / Check if the fishing boat needs to be moved to the new group bool found = false; for (auto&group : finalGroups) { if (find_if(group.begin(), group.end(), [&boat](constFishingBoat&b) { return b.id == boat.id;}) != group.end()) { found = true; break; } } if (!found&&bestGroupIdx != -1) { finalGroups[bestGroupIdx].push_back(boat); changed = true; } } / / Update reference fishing boat for (auto&group : finalGroups) { if (group.empty()) continue; / / Calculate the mean matrix of all fishing boat route characteristics in the group vector<vector<vector <double>>>allRoutes; for (const auto& boat : group) { allRoutes.push_back(boat.fishingRoute); } auto meanMatrix = calculateMeanMatrix(allRoutes); / / Find the fishing boat closest to the mean matrix as the new reference double minNorm = numeric_limits <double>::max(); FishingBoat* newRefBoat = nullptr; for (auto&boat : group) { double norm = calculateMatrixDifferenceNorm(boat.fishingRoute, meanMatrix); if (norm<minNorm) { minNorm = norm; newRefBoat =&boat; } } / / If the reference fishing boat changes, check the difference in cumulative fishing duration if (newRefBoat&&newRefBoat->id != group[0].id) { / / Step S3245: Calculate the accidental change duration vector <double>durations; for (const auto&boat : group) { durations.push_back(accumulate(boat.fishingDuration.begin(), boat.fishingDuration.end(), 0.0)); } sort(durations.begin(), durations.end(), greater <double>()); double totalDiff = 0.0; for (size_t i = 1; i < durations.size(); ++i) { totalDiff += durations[i - 1] - durations[i]; } double avgDiff = totalDiff / (durations.size() - 1); / / Determine if the change is significant double oldDuration = accumulate(group[0].fishingDuration.begin(), group[0].fishingDuration.end(), 0.0); double newDuration = accumulate(newRefBoat->fishingDuration.begin(), newRefBoat->fishingDuration.end(), 0.0); if (abs(oldDuration - newDuration)>avgDiff) { / / Swap the reference fishing boat iter_swap(group.begin(), find_if(group.begin(), group.end(), [newRefBoat](const FishingBoat&b) { return b.id == newRefBoat->id;})); changed = true; } } } } while (changed); / / Until there is no significant change return finalGroups; } int main() { / / Example data vector <fishingboat>boats = { {1, {10, 20}, {{1, 2}, {3, 4}}}, {2, {10, 20}, {{1.1, 2.1}, {3.1, 4.1}}}, {3, {15, 25}, {{5, 6}, {7, 8}}}, {4, {15, 25}, {{5.1, 6.1}, {7.1, 8.1}}}, {5, {10, 20}, {{1.2, 2.2}, {3.2, 4.2}}} }; auto groups = classifyFishingBoats(boats); / / Output the grouping results for (size_t i = 0; i<groups.size(); ++i) { cout<<"Group "<<i+1<<" (Reference Boat: "<<groups[i][0].id<<"): "; for (const auto&boat : groups[i]) { cout<<boat.id<<" "; } cout<<endl; } return 0; } This code implements the process of classifying the fishing boats entering the port with common characteristics in the fishing routes. By comparing the differences in the fishing route feature matrices between the fishing boats and using the matrix difference norm for classification and iterative update, multiple groups of fishing boats with common characteristics inside are finally obtained. This method can effectively organize and manage the fishing boat data and provide a basis for further analysis and decision-making.
[0025] Please refer to Figure 8 As shown, since the mooring and operation durations of fishing boats cannot be completely and strictly controlled, it is necessary to appropriately relax the data scale when calculating the comprehensive return port docking duration and the comprehensive unloading duration of different types of catches. For each type of duration among the return port docking duration and the unloading durations of different types of catches, specifically, first, step S331 can be executed to calculate and obtain the maximum value, minimum value, and average value of the corresponding durations of all the incoming fishing boats belonging to the same incoming fishing boat group. Next, step S332 can be executed to calculate and obtain the difference between the maximum value and the minimum value of the durations as the variation range of the durations. Next, step S333 can be executed to take the ratio of the variation range of the durations to the number of all the incoming fishing boats in the incoming fishing boat group as the adjustment range of the durations. Next, step S334 can be executed to accumulate the adjustment range of the durations to the average value of the durations as the comprehensive duration of all the incoming fishing boats in the incoming fishing boat group. Finally, step S335 can be executed to summarize and obtain the comprehensive return port docking duration of the incoming fishing boat group and the comprehensive unloading durations of different types of catches.
[0026] To supplement and explain the implementation process of the above steps S331 to S335, the source codes of some functional modules are provided and corresponding explanations are given in the comment section.
[0027] #include <iostream> #include <matrix> #include <map> #include <string> #include <algorithm> #include <numeric> / / Define the fishing boat class class FishingBoat { public: std::string boatID; double dockingDuration; / / Duration of docking at the port std::map<std::string, double>unloadingDurations; / / Unloading duration for each type of catch FishingBoat(std::string id, double docking, std::map<std::string,double>unloading) : boatID(id), dockingDuration(docking), unloadingDurations(unloading) {} }; / / Calculate the composite duration std::pair<double, std::map<std::string, double>>calculateCompositeDurations( const std::Matrix <fishingboat>&groupBoats) { / / Calculate the comprehensive duration of the return port docking duration double maxDocking = std::numeric_limits <double>::min(); double minDocking = std::numeric_limits <double>::max(); double sumDocking = 0.0; for (const auto&boat : groupBoats) { maxDocking = std::max(maxDocking, boat.dockingDuration); minDocking = std::min(minDocking, boat.dockingDuration); sumDocking += boat.dockingDuration; } double meanDocking = sumDocking / groupBoats.size(); double dockingRange = maxDocking - minDocking; double dockingAdjustment = dockingRange / groupBoats.size(); double compositeDockingDuration = meanDocking + dockingAdjustment; / / Calculate the composite unloading duration for each type of catch std::map<std::string, double>compositeUnloadingDurations; for (const auto&[fishType, _] : groupBoats[0].unloadingDurations) { double maxUnload = std::numeric_limits <double>::min(); double minUnload = std::numeric_limits <double>::max(); double sumUnload = 0.0; for (const auto&boat : groupBoats) { double unloadTime = boat.unloadingDurations.at(fishType); maxUnload = std::max(maxUnload, unloadTime); minUnload = std::min(minUnload, unloadTime); sumUnload += unloadTime; } double meanUnload = sumUnload / groupBoats.size(); double unloadRange = maxUnload - minUnload; double unloadAdjustment = unloadRange / groupBoats.size(); compositeUnloadingDurations[fishType] = meanUnload +unloadAdjustment; } return {compositeDockingDuration, compositeUnloadingDurations}; } int main() { / / Example fishing boat data std::Matrix <fishingboat>groupBoats = { FishingBoat("Boat1", 5.0, {{"FishType1", 2.0}, {"FishType2",3.0}}), FishingBoat("Boat2", 6.0, {{"FishType1", 2.5}, {"FishType2",3.5}}), FishingBoat("Boat3", 4.5, {{"FishType1", 3.0}, {"FishType2",2.8}}) }; / / Calculate the composite duration auto [compositeDocking, compositeUnloading] = calculateCompositeDurations(groupBoats); / / Output the results std::cout << "Composite Docking Duration: " << compositeDocking << " hours\n"; for (const auto& [fishType, duration] : compositeUnloading) { std::cout << "Composite Unloading Duration for " << fishType << ": " << duration << " hours\n"; } return 0; } This code implements the steps for calculating the composite duration of fishing boats within the same group of fishing boats entering the port. By calculating the maximum, minimum, average, and their variation ranges of each type of duration, the composite return docking duration and the composite unloading duration are obtained. This method helps to standardize the duration data of the fishing boat group and provides a reliable basis for further management and optimization.
[0028] Please refer to Figure 9 As shown, for each fishing boat to be reported for berthing, since fishing boats with the same or similar route historical information have similarities in the return port berthing duration and the estimated unloading duration, during the process of estimating its berthing and operation duration, step S51 can be first executed to extract the corresponding fishing route characteristics according to its fishing duration in different fishing grounds. Next, step S52 can be executed to calculate the matrix difference norm of the fishing route characteristics between the fishing boat to be reported for berthing and each reference incoming fishing boat. Next, step S53 can be executed to use the incoming fishing boat group where the reference incoming fishing boat with the minimum matrix difference norm of the fishing route characteristics with this fishing boat to be reported for berthing as the incoming fishing boat group with commonality. Next, step S54 can be executed to use the comprehensive return port berthing duration corresponding to this incoming fishing boat group with commonality and the comprehensive unloading durations of different types of fish catches as the estimated return port berthing duration of this fishing boat to be reported for berthing and the estimated unloading durations of different types of fish catches. Finally, step S55 can be executed to summarize the estimated return port berthing duration of each fishing boat to be reported for berthing and the estimated unloading durations of different types of fish catches.
[0029] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of devices, systems, methods, and computer program products according to multiple embodiments of the present application. In this regard, each block in the flowchart or block diagram may represent a module, a segment of a program, or a part of an instruction, and the module, the segment of a program, or the part of an instruction contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than that marked in the accompanying drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved.
[0030] It should also be noted that each block in the block diagram and / or flowchart, as well as the combination of blocks in the block diagram and / or flowchart, can be implemented by hardware that performs the corresponding functions or actions, such as a circuit or an ASIC (Application Specific Integrated Circuit), or can be implemented by a combination of hardware and software, such as firmware, etc.
[0031] Although the present invention has been described in conjunction with the embodiments, however, in the process of implementing the claimed invention, those skilled in the art can understand and realize other variations of the disclosed embodiments by viewing the accompanying drawings, the disclosure, and the appended claims. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "an" does not exclude a plurality. A single processor or other unit can implement several functions recited in the claims. Certain measures are recited in mutually different dependent claims, but this does not mean that these measures cannot be combined to produce good results.
[0032] The embodiments of the present application have been described above. The above description is exemplary and not exhaustive, and is not limited to the disclosed embodiments. Many modifications and variations are obvious to those of ordinary skill in the art without departing from the scope of the described embodiments. The choice of terms used herein is intended to best explain the principles of the embodiments, the practical application, or the improvement of the technology in the market, or to enable other ordinary skilled in the art to understand the embodiments disclosed herein.< / fishingboat> < / double> < / double> < / double> < / double> < / fishingboat> < / numeric> < / algorithm> < / string> < / map> < / matrix> < / iostream> < / fishingboat> < / double> < / double> < / double> < / double> < / double> < / fishingboat> < / fishingboat> < / fishingboat> < / fishingboat> < / fishingboat> < / double> < / fishingboat> < / fishingboat> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double> < / double>
Claims
1. A method for predicting the docking of fishing boats based on historical route information, characterized in that, including, obtaining the route history information of the incoming fishing boats to obtain the fishing durations of the incoming fishing boats in different fishing grounds; obtaining the return port docking durations of the incoming fishing boats and the unloading durations of different types of catches; obtaining the correlation relationship between the fishing durations of the fishing boats in different fishing grounds and the estimated return port docking durations and the estimated unloading durations of different types of catches based on the fishing durations of the incoming fishing boats in different fishing grounds, the return port docking durations, and the unloading durations of different types of catches; continuously obtaining the position information of the fishing boats to be berthed for reporting to obtain the route history information and the fishing durations of the fishing boats to be berthed for reporting in different fishing grounds; obtaining the estimated return port docking durations and the estimated unloading durations of different types of catches of the fishing boats to be berthed for reporting based on the fishing durations of the fishing boats to be berthed for reporting in different fishing grounds and the correlation relationship between the fishing durations of the fishing boats in different fishing grounds and the estimated return port docking durations and the estimated unloading durations of different types of catches.
2. The method according to claim 1, wherein The step of obtaining the correlation relationship between the fishing durations of the fishing boats in different fishing grounds and the estimated return port docking durations and the estimated unloading durations of different types of catches based on the fishing durations of the incoming fishing boats in different fishing grounds, the return port docking durations, and the unloading durations of different types of catches includes, classifying the incoming fishing boats, and respectively performing the following steps for different types of incoming fishing boats, obtaining the fishing route characteristics of the incoming fishing boats based on the fishing durations of the incoming fishing boats in different fishing grounds, classifying the incoming fishing boats with common fishing route characteristics into the same incoming fishing boat group, for all the incoming fishing boats belonging to the same incoming fishing boat group, obtaining the comprehensive return port docking duration and the comprehensive unloading durations of different types of catches of this incoming fishing boat group based on their return port docking durations and the unloading durations of different types of catches, taking the comprehensive return port docking duration and the comprehensive unloading durations of different types of catches corresponding to each incoming fishing boat group as the estimated return port docking duration and the estimated unloading durations of different types of catches of the fishing boats with common fishing route characteristics as this incoming fishing boat group, and obtaining the correlation relationship between the fishing durations of this type of fishing boats in different fishing grounds and the estimated return port docking durations and the estimated unloading durations of different types of catches; summarizing to obtain the correlation relationship between the fishing durations of each type of fishing boats in different fishing grounds and the estimated return port docking durations and the estimated unloading durations of different types of catches.
3. The method according to claim 2, wherein The step of obtaining the fishing route characteristics of the incoming fishing boats based on the fishing durations of the incoming fishing boats in different fishing grounds includes, sorting the fishing grounds in a set order to obtain the fishing ground order; for each incoming fishing boat, sorting the numerical values of the fishing durations of this incoming fishing boat in different fishing grounds in the said fishing ground order and matrixing them to obtain the fishing route characteristics of this incoming fishing boat, and summarizing to obtain the fishing route characteristics of each incoming fishing boat.
4. The method according to claim 3, wherein The step of classifying the incoming fishing boats with common fishing route characteristics into the same incoming fishing boat group, includes, classifying the incoming fishing boats that have fished in the same fishing ground into the same incoming fishing boat group based on the fishing durations of the incoming fishing boats in different fishing grounds; within each incoming fishing boat group, ranking each incoming fishing boat in this incoming fishing boat group according to the cumulative fishing duration of the incoming fishing boat in different fishing grounds for the cumulative fishing duration ranking; Within each group of incoming fishing boats, select the incoming fishing boat with the longest cumulative fishing duration as the reference incoming fishing boat; Calculate and obtain the differences between the fishing route characteristics of each reference incoming fishing boat and other incoming fishing boats, and classify the incoming fishing boats with common fishing route characteristics into the same group of incoming fishing boats to obtain multiple groups of incoming fishing boats.
5. The method according to claim 4, wherein The step of calculating and obtaining the differences between the fishing route characteristics of each reference incoming fishing boat and other incoming fishing boats, and classifying the incoming fishing boats with common fishing route characteristics into the same group of incoming fishing boats to obtain multiple groups of incoming fishing boats includes: Calculate and obtain the matrix difference norm between the fishing route characteristics of each reference incoming fishing boat and the fishing route characteristics of other incoming fishing boats; For each other incoming fishing boat other than the reference incoming fishing boat, re-classify the incoming fishing boat and the reference incoming fishing boat with the smallest matrix difference norm between the fishing route characteristics into the same group of incoming fishing boats; For each group of incoming fishing boats, calculate and obtain the mean matrix of the fishing route characteristics of all incoming fishing boats within the group; For each group of incoming fishing boats, among all the incoming fishing boats included in the group, select the incoming fishing boat with the smallest matrix difference norm from the mean matrix of the fishing route characteristics of the group as the updated reference incoming fishing boat; Within each group of incoming fishing boats, in the order of the cumulative fishing duration ranking of the incoming fishing boats, the mean of the differences in the cumulative fishing duration between each incoming fishing boat and the adjacent incoming fishing boat within the group is used as the accidental change duration; Judge whether the difference in the cumulative fishing duration between the reference incoming fishing boats before and after the update exceeds the accidental change duration; If so, continue to classify and generate groups of incoming fishing boats and judge that the difference in the cumulative fishing duration between the reference incoming fishing boats before and after the update does not exceed the accidental change duration; If not, obtain multiple groups of incoming fishing boats with common characteristics inside.
6. The method according to claim 2, characterized in that, The step of obtaining the comprehensive return docking duration of the group of incoming fishing boats and the comprehensive unloading durations of different types of fish catches for all incoming fishing boats belonging to the same group of incoming fishing boats according to their return docking durations and the unloading durations of different types of fish catches includes: For each type of duration among the return docking duration and the unloading durations of different types of fish catches, perform the following operations respectively: Calculate and obtain the maximum value, minimum value, and mean of the corresponding durations of all incoming fishing boats belonging to the same group of incoming fishing boats; Calculate and obtain the difference between the maximum value and the minimum value in the duration as the change interval of the duration; Take the ratio of the change interval of the duration to the number of all incoming fishing boats within the group of incoming fishing boats as the adjustment interval of the duration; Accumulate the adjustment interval of the duration to the mean of the duration as the comprehensive duration of all incoming fishing boats within the group of incoming fishing boats; Summarize to obtain the comprehensive return docking duration of the group of incoming fishing boats and the comprehensive unloading durations of different types of fish catches.
7. The method according to claim 2, characterized in that The step of obtaining the estimated return docking duration of the reported fishing boats to be berthed and the estimated unloading durations of different types of fish catches according to the fishing durations of the reported fishing boats to be berthed in different fishing grounds and the correlation between the fishing durations of the fishing boats in different fishing grounds and the estimated return docking duration and the estimated unloading durations of different types of fish catches includes: For each reported fishing boat to be berthed, The corresponding fishing route features are extracted according to the fishing duration of the reported fishing boat to be berthed in different fishing grounds. The matrix difference norm of the fishing route features between the reported fishing boat to be berthed and each reference fishing boat entering the port is calculated. The fishing boat group entering the port where the reference fishing boat entering the port with the smallest matrix difference norm of the fishing route features with the reported fishing boat to be berthed is used as the fishing boat group entering the port with commonality. The comprehensive return port berthing duration corresponding to the fishing boat group entering the port with commonality and the comprehensive unloading duration of different types of catches are used as the estimated return port berthing duration and the estimated unloading duration of different types of catches of the reported fishing boat to be berthed. The estimated return port berthing duration of each reported fishing boat to be berthed and the estimated unloading duration of different types of catches are summarized.
8. The method according to claim 1, wherein It also includes Obtaining the remaining processing capacity of the fishing port during the current period. Judging whether the estimated return port berthing duration of all reported fishing boats to be berthed and the estimated unloading duration of different types of catches exceed the remaining processing capacity during the current period. If so, some reported fishing boats to be berthed are required to wait at the outer anchorage of the port. If not, no operation is performed.
9. A fishing boat docking prediction method based on route historical information, characterized in that, It includes Receiving the estimated return port berthing duration of the reported fishing boat to be berthed and the estimated unloading duration of different types of catches in a fishing boat berthing estimation method based on route historical information according to any one of claims 1 to 8. Preparing for berthing and catch unloading work according to the estimated return port berthing duration of the reported fishing boat to be berthed and the estimated unloading duration of different types of catches.
10. A navigation management system based on route historical information, characterized in that, It includes The port management terminal is used to obtain the fishing duration of the fishing boat entering the port in different fishing grounds from the route historical information of the fishing boat entering the port. Obtaining the return port berthing duration of the fishing boat entering the port and the unloading duration of different types of catches. According to the fishing duration of the fishing boat entering the port in different fishing grounds and the return port berthing duration and the unloading duration of different types of catches, the correlation between the fishing duration of the fishing boat in different fishing grounds and the estimated return port berthing duration and the estimated unloading duration of different types of catches is obtained. Continuously obtaining the position information of the reported fishing boat to be berthed to obtain the route historical information to obtain the fishing duration of the reported fishing boat to be berthed in different fishing grounds. According to the fishing duration of the reported fishing boat to be berthed in different fishing grounds and the correlation between the fishing duration of the fishing boat in different fishing grounds and the estimated return port berthing duration and the estimated unloading duration of different types of catches, the estimated return port berthing duration of the reported fishing boat to be berthed and the estimated unloading duration of different types of catches are obtained. The shipping terminal is used to receive the estimated return port berthing duration of the reported fishing boat to be berthed and the estimated unloading duration of different types of catches. Preparing for berthing and catch unloading work according to the estimated return port berthing duration of the reported fishing boat to be berthed and the estimated unloading duration of different types of catches.
Citation Information
Patent Citations
Method and device for predicting port residence time of ship
CN107256438A
Intelligent fishing port supervision system and method based on digital twinning
CN115100477A
Fishery resource prediction method and system based on fishing boat operation mode
CN115330009A
System and method for exterminating birds by dron
KR1020230164786A
Method and system for predicting a port-stay duration of a vessel at a port
US20200394744A1