A data analysis method and system for shipping inventory management

CN123014898APending Publication Date: 2026-10-30YAZHENG TECH GRP CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611469721.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-09-21
Publication Date
2026-10-30

AI Technical Summary

Technical Problem

当装卸作业频繁或者货物发生多次位置变化时,不同环节形成的数据可能存在更新不及时、记录不完整或者相互不一致的情况,导致库存记录难以准确反映货物的实际状态

Benefits of technology

[0028]通过事件识别模块、迁移图构建模块、装卸量确定模块、偏差确定模块、库存校正模块和调拨指令模块之间的数据传递,可以将装卸设备数据、船舶数据和库存数据依次用于装卸事件识别、库存迁移校验、异常数据校正和可执行库存分析,使各处理环节形成连续的数据分析过程,有利于提高船运库存数据与货物实际迁移状态的一致性,并使生成的调拨指令更符合货物位置、装卸设备及作业时间条件。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123014898A_ABST
    Figure CN123014898A_ABST
Patent Text Reader

Abstract

The application discloses a data analysis method and system for shipping inventory management, the method comprising: obtaining inventory data, equipment data and ship data of a voyage, identifying loading and unloading events according to lock state, detected load and change of operation position, and constructing an inventory migration graph associated with account load and detected load; dividing a loading and unloading verification period according to ship body stable time before and after continuous loading and unloading events, determining actual loading and unloading amount by using ship displacement change and non-cargo load change; determining equipment verification deviation and inventory verification deviation respectively, and correcting account load by using abnormal migration edge detected load when equipment data meets verification conditions and inventory data has deviation; determining executable inventory according to corrected inventory migration graph, loading and unloading equipment operation capacity and ship arrival time, and generating allocation instructions. The application helps to reduce the deviation between inventory records and actual loading and unloading state, and improve the applicability of shipping inventory analysis results to cargo allocation operation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of shipping logistics data processing technology, specifically to a data analysis method and system for shipping inventory management. Background Technology

[0002] Shipping inventory management is the process of recording and managing the status of goods during a voyage, including registration, loading, storage, relocation, unloading, and allocation. The management results can be used for inventory counting, loading and unloading planning, and allocation arrangements. Due to the large quantity of goods shipped by sea, the continuous operation process, and the fact that storage locations can easily change with loading and unloading operations, inventory information needs to be updated in a timely manner according to the status of the goods to reflect the quantity and location of goods at different stages of transportation.

[0003] Current shipping inventory management typically updates inventory data based on cargo registration information and loading / unloading operation records. When loading / unloading operations are frequent or cargo changes location multiple times, data generated at different stages may be outdated, incomplete, or inconsistent, making it difficult for inventory records to accurately reflect the actual status of the cargo. Furthermore, existing methods usually determine available cargo for allocation based on current inventory records, failing to fully reflect actual unloading conditions and easily leading to discrepancies between inventory analysis results and allocation operations. Therefore, improving the accuracy of shipping inventory data analysis and enhancing the applicability of inventory analysis results to cargo allocation operations has become a technical problem that needs to be solved. Summary of the Invention

[0004] This application provides a data analysis method and system for shipping inventory management, which improves the accuracy of shipping inventory data analysis and enhances the applicability of inventory analysis results to cargo transfer operations.

[0005] A first aspect of this application provides a data analysis method for shipping inventory management, comprising the following steps: S1, acquiring voyage inventory data, equipment data, and ship data, and identifying loading and unloading events of cargo units based on the locking status, detection load, and changes in operating position in the equipment data; S2, constructing an inventory migration map based on the cargo units, starting positions, and target positions corresponding to the loading and unloading events, and associating each migration edge with the corresponding loading / unloading events, ledger loads, and detection loads; S3, determining two ship hull stability moments before and after the start and end of consecutive loading / unloading events based on the ship data, using the time range between the two ship hull stability moments as the loading / unloading verification period, and determining the actual loading / unloading volume based on changes in ship displacement and non-cargo loads during the loading / unloading verification period; S4, summarizing the ledger loads and detection loads of each migration edge during the loading / unloading verification period into ledger migration volume and detection migration volume, respectively, with loading events taking positive values ​​and unloading events taking negative values. S5. The inventory migration diagram is initialized as a corrected inventory migration diagram. Loading and unloading verification periods where the equipment verification deviation does not exceed the first threshold and the inventory verification deviation exceeds the second threshold are identified as periods to be corrected. Abnormal migration edges are identified based on the absolute difference between the ledger load and the detection load of each migration edge within the period to be corrected. The detection load of the abnormal migration edges is used to update the corresponding ledger load in the corrected inventory migration diagram. S6. The allocation requirements, including the cargo units to be allocated and the target time period, are obtained. The preceding migration cargo in the unloading path is determined based on the cargo position relationship in the corrected inventory migration diagram. The estimated unloading completion time is determined based on the ledger load of the cargo units to be allocated and the preceding migration cargo, the loading and unloading equipment operation capacity, and the ship arrival time. The cargo units to be allocated that have been unloaded within the target time period are identified as executable inventory and allocation instructions are generated.

[0006] By identifying loading and unloading events based on lock-up status, detection load, and changes in operational location, and constructing an inventory migration map, a data relationship is established between cargo location, ledger load, and detection load, corresponding to specific migration edges. Actual loading and unloading volumes are determined through changes in ship load. First, the detection migration volume is compared with the actual loading and unloading volume to evaluate the reliability of equipment data. Then, the ledger migration volume is compared with the detection migration volume to identify inventory data deviations, focusing load correction on migration edges where equipment data is reliable but inventory data is abnormal. The corrected cargo location relationships in the inventory migration map and the corrected ledger load, along with the preceding migrated cargo, loading and unloading equipment operational capacity, and ship arrival time, are used to analyze the estimated unloading completion time. This allows for the identification of executable inventory with unloading conditions within the target time period from the registered inventory. This reduces the deviation between inventory records and the actual cargo status, and makes executable inventory closer to the actual unloading conditions of the cargo, thereby improving the accuracy of shipping inventory data analysis and the applicability of the inventory analysis results to cargo allocation operations.

[0007] Further, in step S1, identifying the loading and unloading events includes: determining the moment when the locked state first changes from the unlocked state to the locked state as the start of the operation cycle, and determining the moment when the locked state first changes from the unlocked state to the unlocked state as the end of the operation cycle; when the duration for which the detected load reaches the load threshold within the operation cycle is not less than the load stabilization time, and the operation position is transferred from the external area to the internal stowage position, the migration of the cargo unit corresponding to the operation cycle is determined as a loading event; when the duration for which the detected load reaches the load threshold is not less than the load stabilization time, and the operation position is transferred from the internal stowage position to the external area, the migration of the cargo unit corresponding to the operation cycle is determined as an unloading event.

[0008] By defining the operation cycle by locking the state and combining the detection of the continuous state of the load and cross-regional changes in the operation location to identify loading and unloading events, the misidentification of events caused by equipment moving under no-load, instantaneous load fluctuations, and locking operations that do not result in cargo transfer can be reduced, making loading and unloading events more consistent with the actual cargo transfer process.

[0009] Further, in step S2, constructing the inventory migration map includes: arranging loading and unloading events corresponding to the same cargo unit according to their occurrence sequence, and comparing the target position of the previous loading / unloading event with the starting position of the next loading / unloading event in adjacent loading / unloading events; when the target position and the starting position are inconsistent, determining whether there is a valid in-ship displacement record corresponding to the same cargo unit between the two adjacent loading / unloading events; if there is a valid in-ship displacement record, retaining the target position of the previous loading / unloading event and the starting position of the next loading / unloading event, and associating the record with the two adjacent loading / unloading events; if there is no valid in-ship displacement record, obtaining the inventory position record corresponding to the same cargo unit between the two adjacent loading / unloading events, converting the inventory position record and the corresponding operation position to the ship coordinate system, determining the position corresponding to the inventory position record with the smallest distance from the inventory position record whose distance from the operation position does not exceed the position matching threshold as the calibration position, and using the calibration position to correct the target position of the previous loading / unloading event and the starting position of the next loading / unloading event.

[0010] By comparing the positional continuity of adjacent loading and unloading events for the same cargo unit and distinguishing between valid in-ship displacement and position record anomalies, actual in-ship displacement can be retained as associated records. When no valid in-ship displacement record exists, the inventory position record and equipment operation position are converted to a unified coordinate system for distance matching. The starting and target positions of loading and unloading events can be corrected using the matching position with the smallest distance, reducing the impact of position record offset or untimely updates on inventory migration relationships.

[0011] Further, in step S3, determining the hull stabilization moment includes: based on the equipment data, determining the period during which the locked state of each loading and unloading equipment participating in the voyage loading and unloading operation remains unlocked, the detected load is lower than the empty load threshold, and the duration reaches the empty load duration as a candidate stabilization period; determining the hull attitude change rate and draft change rate within the candidate stabilization period based on the ship data; determining the candidate stabilization period where the hull attitude change rate and draft change rate are continuously lower than the corresponding stabilization threshold as the hull stabilization period, and determining the moment closest to the adjacent loading and unloading event as the hull stabilization moment.

[0012] By utilizing the unlocking status, no-load status, and duration of loading and unloading equipment to identify periods without loading and unloading operations, and then judging the hull status based on the rate of change of hull attitude and the rate of change of draft, the impact of loading and unloading equipment operation disturbances, hull swaying, and instantaneous changes in draft on the selection of stable moments can be reduced, making the load changes between adjacent stable moments more reflective of the corresponding loading and unloading process.

[0013] Further, in step S3, determining the actual loading and unloading volume includes: based on the bow draft data, stern draft data, draft data on both sides, and hull attitude data in the ship data, converting each draft data to a preset reference attitude according to the coordinates of each draft detection position relative to the ship reference plane; querying the ship's hydrostatic data based on the converted draft data to determine the change in ship displacement; determining the change in non-cargo load based on the ballast tank level, fuel tank level, and freshwater tank level in the ship data, and subtracting the change in non-cargo load from the change in ship displacement according to the method of increasing when loading and decreasing when unloading, to obtain the actual loading and unloading volume.

[0014] By converting draft data from different detection locations to the same baseline attitude and deducting changes in non-cargo loads from changes in displacement, the impact of changes in hull heel, trim, and tank loads on the calculation of loading and unloading volumes can be reduced, making the actual loading and unloading volumes closer to the changes in ship loads caused by cargo migration.

[0015] Further, in step S5, the first threshold is determined by multiplying the number of detected loads included in the summary during the loading and unloading verification period by the product of the allowable error of a single load detection, the allowable error of ship displacement detection, and the allowable error of non-cargo load detection; the second threshold is determined by multiplying the number of ledger loads included in the summary during the loading and unloading verification period by the product of the allowable error of a single ledger load, and the product of the number of detected loads included in the summary by the allowable error of a single load detection.

[0016] By determining two thresholds based on the amount of data during the loading and unloading verification period and the allowable error of each type of data, and by including the allowable error of the ledger load and the detection load in the second threshold, the inventory deviation judgment can accommodate the allowable fluctuations of the two types of data, reducing the situation where normal detection errors are identified as inventory anomalies.

[0017] Further, in step S5, determining the abnormal migration edge includes: from the migration edges that have not yet been corrected during the correction period, temporarily replacing the ledger load of each migration edge with the corresponding detection load, calculating the inventory verification deviation after the temporary replacement while keeping other migration edges unchanged, and restoring the corresponding ledger load after calculation; determining the deviation reduction of each migration edge based on the inventory verification deviation before and after the temporary replacement, arranging each migration edge in descending order of the deviation reduction, and arranging them according to the occurrence sequence of loading and unloading events when the deviation reduction is the same; when there is an uncorrected migration edge and the deviation reduction of the first-ranked migration edge is greater than zero, determining the migration edge as the abnormal migration edge, correcting its ledger load using the corresponding detection load, and recalculating the inventory verification deviation; repeating the determination of the abnormal migration edge until the recalculated inventory verification deviation does not exceed the second threshold; when there are no uncorrected migration edges or the deviation reduction of the first-ranked migration edge is not greater than zero, generating a data verification identifier and stopping automatic updates.

[0018] By temporarily replacing the ledger load of each migration edge and calculating the change in inventory verification deviation, the degree of influence of each migration edge on inventory deviation can be determined. By correcting the migration edges sequentially according to the amount of deviation reduction and recalculating the inventory verification deviation after each correction, the migration edges that need to be corrected can be gradually identified, reducing the impact of modifying multiple migration edges at the same time on other inventory data.

[0019] Further, in step S5, updating the ledger load corresponding to the corrected inventory migration graph includes: determining the difference between the detection load of the abnormal migration edge and the ledger load as the load correction amount; transferring the load correction amount to subsequent migration edges of the same cargo unit along the migration direction of the abnormal migration edge, and updating the corrected ledger load associated with each subsequent migration edge according to the load correction amount, until updating to the migration edge corresponding to the unloading event of the cargo unit or the last migration edge of the current voyage.

[0020] By transferring load corrections along the continuous migration relationships of the same cargo unit, load corrections can be reflected in subsequent migration records, reducing inconsistencies in loads between correction ledgers for the same cargo unit. Limiting the transfer scope to the unloading event or the last migration edge of the current voyage can prevent load corrections from being extended to irrelevant migration processes.

[0021] Further, in step S6, the allocation requirement also includes a target unloading location. Determining the pre-transfer goods includes: determining the goods location in the corrected inventory migration diagram and the target unloading location as location nodes; establishing a directed connection between the two location nodes when the loading and unloading equipment can transfer goods between the two location nodes to obtain an unloading reachability relationship; determining a feasible unloading path for the goods unit to be allocated to reach the target unloading location based on the unloading reachability relationship, and determining the sum of the ledger loads of other goods units on each feasible unloading path as the pre-transfer amount; determining the feasible unloading path with the smallest pre-transfer amount as the target unloading path; when the pre-transfer amounts of multiple feasible unloading paths are the same, determining the feasible unloading path with the shortest migration distance as the target unloading path, and determining other goods units on the target unloading path as the pre-transfer goods.

[0022] By establishing unloading reachability relationships based on the cargo transfer capabilities of loading and unloading equipment at different location nodes, the pre-migration volume corresponding to different feasible unloading paths can be compared. Prioritizing paths with smaller pre-migration volumes and shorter migration distances can reduce the amount of other cargo loads and operating distances that need to be migrated before the cargo units to be transferred are unloaded, making the determination of pre-migration cargo more consistent with the cargo location on board and the operating conditions of loading and unloading equipment.

[0023] Further, in step S6, determining the estimated unloading completion time includes: determining the cargo migration order based on the positional relationship between the cargo unit to be transferred and the preceding cargo; determining the target loading and unloading equipment corresponding to each cargo unit from among loading and unloading equipment whose operating range covers the location and whose rated load is not lower than the corresponding register load, based on the ledger load and location of each cargo unit; determining the operation time of each cargo unit based on the horizontal migration distance, lifting height, and the horizontal movement speed and lifting speed of the corresponding target loading and unloading equipment; for the cargo unit ranked first, determining the latest time among the start time of the target time period, the ship's arrival time, and the available time of the corresponding target loading and unloading equipment as the operation start time; for the remaining cargo units, determining the later time among the operation completion time of the previous cargo unit and the available time of the target loading and unloading equipment corresponding to the current cargo unit as the operation start time, and determining the operation completion time of the last cargo unit as the estimated unloading completion time.

[0024] By determining the migration sequence according to the location relationship of the goods, and matching equipment and calculating the operation time based on the cargo load, location and loading and unloading equipment parameters, the expected unloading completion time can reflect the cargo migration sequence, equipment operation capacity and equipment availability, thereby improving the accuracy of the feasibility judgment of cargo unloading within the target time period.

[0025] Further, step S6 also includes: configuring an instruction identifier for the transfer instruction, and collecting the instruction identifier, transfer instruction execution status, and actual stopping position of the cargo unit fed back by the loading and unloading equipment; associating the transfer instruction execution status and actual stopping position with the corresponding transfer instruction and migration edge according to the instruction identifier; when the transfer instruction execution status indicates that the cargo unit has completed migration, marking the corresponding migration edge as a completed migration edge, and updating the corresponding target position to the current position of the cargo unit; when the transfer instruction execution status indicates that the cargo unit migration is interrupted, establishing an interruption position node according to the actual stopping position, using the interruption position node as a dividing node, dividing the corresponding migration edge into a completed migration edge from the starting position to the interruption position node and an unexecuted migration edge from the interruption position node to the original target position, and re-determining the executable inventory and transfer instruction based on the updated corrected inventory migration map.

[0026] By associating execution status, actual stopping position, transfer instructions, and migration edges with instruction identifiers, the inventory migration map can be updated according to the actual migration results of the goods unit. When migration is interrupted, the completed migration edges and the pending migration edges are divided according to the actual stopping position. This can preserve the goods migration process that has already occurred and allow the redefined executable inventory and transfer instructions to be adjusted as the actual location of the goods changes.

[0027] A second aspect of this application provides a data analysis system for shipping inventory management, the system comprising: an event identification module, a migration map construction module, a loading / unloading volume determination module, a deviation determination module, an inventory correction module, and a transfer instruction module. The event recognition module acquires inventory data, equipment data, and vessel data for a voyage, and identifies loading and unloading events of cargo units based on the locking status, detection load, and changes in operating position in the equipment data. The migration map construction module constructs an inventory migration map based on the cargo units, starting positions, and target positions corresponding to the loading and unloading events, associating each migration edge with the corresponding loading / unloading event, ledger load, and detection load. The loading / unloading volume determination module determines two hull stability moments before and after the start and end of consecutive loading / unloading events based on the vessel data, using the time range between these two hull stability moments as the loading / unloading verification period, and determining the actual loading / unloading volume based on changes in vessel displacement and non-cargo load during this verification period. The deviation determination module assigns positive values ​​to loading events and negative values ​​to unloading events, summarizing the ledger load and detection load of each migration edge during the loading / unloading verification period into ledger migration volume and detection migration volume, respectively. The deviation is then compared with the actual loading / unloading volume. The absolute difference between actual loading and unloading volumes determines the equipment verification deviation, and the absolute difference between the ledger migration volume and the detected migration volume determines the inventory verification deviation. The inventory correction module is used to initialize the inventory migration diagram as a corrected inventory migration diagram, determine the loading and unloading verification period when the equipment verification deviation does not exceed the first threshold and the inventory verification deviation exceeds the second threshold as the period to be corrected, determine the abnormal migration edge according to the absolute difference between the ledger load and the detected load of each migration edge in the period, and update the corresponding ledger load in the corrected inventory migration diagram using the detected load of the abnormal migration edge. The transfer instruction module is used to obtain the transfer requirements including the cargo unit to be transferred and the target period, determine the preceding migration cargo in the unloading path according to the cargo position relationship of the corrected inventory migration diagram, determine the expected unloading completion time according to the ledger load of the cargo unit to be transferred and the preceding migration cargo, the loading and unloading equipment operation capacity and the ship arrival time, determine the cargo unit to be transferred that has been unloaded in the target period as executable inventory and generate a transfer instruction.

[0028] Through data transfer between the event recognition module, migration map construction module, loading and unloading volume determination module, deviation determination module, inventory correction module, and transfer instruction module, loading and unloading equipment data, ship data, and inventory data can be used sequentially for loading and unloading event recognition, inventory migration verification, abnormal data correction, and executable inventory analysis. This enables each processing step to form a continuous data analysis process, which helps improve the consistency between shipping inventory data and the actual migration status of goods, and makes the generated transfer instructions more consistent with the cargo location, loading and unloading equipment, and operation time conditions. Attached Figure Description

[0029] Figure 1A flowchart illustrating a data analysis method for shipping inventory management provided in this application embodiment; Figure 2 A schematic diagram of the framework of a data analysis system for shipping inventory management provided in this application embodiment; Figure 3 A schematic diagram of an electronic device provided in an embodiment of this application. Detailed Implementation

[0030] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems and methods have been omitted so as not to obscure the description of this application with unnecessary detail.

[0031] Existing shipping inventory management systems typically update cargo load and location based on cargo ledgers or operational records reported by loading and unloading equipment. When loading and unloading operations are frequent or the same cargo undergoes multiple location changes, the formation time and update methods of different data may differ, easily leading to discrepancies between inventory records and actual operational status. Furthermore, when multiple loading and unloading records accumulate to create inventory discrepancies, existing methods struggle to map these discrepancies back to specific loading and unloading processes.

[0032] Analysis revealed that the main reason for the aforementioned problems lies in the fact that data generated from cargo ledgers, loading and unloading equipment, and ship operations reflect different aspects of cargo transportation status, and there is a lack of correlation between these data types and the cargo migration process. When one type of data is delayed, omitted, or inaccurate, it is difficult to use other data to determine its reliability. Furthermore, whether cargo can be transferred depends not only on inventory records but also on the cargo's location and actual loading and unloading conditions. Therefore, analysis based solely on registered inventory may fail to reflect the actual unloading of cargo within a given timeframe.

[0033] Based on the above analysis, this application takes loading and unloading events of cargo units as the processing objects, establishes the migration relationship between loading / unloading events, cargo location, and load data, and performs hierarchical verification of data consistency during the loading / unloading process in conjunction with changes in ship load to identify cargo migration records that need correction. The corrected cargo migration relationship is further combined with cargo location, loading / unloading equipment, and operation time to determine executable inventory that meets the transfer conditions, thus forming a continuous processing flow for inventory migration analysis, anomaly record correction, and transfer operation analysis.

[0034] This application can be applied to container ships and transport vessels carrying standardized cargo units with lockable lifting points, as well as to terminal loading and unloading systems with locking status detection, load detection, and operational position detection functions. The cargo unit can be a container, palletized cargo, or other cargo objects that can be locked, identified, and independently moved by loading and unloading equipment. The loading and unloading equipment can include quay cranes, ship cranes, yard cranes, reach stackers, or other equipment with cargo locking, load detection, and position detection functions.

[0035] Please refer to Figure 1 , Figure 1 This application illustrates a data analysis method for shipping inventory management, comprising the following steps: S1, acquiring voyage inventory data, equipment data, and vessel data; identifying loading and unloading events of cargo units based on lockout status, detection load, and changes in operating position in the equipment data; S2, constructing an inventory migration diagram based on the cargo units, starting positions, and target positions corresponding to the loading and unloading events, and associating each migration edge with the corresponding loading / unloading events, ledger load, and detection load; S3, determining two hull stability moments before and after the start and end of consecutive loading / unloading events based on vessel data; using the time range between the two hull stability moments as the loading / unloading verification period; and determining the actual loading / unloading volume based on changes in vessel displacement and non-cargo load during the loading / unloading verification period; S4, summarizing the ledger load and detection load of each migration edge during the loading / unloading verification period into ledger migration volume and detection migration volume, respectively, with loading events taking positive values ​​and unloading events taking negative values. S5. Determine the equipment verification deviation based on the absolute difference between the detected migration volume and the actual loading and unloading volume, and determine the inventory verification deviation based on the absolute difference between the ledger migration volume and the detected migration volume; S6. Initialize the inventory migration diagram as a corrected inventory migration diagram, and determine the loading and unloading verification period when the equipment verification deviation does not exceed the first threshold and the inventory verification deviation exceeds the second threshold as the period to be corrected. Determine the abnormal migration edge based on the absolute difference between the ledger load and the detected load of each migration edge in the period to be corrected, and update the corresponding ledger load in the corrected inventory migration diagram using the detected load of the abnormal migration edge; S7. Obtain the allocation requirements including the cargo units to be allocated and the target period, determine the preceding migration cargo in the unloading path based on the cargo position relationship in the corrected inventory migration diagram, determine the expected unloading completion time based on the ledger load of the cargo units to be allocated and the preceding migration cargo, the loading and unloading equipment operation capacity and the ship arrival time, determine the cargo units to be allocated that have been unloaded in the target period as executable inventory and generate allocation instructions.

[0036] The specific implementation methods of each step in this application are described in detail below. This application provides a data analysis method and system for shipping inventory management. It analyzes cargo units, loading / unloading operations, and inventory status during a ship's voyage. Cargo registration data, loading / unloading equipment operation data, and ship operation data are correlated according to cargo units and operation time. This is used to identify cargo migration processes, analyze inventory data consistency, correct abnormal inventory records, and determine executable inventory. Shipping inventory management can include the management of cargo quantity, load, location, migration status, and transferability status. Data analysis can be performed by a shipping inventory management server or by data processing equipment connected to the inventory management system, loading / unloading equipment control system, and ship monitoring system.

[0037] In step S1, a voyage refers to a transportation process completed by a vessel according to a transportation plan, which can be identified by voyage number, vessel number, and planned start and end times. Inventory data records the cargo registration status, including cargo unit identifier, registration location, ledger load, loading status, unloading status, and update time. Equipment data is generated when loading and unloading equipment performs cargo transfer operations, including equipment identifier, loading / unloading task number or cargo identification result, locking status, detection load, operation location, and collection time. Vessel data reflects the vessel's load, attitude, and voyage status, including draft, heel angle, trim angle, tank level, and vessel arrival time. Data acquisition can be achieved through real-time data reception via a data interface or by reading from a database at preset intervals.

[0038] In one implementation, the data analysis system establishes a voyage dataset based on the voyage number, converts the three types of data to a unified time base, and arranges them according to the collection time. Real-time reception can write new data into the voyage dataset when new data is generated by loading / unloading equipment or ship monitoring devices; periodic reading can read new data at preset time intervals and exclude duplicate records based on data identifiers. Equipment data can be associated with cargo unit identifiers in inventory data through loading / unloading task numbers; if loading / unloading task numbers are not included, associations can be established based on equipment identifiers, operating periods, and cargo unit identifiers obtained through optical character recognition or radio frequency identification. When data lacks a voyage number, the voyage can be matched based on the ship number and collection time; when data lacks collection time, equipment identifiers, or cargo unit association information, it can be marked as data to be verified and not directly used to identify loading / unloading events.

[0039] The locked state reflects the connection or separation of the spreader and the cargo unit; the detected load reflects the change of loading / unloading equipment from empty to loaded or from loaded back to empty; and the change in operating position reflects the movement of the cargo unit between the external area and the internal stowage location. The detected load can be the net cargo load obtained by subtracting the weight of the spreader, hook, and rigging from the load detection value of the loading / unloading equipment. When there are multiple load sampling values ​​within a single operating cycle, the average, median, or end value of the stable interval where the detected load consistently does not fall below the load threshold can be used as the detected load for the corresponding migration edge. The data analysis system extracts continuous equipment data from the moment the locked state changes from unlocked to locked until the locked state returns to unlocked. A loading event is generated when the work location moves from the external area to the internal stowage location, and an unloading event is generated when it moves from the internal stowage location to the external area. When the work location remains in the same area, the corresponding data can be identified as intra-area movement data and not as loading or unloading events. When intra-area movement occurs between two internal locations, a valid internal movement record can be generated and associated with the corresponding cargo unit and adjacent loading / unloading events, but it is not included in the ledger migration volume and inspection migration volume. For example, if a spreader locks container C01 at the terminal handover location, and the inspection load after deducting the spreader's own weight is 20.2 tons, and then moves it to stowage location B12-R04-T06 and unlocks it, a loading event record including container number, event type, start and end time, starting position, target position, and inspection load can be generated.

[0040] In step S2, constructing the inventory migration graph refers to establishing the relationships between cargo units, loading / unloading events, cargo locations, and load data. Location nodes represent the position of a cargo unit before or after a loading / unloading event, and migration edges represent a single migration of a cargo unit from its starting position to its target position. Migration edges have direction; the migration edge corresponding to a loading event can point from an external location to an internal stowage location, and the migration edge corresponding to an unloading event can point from an internal stowage location to an external location. The inventory migration graph can be stored using nodes and edges in a graph database, or it can be stored using a location node table and a migration edge table. The inventory migration graph can also be associated with internal ship relocation records, which include the position before relocation, the position after relocation, the cargo unit identifier, and the operation time, and an index relationship is established with adjacent loading / unloading events before and after the relocation.

[0041] In one implementation, the data analysis system establishes directed migration edges based on the starting and destination positions in a loading / unloading event. It then queries the inventory data for ledger loads using cargo unit identifiers and extracts the detection loads from equipment data using equipment identifiers and event time ranges. Association refers to establishing index relationships through cargo unit identifiers, loading / unloading task numbers, equipment identifiers, or event time ranges, enabling the same migration edge to point to corresponding inventory and equipment records. A graph database approach can directly store locations as nodes and loading / unloading events as edges; a relational database approach can record starting and destination position fields in the migration edge table and associate them with the location node table through location encoding.

[0042] When the same cargo unit undergoes multiple migrations, migration edges can be arranged according to the event occurrence time. Normally, the target position of the previous migration edge is consistent with the starting position of the subsequent migration edge; if they are inconsistent, both original positions can be retained, and a position discontinuity marker can be set for the corresponding migration edge to avoid directly merging inconsistent positions. Taking container C01 as an example, the ledger load in the inventory data is 20 tons, and the detection load in the loading event is 20.2 tons. A migration edge can be established from the terminal handover position to the stowage position B12-R04-T06, and the container number, loading event, ledger load, and detection load can be written in. When C01 is moved or unloaded again, the corresponding migration edge can be established again. When there is a valid shipboard relocation record confirmed by cargo identification, operation time, and position changes between two loading / unloading events, the target position of the previous loading / unloading event and the starting position of the subsequent loading / unloading event are retained, and this record is associated with the two migration edges.

[0043] In step S3, a continuous loading and unloading event refers to one or more loading and unloading events occurring within a continuous operation period. These events can be performed by the same loading and unloading equipment or by multiple loading and unloading equipment. The hull stabilization moment is the point in time when the ship's draft and attitude changes are within permissible ranges. Adjacent hull stabilization moments are two moments selected from the hull stabilization periods before and after the start and end of a set of continuous loading and unloading events, respectively, and jointly define the corresponding loading and unloading verification period for that set of continuous loading and unloading events. They are not two adjacent sampling moments within the same hull stabilization period. The time range between two adjacent hull stabilization moments forms the loading and unloading verification period. A loading and unloading verification period can contain a single loading event, a single unloading event, or a combination of loading and unloading events.

[0044] In one implementation, the data analysis system reads draft, heel angle, and pitch angle according to a preset sampling period. When changes in draft and attitude are within the corresponding allowable ranges over multiple consecutive sampling periods, a stable period for the hull can be identified. The system then selects the closest moment to the loading / unloading event from the stable periods before and after the event. If no stable period is formed between multiple loading / unloading events, these events can be grouped into the same loading / unloading verification period; if a stable period is formed between two loading / unloading events, they can be assigned to different loading / unloading verification periods.

[0045] The data analysis system determines the change in ship displacement based on the draft and hydrostatic data at two stable hull times, and determines the change in non-cargo load based on changes in ballast tanks, fuel tanks, and freshwater tanks. Both changes in ship displacement and non-cargo load are taken as positive values ​​for increases in ship load and negative values ​​for decreases in ship load. The actual loading / unloading volume is the difference between the change in ship displacement and the change in non-cargo load. When the change in displacement is 60.5 tons and the change in non-cargo load is 0.5 tons, the actual loading / unloading volume is 60 tons, indicating 60 tons loaded. When the change in displacement is -40.3 tons and the change in non-cargo load is -0.3 tons, the actual loading / unloading volume is -40 tons, indicating 40 tons unloaded. When 30 tons are loaded and 20 tons are unloaded during the same period, the actual loading / unloading volume is 10 tons, indicating a net increase of 10 tons.

[0046] In step S4, a positive value for a loading event means the loading load is treated as an increase in the ship's load, while a negative value for a unloading event means the unloading load is treated as a decrease in the ship's load. The summary is performed by directionally accumulating the migration side loads according to the direction of the loading and unloading events. When the loading and unloading verification period only includes loading events, each migration side load is accumulated with a positive value; when it only includes unloading events, each migration side load is accumulated with a negative value; when it includes both loading and unloading events, positive and negative values ​​are assigned respectively before merging. The summary result obtained from the ledger load is the ledger migration amount, and the summary result obtained from the detection load is the detection migration amount.

[0047] In one implementation, the data analysis system queries all migration edges within the loading / unloading verification period based on the event time, and reads the event type, ledger load, and detection load of each migration edge. For a loading event, the corresponding load can be multiplied by the positive direction identifier; for an unloading event, the corresponding load can be multiplied by the negative direction identifier. For example, if the loading detection load is 30 tons and the unloading detection load is 20 tons within the period, the detection migration amount increases by 10 tons; if the corresponding ledger loads are 32 tons and 20 tons respectively, the ledger migration amount increases by 12 tons.

[0048] The absolute difference is the undirected value obtained by subtracting the two load changes. Equipment verification deviation is obtained from the absolute difference between the detected migration amount and the actual loading / unloading amount, while inventory verification deviation is obtained from the absolute difference between the ledger migration amount and the detected migration amount. Taking the aforementioned example of loading 30 tons and unloading 20 tons, if the actual loading / unloading amount increases by 10.2 tons, the equipment verification deviation is 0.2 tons; if the ledger migration amount increases by 12 tons and the detected migration amount increases by 10 tons, the inventory verification deviation is 2 tons. The same absolute difference method is used for periods containing only loading events or only unloading events. When the same loading / unloading verification period contains both loading and unloading events, if there is a stable moment in the middle, the loading / unloading verification period can be split according to that stable moment; if it cannot be split and the ratio of the absolute value of the actual loading / unloading amount to the sum of the absolute values ​​of the loading and unloading loads is lower than the preset offset ratio, a two-way offset risk indicator can be set, and automatic load correction can be stopped using that period.

[0049] In step S5, the inventory migration diagram can be initialized using either a copy method or a field expansion method. When using the copy method, the original inventory migration diagram remains read-only, and the copied diagram serves as the corrected inventory migration diagram. When using the field expansion method, the original ledger load field and the corrected ledger load field can be set separately in the original migration edge. If there is no period to be corrected, the corrected ledger load remains the original ledger load; if there is a period to be corrected, only the corrected ledger load corresponding to the abnormal migration edge is updated.

[0050] The first threshold is the upper limit of the allowable deviation between equipment inspection data and changes in ship load, and the second threshold is the upper limit of the allowable deviation between inventory registration data and equipment inspection data. When the equipment verification deviation does not exceed the first threshold and the inventory verification deviation does not exceed the second threshold, the migration edge for the corresponding time period can be retained; when the equipment verification deviation does not exceed the first threshold and the inventory verification deviation exceeds the second threshold, the corresponding time period is designated as a period to be corrected; when the equipment verification deviation exceeds the first threshold, the equipment data is not used to correct the ledger load, and an equipment data anomaly flag can be set for the corresponding time period. Therefore, inventory records will not be directly replaced when equipment data has not passed verification.

[0051] For the period to be calibrated, migration edges can be arranged according to the absolute difference between the ledger load and the detection load. Alternatively, one or more abnormal migration edges can be identified by temporarily replacing the ledger load and comparing the changes in inventory verification deviation. If only one obvious abnormal migration edge exists, that migration edge can be updated directly. If multiple abnormal migration edges exist, the inventory verification deviation can be updated and recalculated sequentially until the deviation does not exceed the second threshold. For example, if the absolute differences in load of the three migration edges are 0.2 tons, 10.1 tons, and 0.2 tons, respectively, the migration edge with a difference of 10.1 tons can be identified as an abnormal migration edge, and the original ledger load of 28 tons can be replaced with a detection load of 17.9 tons. At the same time, the load before calibration, the load after calibration, and the calibration time are recorded.

[0052] In step S6, the allocation request includes the cargo unit to be allocated and the target time period, and may also include the target unloading location. Cargo positional relationships include the adjacent, stacking, and obstructing relationships of different cargo units in the ship's bay, column, and deck positions. The unloading path is the sequence of positions the cargo unit to be allocated will pass through to move from its current position to the target unloading location. If there are no other cargo above the cargo unit to be allocated and the movement channel is not occupied, there may be no preceding relocation cargo; if cargo above or within the channel obstructs the movement, the corresponding cargo can be identified as preceding relocation cargo; if multiple unloading paths exist, the preceding relocation cargo corresponding to each path can be identified separately.

[0053] In one implementation, the data analysis system queries and corrects the inventory migration map to obtain the location and ledger load of the cargo units to be transferred and the preceding transferred cargo. The operational capacity of the loading and unloading equipment includes the operating range, rated load, horizontal movement speed, lifting speed, and available time. The data analysis system can select target loading and unloading equipment from those whose operating range covers the cargo location and whose rated load meets the cargo load requirements, and calculate the operation time in the order of preceding transferred cargo first, followed by the cargo units to be transferred. The operation start time can be no earlier than the start time of the target time period, the vessel arrival time, and the available time of the loading and unloading equipment; the completion time of the last operation is used as the estimated unloading completion time. The vessel arrival time can be the planned arrival time, the estimated arrival time, or the actual arrival time; when generating or updating transfer instructions, the most recently updated arrival time that reflects the current voyage status can be used.

[0054] If the estimated unloading completion time is no earlier than the start time of the target time period and no later than the end time of the target time period, the corresponding cargo unit to be transferred can be added to the executable inventory. If the estimated unloading completion time is equal to the start or end time of the target time period, it still belongs to the target time period. If the estimated unloading completion time is later than the end time of the target time period, it can be excluded from the current executable inventory. If the ship's arrival time is later than the end time of the target time period, it can be directly determined that the current transfer demand does not meet the time conditions. Taking container C01 as an example, if C02 is above C01, C02 can be identified as the cargo to be moved in advance. If the ship arrives at 10:00, it takes 15 minutes to move C02 and 20 minutes to unload C01, then the estimated unloading completion time is 10:35. When the target time period is from 10:00 to 11:00, C01 can be added to the executable inventory. When the target time period ends at 10:30, C01 is not included in the current executable inventory.

[0055] This application's embodiments identify loading and unloading events and construct an inventory migration map based on changes in locking status, detection load, and operational position. This establishes a data relationship between cargo position, ledger load, and detection load, corresponding to specific migration edges. Actual loading and unloading volumes are determined through changes in ship load. First, the detected migration volume is compared with the actual loading and unloading volume to evaluate the reliability of equipment data. Then, the ledger migration volume is compared with the detected migration volume to identify inventory data deviations. Load correction focuses on migration edges where equipment data is reliable but inventory data is abnormal. The corrected cargo position relationships in the inventory migration map and the corrected ledger load, along with the preceding migrated cargo, loading and unloading equipment operational capacity, and ship arrival time, are used to analyze the estimated unloading completion time. This identifies executable inventory with unloading conditions within the target time period from the registered inventory. Therefore, the deviation between inventory records and the actual cargo status can be reduced, and executable inventory can be made closer to the actual unloading conditions of the cargo, thereby improving the accuracy of shipping inventory data analysis and the applicability of inventory analysis results to cargo allocation operations.

[0056] In some embodiments disclosed in this application, step S1, identifying loading and unloading events, includes: determining the moment when the locked state first changes from the unlocked state to the locked state as the start of the operation cycle, and determining the moment when the locked state first changes from the unlocked state to the unlocked state as the end of the operation cycle; when the duration for which the detected load reaches the load threshold within the operation cycle is not less than the load stabilization time, and the operation position is transferred from the external area to the internal stowage position, the migration of the cargo unit corresponding to the operation cycle is determined as a loading event; when the duration for which the detected load reaches the load threshold is not less than the load stabilization time, and the operation position is transferred from the internal stowage position to the external area, the migration of the cargo unit corresponding to the operation cycle is determined as an unloading event.

[0057] The state change moment is the moment when the locked state changes after confirmation. The first change from unlocked to locked refers to the earliest state change in the current candidate job process that lasts for the required lock confirmation duration; the first return to unlock refers to the earliest state change after the locked state that lasts for the required unlock confirmation duration. When the lock signal changes repeatedly within a short period, changes shorter than the state confirmation duration can be treated as signal jitter and not used to re-divide the job cycle. After completing one job cycle, the next job cycle is identified starting from the subsequent unlock-to-lock state change.

[0058] The detection load reaching the load threshold means that the detection load is not less than the load threshold; the duration not less than the load stabilization time means that the detection load continuously meets the load threshold for a preset duration. If the detection load only exceeds the load threshold for a short period, it can be treated as an impact load or a momentary fluctuation. When the work position moves from the external area to the internal stowage area, it corresponds to the loading direction; when the work position moves from the internal stowage area to the external area, it corresponds to the unloading direction; when the work position is always within the internal area or always outside the internal area, it can be treated as an intra-area displacement and will not generate a loading or unloading event. Displacement within the internal area can form a valid intra-area displacement record and be associated with adjacent loading and unloading events, but it is not included in the total loading and unloading volume.

[0059] For example, if, after the spreader locks the container, the load is continuously monitored at no less than 18 tons for 5 seconds, the work position moves from the dock handover point to the ship's stowage point, and the container is unlocked at the target location, this work cycle can be defined as a loading event. If the load is monitored to exceed 18 tons for only 1 second, and the load stabilization period is 3 seconds, then a loading event is not determined based on this instantaneous load. If, after the spreader locks the cargo, it moves from one ship's stowage point to another, it can be recorded as a shipboard relocation, but the loading status remains unchanged.

[0060] This application embodiment defines the operation cycle by limiting the lock-in state and identifies loading and unloading events by combining the continuous state of the detected load and cross-regional changes in the operation position. This can reduce the misidentification of events caused by equipment moving under no-load, instantaneous load fluctuations, and lock-in operations that do not result in cargo transfer, making the loading and unloading events more consistent with the actual cargo transfer process.

[0061] In some embodiments disclosed in this application, step S2, constructing an inventory migration map, includes: arranging loading and unloading events corresponding to the same cargo unit according to their occurrence sequence, and comparing the target position of the previous loading / unloading event with the starting position of the next loading / unloading event in adjacent loading / unloading events; when the target position and the starting position are inconsistent, determining whether there is a valid shipboard displacement record corresponding to the same cargo unit between two adjacent loading / unloading events; if there is a valid shipboard displacement record, retaining the target position of the previous loading / unloading event and the starting position of the next loading / unloading event, and associating the record with the two adjacent loading / unloading events; if there is no valid shipboard displacement record, obtaining the inventory position record corresponding to the same cargo unit between two adjacent loading / unloading events, converting the inventory position record and the corresponding operation position to the ship coordinate system, determining the position corresponding to the inventory position record with the smallest distance from the inventory position record whose distance from the operation position does not exceed the position matching threshold as the calibration position, and using the calibration position to correct the target position of the previous loading / unloading event and the starting position of the next loading / unloading event.

[0062] The sequence of events can be arranged by the completion time of the loading / unloading events. If the target location of a previous loading / unloading event has the same code as the starting location of a subsequent event, a continuous migration relationship can be directly established. If the location codes are different, the original event records are not changed initially, and the equipment operation records and inventory location records corresponding to the same cargo unit between the two events are retrieved. If the equipment operation record shows that the cargo has moved from the previous target location to the next starting location, and the cargo identification, operation time, and location change match, the record is identified as a valid in-ship movement record and associated with the two loading / unloading events. If no valid in-ship movement record exists, the inventory location record is used to perform position calibration. The inventory location record can be periodic inventory data, manually confirmed location data, or cargo location data written after equipment operation.

[0063] When inventory locations are coded using bay, column, and tier positions, they can be converted to ship coordinates using a stowage location mapping table. When operational locations use continuous equipment coordinates, conversion can be performed based on the translation and direction relationship between the equipment coordinate origin and the ship coordinate origin. The corresponding operational location can be selected from the equipment location whose recording time is closest to that of the inventory location. If only one inventory location meets the location matching threshold, that location is used directly; if multiple inventory locations meet the threshold, the location with the smallest spatial distance is used; if the distances are the same, the location with the later recording time can be used; if no location meets the location matching threshold, the original location is retained and a location verification pending flag is set, without automatic correction.

[0064] Taking container C01 as an example, the target position of the previous loading event is B12-R04-T06, and the starting position of the subsequent unloading event is B12-R04-T08. There are no valid in-ship relocation records between the two events, but there is a storage position record for B12-R04-T06. The converted coordinates of this position are 0.3 meters away from the equipment operation position at the same time, and the position matching threshold is 0.5 meters. Therefore, B12-R04-T06 can be determined as the calibration position and used as the target position for the previous loading event and the starting position for the subsequent unloading event. If the distance between all storage positions and operation positions exceeds 0.5 meters, the two positions are not automatically unified. If the equipment operation record indicates that C01 has been moved from B12-R04-T06 to B12-R04-T08, this record is associated with both loading and unloading events, but the original positions of the two events are not unified.

[0065] This application embodiment compares the positional continuity of adjacent loading and unloading events of the same cargo unit and distinguishes between valid in-ship displacement and abnormal position records. It can retain the actual in-ship displacement records. When there are no valid in-ship displacement records, the inventory position records and equipment operation positions are converted to a unified coordinate system for distance matching. This can correct the starting and target positions of loading and unloading events and reduce the impact of position record offset or untimely updates on inventory migration relationships.

[0066] In some embodiments disclosed in this application, step S3, determining the hull stabilization moment, includes: determining, based on equipment data, a period in which the locked state of each loading and unloading equipment participating in the voyage loading and unloading operation remains unlocked, the detected load is lower than the no-load threshold, and the duration reaches the no-load duration as a candidate stabilization period; determining the hull attitude change rate and draft change rate within the candidate stabilization period based on ship data; determining the candidate stabilization period in which the hull attitude change rate and draft change rate are continuously lower than the corresponding stabilization threshold as the hull stabilization period, and determining the moment closest to the adjacent loading and unloading event as the hull stabilization moment.

[0067] The loading and unloading equipment participating in the voyage's loading and unloading operations can be determined based on the voyage operation plan or equipment operation records. Only when all loading and unloading equipment participating in the current ship's loading and unloading operations meets the unlocking, no-load, and duration conditions will the corresponding time range be determined as a candidate stable period. Other loading and unloading equipment not participating in the current ship's operations are not included in the judgment. The no-load threshold can be greater than the detection value corresponding to the spreader's own weight to accommodate sensor zero-point offset; the no-load duration is used to exclude short equipment pauses.

[0068] The rates of change of hull attitude can include the rates of change of heel angle and the rates of change of trim angle, while the rate of change of draft can be determined based on the draft data of the bow, stern, and both sides. When all rates of change are consistently below their corresponding stability thresholds, the candidate stability period can be determined as the hull stability period. For stability periods preceding loading / unloading events, the time closest to the end of the loading / unloading event can be selected; for stability periods following loading / unloading events, the time closest to the start of the loading / unloading event can be selected; when multiple stability periods exist, the stability period with the smallest time interval should be selected.

[0069] In one implementation, search time ranges can be set before and after loading / unloading events. If no stable periods for the hull are found within the preset range, the search range can be expanded. If no stable periods are found after expansion, the corresponding loading / unloading event group can be marked as lacking stable moments and will not be included in the automatic verification based on ship load changes. This process will not use moments with large hull fluctuations as stable moments.

[0070] This application embodiment identifies periods without loading or unloading operations by utilizing the unlocking status, no-load status, and duration of the loading and unloading equipment. Then, it determines the hull status based on the hull attitude change rate and draft change rate. This reduces the impact of loading and unloading equipment operation disturbances, hull swaying, and instantaneous draft changes on the selection of stable moments, making the load changes between adjacent stable moments better reflect the corresponding loading and unloading process.

[0071] In some embodiments disclosed in this application, step S3, determining the actual loading and unloading volume, includes: converting the draft data to a preset reference attitude based on the bow draft data, stern draft data, draft data on both sides, and hull attitude data in the ship data, according to the coordinates of each draft detection position relative to the ship reference plane; querying the ship's hydrostatic data based on the converted draft data to determine the change in ship displacement; determining the change in non-cargo load based on the ballast tank level, fuel tank level, and freshwater tank level in the ship data, and deducting the change in non-cargo load from the change in ship displacement according to the method of increasing when loading and decreasing when unloading, to obtain the actual loading and unloading volume.

[0072] The preset reference attitude can be the hull attitude with no roll and in a preset trim state. The data analysis system can convert each draft value into the equivalent draft under the reference attitude based on the longitudinal and transverse coordinates of each draft detection position relative to the ship's reference plane, combined with the roll and trim angles. The converted bow, stern, and both sides draft can be used to determine the average draft and trim state, and then the ship's displacement can be retrieved from the corresponding ship's hydrostatic tables, hydrostatic curves, or displacement dataset. When the ship's hydrostatic data is based on a preset water density, the actual water density of the water area during the loading and unloading verification period can also be obtained, and the displacement can be corrected according to the ratio of the actual water density to the preset water density.

[0073] The liquid levels in ballast tanks, fuel tanks, and freshwater tanks can be converted into liquid volume based on the corresponding tank capacity tables, and combined with the liquid density to obtain the load for each tank. Increases in load due to rising liquid levels are taken as positive values, while decreases in load due to falling liquid levels are taken as negative values. When multiple tanks change loads simultaneously, the changes in loads from each tank are summarized in positive and negative directions as non-cargo load changes. If draft data or hull attitude data affecting displacement calculation are missing, the corresponding loading / unloading verification period can be marked as having incomplete displacement data, and automatic verification will not be performed.

[0074] For example, when the displacement changes by 60.5 tons, the ballast water load increases by 0.4 tons and the fuel oil load increases by 0.1 tons, the non-cargo load changes by 0.5 tons, and the actual loading and unloading volume is 60 tons, indicating that 60 tons are loaded onto the ship; when the displacement changes by -40.3 tons, the ballast water load decreases by 0.2 tons and the fuel oil load decreases by 0.1 tons, the non-cargo load changes by -0.3 tons, and the actual loading and unloading volume is -40 tons, indicating that 40 tons are unloaded; when 30 tons are loaded and 20 tons are unloaded in the same period, the actual loading and unloading volume is 10 tons, indicating a net increase of 10 tons.

[0075] This application embodiment converts draft data from different detection locations to the same baseline attitude and deducts changes in non-cargo loads from changes in displacement. This reduces the impact of changes in hull heel, trim, and tank loads on the calculation of loading and unloading volumes, making the actual loading and unloading volumes closer to the changes in ship loads caused by cargo migration.

[0076] In some embodiments disclosed in this application, in step S5, the product of the number of detected loads included in the summary and the allowable error of a single load detection, the sum of the allowable error of ship displacement detection and the allowable error of non-cargo load detection during the loading and unloading verification period, is determined as a first threshold; the product of the number of ledger loads included in the summary and the allowable error of a single ledger load, and the sum of the product of the number of detected loads included in the summary and the allowable error of a single load detection, is determined as a second threshold.

[0077] The number of loads included in the summary corresponds to the number of migration edges included in the calculation of the load migration during the loading and unloading calibration period. The permissible error for a single load test can be configured based on the accuracy parameters of the load testing device on the loading and unloading equipment. When multiple loading and unloading devices have different testing errors, the permissible errors corresponding to each loading and unloading event can be accumulated separately, or the larger permissible error can be multiplied by the number of loads tested. The permissible error for ship displacement testing can include draft testing error and hydrostatic data conversion error; the permissible error for non-cargo load testing can include liquid level testing error, tank capacity conversion error, and density value error.

[0078] The number of ledger loads included in the aggregation corresponds to the number of migration edges included in the ledger migration calculation. The permissible error for a single ledger load can be configured based on cargo weighing accuracy or inventory management rules. When different cargo units have different permissible errors, the larger permissible error can be selected for product calculation, or a unified value applicable to the current voyage can be converted first. Since inventory verification deviation is obtained by comparing ledger migration volume with detection migration volume, the second threshold also includes the permissible error of the detection load included in the aggregation to accommodate the respective permissible errors of both types of data.

[0079] For example, if a loading and unloading verification period includes three loading and unloading events, with a permissible error of 0.1 tons for a single load detection, 0.15 tons for ship displacement detection, and 0.05 tons for non-cargo load detection, then the first threshold is 0.5 tons. When the permissible error for each of the three ledger loads is 0.2 tons and the permissible error for a single load detection is 0.1 tons, the second threshold is 0.9 tons. As the number of loading and unloading events increases, both thresholds can change accordingly with the amount of data included in the aggregation.

[0080] This application embodiment determines two thresholds based on the amount of data during the loading and unloading verification period and the allowable error of each type of data. The allowable error of the ledger load and the detection load are included in the second threshold. This allows the inventory deviation judgment to accommodate the allowable fluctuation of the two types of data and reduces the situation where normal detection errors are identified as inventory anomalies.

[0081] In some embodiments disclosed in this application, step S5, determining abnormal migration edges, includes: temporarily replacing the ledger load of each migration edge with the corresponding detection load from the migration edges that have not yet been corrected during the correction period; calculating the inventory verification deviation after the temporary replacement while keeping other migration edges unchanged; and restoring the corresponding ledger load after calculation; determining the deviation reduction of each migration edge based on the inventory verification deviation before and after the temporary replacement; arranging each migration edge in descending order of deviation reduction; and arranging them according to the order of occurrence of loading and unloading events when the deviation reduction is the same; when there is an uncorrected migration edge and the deviation reduction of the first-ranked migration edge is greater than zero, determining the migration edge as an abnormal migration edge, correcting its ledger load using the corresponding detection load, and recalculating the inventory verification deviation; repeating the determination of abnormal migration edges until the recalculated inventory verification deviation does not exceed the second threshold; when there are no uncorrected migration edges or the deviation reduction of the first-ranked migration edge is not greater than zero, generating a data verification identifier and stopping automatic updates.

[0082] The temporary replacement is performed in the calculated copy, without changing the ledger load in the corrected inventory migration diagram. Only one migration edge is replaced at a time, while other migration edges remain in their current state, thus obtaining the inventory verification deviation when that migration edge changes alone. The reduction in deviation is the difference between the inventory verification deviation before and after the replacement. After completing the temporary calculation for one migration edge, the original ledger load is restored, and the same process is performed on the next migration edge.

[0083] When there is only one migration edge, the deviation reduction can be directly used for judgment. When there are multiple migration edges, they are sorted according to the deviation reduction. When multiple deviation reductions are the same, they are sorted from earliest to latest according to the loading / unloading event occurrence time. After the migration edge at the top of the list completes the actual correction, it is removed from the set of migration edges to be processed, and the inventory verification deviation is recalculated based on the corrected ledger migration amount. If the deviation still exceeds the second threshold and there is a migration edge with a deviation reduction greater than zero among the remaining migration edges, the remaining migration edges are temporarily replaced in the next round. If the deviation does not exceed the second threshold, the processing of the current correction period ends. If there are no remaining migration edges or the deviation reduction of the remaining migration edges is not greater than zero, a data verification mark is generated and automatic updates are stopped.

[0084] For example, the deviation reductions after temporary replacement of the three migration edges are 0.2 tons, 10.1 tons, and 0.2 tons, respectively. The second migration edge can be initially identified as an abnormal migration edge. If the corrected inventory verification deviation does not exceed the second threshold, the other two migration edges will not be modified; if it still exceeds the second threshold, the deviation reduction for the two uncorrected migration edges will be recalculated. If abnormal data causes the deviation reduction for all migration edges to be no greater than zero, a data verification flag can be generated and automatic updates stopped to avoid inconsistencies between the correction direction and inventory deviation changes.

[0085] This application embodiment determines the degree of influence of each migration edge on the inventory deviation by temporarily replacing the ledger load of a single migration edge and calculating the change in inventory verification deviation. By correcting the migration edges sequentially according to the amount of deviation reduction and recalculating the inventory verification deviation after each correction, the migration edges that need to be corrected can be determined step by step, reducing the impact of modifying multiple migration edges at the same time on other inventory data.

[0086] In some embodiments disclosed in this application, step S5, updating the corresponding ledger load in the corrected inventory migration diagram, includes: determining the difference between the detection load of the abnormal migration edge and the ledger load as the load correction amount; transferring the load correction amount to the subsequent migration edges of the same cargo unit along the migration direction of the abnormal migration edge, and updating the corrected ledger load associated with each subsequent migration edge according to the load correction amount, until updating to the migration edge corresponding to the cargo unit unloading event or the last migration edge of the current voyage.

[0087] When the load correction is positive, it indicates that the original ledger load is less than the detection load, and the corrected ledger load associated with subsequent migration edges needs to be increased. When the load correction is negative, it indicates that the original ledger load is greater than the detection load, and the corrected ledger load associated with subsequent migration edges needs to be reduced. During the transfer process, the original detection load in subsequent migration edges is not modified. Instead, the updated load is recorded in the corrected ledger load field of the subsequent migration edges, while retaining the original ledger load and the load correction.

[0088] When no unloading event has occurred for a cargo unit, the load correction can be transferred to the last migration edge of the current voyage; when an unloading event has occurred, the transfer terminates at the migration edge corresponding to the unloading event. If another abnormal migration edge appears after an abnormal migration edge, the previous load correction can be transferred to the starting position of the next abnormal migration edge first, and then the influence range can be updated from the next abnormal migration edge according to the new load correction, avoiding the repeated superposition of the same correction at the same position.

[0089] For example, if the detection load of an abnormal migration edge is 20.2 tons and the original ledger load is 20 tons, and the load correction amount is an increase of 0.2 tons, then the correction ledger load associated with each migration edge after the same cargo unit will increase by 0.2 tons; when the cargo unit forms an unloading event, the load correction amount will no longer be transmitted to the off-ship position after unloading.

[0090] This application embodiment transfers the load correction amount along the continuous migration relationship of the same cargo unit, so that the load correction can be reflected in subsequent migration records, reducing the inconsistency of the load in the correction ledger before and after the same cargo unit; by limiting the transfer range to the unloading event or the last migration edge of the current voyage, the load correction amount can be avoided from being extended to irrelevant migration processes.

[0091] In some embodiments disclosed in this application, step S6 further includes a target unloading location and determining the goods to be moved in advance, including: determining the goods location and the target unloading location in the corrected inventory migration diagram as location nodes; establishing a directed connection between the two location nodes when the loading and unloading equipment can transfer goods between the two location nodes to obtain an unloading reachability relationship; determining a feasible unloading path for the goods unit to be transferred to reach the target unloading location based on the unloading reachability relationship, and determining the sum of the ledger loads of other goods units on each feasible unloading path as the forward migration amount; determining the feasible unloading path with the smallest forward migration amount as the target unloading path; when the forward migration amounts of multiple feasible unloading paths are the same, determining the feasible unloading path with the shortest migration distance as the target unloading path, and determining other goods units on the target unloading path as forward migration goods.

[0092] When establishing a directed connection between two location nodes, it can be determined whether the operating range of the loading / unloading equipment covers both locations, whether the cargo load does not exceed the equipment's rated load, and whether there are any fixed structures of the ship obstructing the connection between the locations. If the target unloading location can be reached from the current location along the directed connection, a feasible unloading path can be formed. When a path node is occupied by other cargo units, the cargo units occupying the node are included in the candidate set of preceding migration cargo for that path.

[0093] If no other cargo units occupy the path, the pre-migration amount is zero, and the corresponding path can be selected directly. If only one feasible path exists, that path is designated as the target unloading path. If multiple paths exist, the sum of the ledger loads of other cargo units on each path is compared first, and then the path migration distance is compared if the pre-migration amounts are the same. If no feasible path exists, the cargo unit to be transferred can be marked as currently unreachable and not included in the current executable inventory.

[0094] For example, the first route requires moving two containers weighing 10 tons and 12 tons respectively, with a pre-movement amount of 22 tons; the second route requires moving one container weighing 18 tons, with a pre-movement amount of 18 tons, so the second route can be selected. When the pre-movement amounts of the two routes are the same, the route with the smaller sum of horizontal moving distance and lifting distance can be selected.

[0095] This application embodiment establishes unloading reachability relationships based on the cargo transfer capabilities of loading and unloading equipment at different location nodes. It can compare the pre-migration amounts corresponding to different feasible unloading paths. Prioritizing the selection of paths with smaller pre-migration amounts and shorter migration distances can reduce the amount of other cargo loads and operating distances that need to be migrated before the cargo unit to be transferred is unloaded, making the determination of pre-migration cargo more consistent with the cargo location on board and the operating conditions of loading and unloading equipment.

[0096] In some embodiments disclosed in this application, step S6, determining the estimated unloading completion time, includes: determining the cargo migration order based on the positional relationship between the cargo unit to be transferred and the preceding cargo; determining the target loading and unloading equipment corresponding to each cargo unit from among loading and unloading equipment whose operating range covers the location and whose rated load is not lower than the corresponding accounting load, based on the ledger load and location of each cargo unit; determining the operation time of each cargo unit based on the horizontal migration distance, lifting height, and the horizontal movement speed and lifting speed of the corresponding target loading and unloading equipment; for the cargo unit ranked first, determining the latest time among the start time of the target time period, the ship's arrival time, and the available time of the corresponding target loading and unloading equipment as the operation start time; for the remaining cargo units, determining the later time among the operation completion time of the previous cargo unit and the available time of the target loading and unloading equipment corresponding to the current cargo unit as the operation start time, and determining the operation completion time of the last cargo unit as the estimated unloading completion time.

[0097] The order of goods migration can be determined based on stacking and path occupancy. Goods located above the unit to be transferred migrate before that unit, and goods occupying a common movement channel migrate before goods that need to pass through that channel. When multiple items to be migrated in advance do not obstruct each other, they can be arranged according to their migration distance from the temporary or unloading location.

[0098] Target loading and unloading equipment is matched according to its operating range and rated load. If only one piece of equipment meets the conditions, that equipment is selected as the target loading and unloading equipment; if multiple pieces of equipment meet the conditions, the equipment with the earlier availability time or the shorter expected operation time can be selected; if no equipment meets the rated load or operating range conditions, the corresponding cargo unit is marked as unavailable. The operation time can be obtained by combining the time corresponding to the horizontal migration distance and horizontal movement speed, and the time corresponding to the lifting height and lifting speed, and can further include the preset operation time required for locking, unlocking, cargo placement, and equipment reversal.

[0099] For the top-ranked cargo unit, the latest of the following times can be used as the start time of the operation: the start time of the target time period, the arrival time of the vessel, and the availability time of the target loading / unloading equipment. For the remaining cargo units, the later of the completion time of the previous cargo unit and the availability time of the current target loading / unloading equipment can be used as the start time of the operation. When the same equipment performs multiple operations consecutively, its availability time is updated according to the completion time of the previous operation. If the estimated unloading completion time is no later than the end time of the target time period, the cargo unit to be allocated can be included in the executable inventory; if it is later than the end time of the target time period or there is no available equipment, it will not be included in the current executable inventory.

[0100] This application embodiment determines the migration sequence according to the cargo location relationship, and matches equipment and calculates operation time based on cargo load, location and loading / unloading equipment parameters. This allows the estimated unloading completion time to reflect the cargo migration sequence, equipment operation capacity and equipment availability, thereby improving the accuracy of cargo unloading feasibility judgment within the target time period.

[0101] In some embodiments disclosed in this application, step S6 further includes: configuring an instruction identifier for the transfer instruction, and collecting the instruction identifier, the execution status of the transfer instruction, and the actual stopping position of the cargo unit fed back by the loading and unloading equipment; associating the execution status of the transfer instruction and the actual stopping position with the corresponding transfer instruction and migration edge according to the instruction identifier; when the execution status of the transfer instruction indicates that the cargo unit has completed migration, marking the corresponding migration edge as a completed migration edge, and updating the corresponding target position to the current position of the cargo unit; when the execution status of the transfer instruction indicates that the cargo unit migration is interrupted, establishing an interruption position node according to the actual stopping position, using the interruption position node as a dividing node, dividing the corresponding migration edge into a completed migration edge from the starting position to the interruption position node and an unexecuted migration edge from the interruption position node to the original target position, and re-determining the executable inventory and transfer instruction based on the updated corrected inventory migration map.

[0102] The instruction identifier can consist of a voyage number, equipment identifier, and instruction sequence number. When the instruction identifier fed back by the loading / unloading equipment matches the instruction identifier of the issued transfer instruction, the execution status and actual stopping position are written to the corresponding migration edge. Feedback data without a matching instruction identifier can be marked as data to be associated, without directly changing the inventory migration map. When the execution status is pending execution or in execution, the original migration edge status can be maintained; when the execution status is completed or interrupted, the migration edge is updated.

[0103] When a cargo unit completes its migration, the migration edge status is changed to "Completed," and the current position is updated with the target position. When a cargo unit migration is interrupted, an interruption position node is created at the actual stopping position. The starting position of the original migration edge to the interruption position node forms a completed migration edge, and the interruption position node to the original target position forms a pending migration edge. If the actual stopping position is the same as the starting position, a completed migration edge may not be generated; if the actual stopping position is the same as the original target position, it can be processed as a completed edge.

[0104] For example, if the original transfer instruction requires moving a cargo unit from location A to location B, and the equipment interrupts operation at location C, a node corresponding to location C can be established, forming a completed migration edge from A to C and a pending migration edge from C to B. During reanalysis, location C is used as the current location to determine whether the original target location, loading / unloading equipment, and operation time still meet the conditions.

[0105] This application embodiment associates the execution status, actual stopping position, transfer instruction, and migration edge through instruction identifiers, and can update the inventory migration map according to the actual migration result of the goods unit; when the migration is interrupted, the completed migration edge and the pending migration edge are divided according to the actual stopping position, which can preserve the goods migration process that has already occurred, and make the re-determined executable inventory and transfer instruction adjusted as the actual position of the goods changes.

[0106] Please refer to Figure 2 , Figure 2 This application illustrates a data analysis system for shipping inventory management, comprising: an event identification module, a migration map construction module, a loading / unloading volume determination module, a deviation determination module, an inventory correction module, and a transfer instruction module. The event recognition module acquires inventory, equipment, and vessel data for each voyage. It identifies loading and unloading events for cargo units based on lockout status, detection load, and changes in operational position within the equipment data. The migration map construction module constructs an inventory migration map based on the cargo units, starting and ending positions corresponding to loading and unloading events. Each migration edge is associated with its corresponding loading / unloading event, ledger load, and detection load. The loading / unloading volume determination module determines two hull stability moments before and after the start and end of consecutive loading / unloading events based on vessel data. The time range between these two stability moments is used as the loading / unloading verification period. The actual loading / unloading volume is determined based on changes in vessel displacement and non-cargo load during this verification period. The deviation determination module assigns positive values ​​to loading events and negative values ​​to unloading events. It summarizes the ledger load and detection load of each migration edge during the verification period into ledger migration volume and detection migration volume, respectively. The deviation is then compared with the actual loading / unloading volume. The absolute difference in unloading volume determines the equipment verification deviation, and the absolute difference between the ledger migration volume and the detected migration volume determines the inventory verification deviation. The inventory correction module initializes the inventory migration diagram as a corrected inventory migration diagram, identifies loading and unloading verification periods where the equipment verification deviation does not exceed the first threshold and the inventory verification deviation exceeds the second threshold as periods to be corrected, identifies abnormal migration edges based on the absolute difference between the ledger load and the detected load of each migration edge within this period, and updates the corresponding ledger load in the corrected inventory migration diagram using the detected load of the abnormal migration edges. The allocation instruction module acquires allocation requirements including the cargo units to be allocated and the target time period, determines the preceding migration cargo in the unloading path based on the cargo position relationship in the corrected inventory migration diagram, determines the estimated unloading completion time based on the ledger load of the cargo units to be allocated and the preceding migration cargo, the loading and unloading equipment operation capacity, and the ship arrival time, identifies the cargo units to be allocated that have been unloaded within the target time period as executable inventory, and generates allocation instructions.

[0107] The event identification module acquires inventory, equipment, and vessel data for the same voyage from the shipping inventory database, loading / unloading equipment control system, and vessel monitoring system. It then identifies loading and unloading events for cargo units based on temporal changes in locking status, detection load, and operational position. The module assembles event data from cargo unit identifier, event type, starting position, target position, ledger load, detection load, and event time. The cargo unit identifier, event type, starting position, target position, and two types of loads are transmitted to the migration map construction module, while the event type, event time, and corresponding vessel data are transmitted to the loading / unloading volume determination module, thus forming branched data for the two downstream modules. The hardware can be an Industrial Personal Computer (IPC) or a System on Chip (SoC), and can receive external data through a Programmable Logic Controller (PLC), Controller Area Network (CAN) interface, or Industrial Ethernet interface. For latching signals and load signals with high sampling frequencies, a Field-Programmable Gate Array (FPGA) can also be used for timestamp marking and timing alignment.

[0108] The migration map construction module connects to the data output of the event recognition module to receive event data arranged by event time. It uses cargo location as the migration node and the transfer relationship of cargo units from the starting position to the target position as the migration edge. Event type, cargo unit identifier, ledger load, detection load, and event time are associated with the corresponding migration edge. Loading events can form migration edges from the dock location to the ship location, and unloading events can form migration edges from the ship location to the dock location. Shipboard relocation records can include the shipboard location before and after relocation, cargo unit identifier, and operation time, and are associated with adjacent loading and unloading events. This record is not included in the loading and unloading volume summary. The migration map construction module transmits the inventory migration map and the event time, event type, and load data associated with each migration edge to the deviation determination module, enabling the deviation determination module to find the migration edges participating in load summarization according to the loading and unloading verification period. The hardware can use a central processing unit (CPU) or SoC to execute node creation, migration edge association and indexing processing, use random access memory (RAM) to store the graph data of the current voyage, and use solid-state drive (SSD) to store voyage correspondence and historical migration records.

[0109] The loading / unloading volume determination module is connected to the data output of the event recognition module and the data interface of the ship monitoring system. It receives the event time of loading / unloading events, along with the corresponding draft, hull attitude, and non-cargo load data. Based on the changes in ship data before and after consecutive loading / unloading events, it determines the hull stabilization time and defines the time range between adjacent hull stabilization times as the loading / unloading verification period. The loading / unloading volume determination module determines the actual loading / unloading volume based on changes in ship displacement and ballast water, fuel oil, and fresh water loads within this period. It then transmits the voyage identifier, the start and end times of the loading / unloading verification period, and the marked actual loading / unloading volume to the deviation determination module. The deviation determination module uses the voyage identifier and start and end times to perform time matching between the actual loading / unloading volume and the corresponding migration edge in the inventory migration diagram. The hardware can use a Digital Signal Processor (DSP) or a CPU to process the ship's timing data. When the ship data is an analog detection signal, it can be converted by an Analog-to-Digital Converter (ADC) before being input to the processor; when it is a digital signal, it can be directly received via a CAN interface or an Ethernet interface.

[0110] The deviation determination module's data input terminals are connected to both the migration map construction module and the loading / unloading volume determination module. It receives the inventory migration map, migration edge association data, loading / unloading verification periods, and actual loading / unloading volumes, and matches the two input data streams based on the voyage identifier and time range. The deviation determination module assigns positive values ​​to loading events and negative values ​​to unloading events, summarizing the ledger loads and detection loads falling within the same loading / unloading verification period to obtain the ledger migration volume and detection migration volume, thereby determining the equipment verification deviation and inventory verification deviation. The deviation determination module transmits the loading / unloading verification period, the two types of verification deviations, the migration edge identifiers involved in the summarization, and the storage address or graph data of the inventory migration map to the inventory correction module, enabling the inventory correction module to locate the period to be judged and the corresponding migration edge. The hardware can use a CPU or DSP to perform signed load accumulation and absolute difference calculations; when multiple voyages need to be processed in parallel, an FPGA can be configured with a parallel accumulation unit, and the period index and intermediate calculation results can be stored in RAM.

[0111] The inventory correction module is connected to the data output of the deviation determination module. It receives the inventory migration map, loading / unloading verification periods, equipment verification deviations, inventory verification deviations, and corresponding migration edge identifiers. It then initializes the corrected inventory migration map with the received data. The inventory correction module identifies loading / unloading verification periods where the equipment verification deviation does not exceed a first threshold but the inventory verification deviation exceeds a second threshold as periods to be corrected. It then compares the ledger load and detection load of each migration edge within this period to identify abnormal migration edges and updates the corresponding ledger load in the corrected inventory migration map using the detection load of the abnormal migration edges. After the update, the inventory correction module transmits the corrected inventory migration map, including cargo unit identifiers, corrected background ledger loads, and current location relationships, to the allocation instruction module. Simultaneously, it can write the correction results to the voyage inventory database. The hardware can use a CPU or database server to perform threshold comparisons, migration edge queries, and load updates. RAM is used to store a copy of the map during the correction process, and non-volatile memory (NVM) or SSD is used to record the data versions before and after the update.

[0112] The transfer instruction module connects to the data output of the inventory correction module to receive the corrected inventory migration map and obtain transfer requirements, including the cargo unit to be transferred and the target time period, from the transfer business terminal, as well as the loading and unloading equipment capacity and vessel arrival time from the port operation system. The transfer instruction module queries the current location and unloading path of the cargo unit to be transferred in the corrected inventory migration map, determines the preceding transfer cargo along the unloading path, and then determines the estimated unloading completion time based on the ledger load of the cargo unit to be transferred and the preceding transfer cargo, the loading and unloading equipment capacity, and the vessel arrival time. The transfer instruction module identifies the cargo units to be transferred that have been unloaded within the target time period as executable inventory and outputs the transfer instruction, including the cargo unit identifier, transfer location, and execution time period, to the port dispatch terminal, warehouse management terminal, or loading and unloading equipment control terminal. The hardware can use IPCs, dispatch servers, or edge computing gateways, and connect to the port communication network through a Network Interface Controller (NIC). Alternatively, a Human-Machine Interface (HMI) can be used to display the executable inventory and the execution status of the transfer instructions.

[0113] This application embodiment utilizes data transfer between the event recognition module, migration map construction module, loading / unloading quantity determination module, deviation determination module, inventory correction module, and transfer instruction module. This allows loading / unloading equipment data, ship data, and inventory data to be used sequentially for loading / unloading event recognition, inventory migration verification, abnormal data correction, and executable inventory analysis. This enables each processing step to form a continuous data analysis process, which helps improve the consistency between shipping inventory data and the actual migration status of goods, and makes the generated transfer instructions more consistent with the cargo location, loading / unloading equipment, and operation time conditions.

[0114] Please refer to Figure 3 , Figure 3 This is a schematic block diagram of an electronic device provided according to an embodiment of this application. Figure 3 The electronic device 300 in this embodiment may include one or more processors 301, one or more input devices 302, one or more output devices 303, and one or more memories 304. The processors 301, input devices 302, output devices 303, and memories 304 communicate with each other via a communication bus 305. The memories 304 store computer programs, including program instructions. The processors 301 execute the program instructions stored in the memories 304. Specifically, the processors 301 are configured to invoke the program instructions to execute the aforementioned data analysis method for shipping inventory management.

[0115] In the embodiments of this application, the processor 301 may be a central processing unit (CPU), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other processing devices capable of executing data processing instructions.

[0116] Input device 302 may include an industrial Ethernet interface, a controller area network interface, a serial communication interface, an analog-to-digital conversion interface, or an operating terminal, for receiving inventory data, equipment data, ship data, and allocation requests; output device 303 may include a network interface, a display terminal, or an allocation command interface, for outputting corrected inventory data and executable inventory and allocation commands.

[0117] The memory 304 may include read-only memory, random access memory and non-volatile memory, for providing program instructions and data to the processor 301, and storing voyage data sets, inventory migration charts, verification deviations, corrected inventory migration charts and transfer instructions.

[0118] In specific implementations, the processor 301, input device 302, and output device 303 described in the embodiments of this application can execute the implementation methods described in any embodiment of the data analysis method for shipping inventory management provided in the embodiments of this application, or they can execute the implementation methods of the electronic devices described in the embodiments of this application, which will not be repeated here.

[0119] In another embodiment of this application, a computer-readable storage medium is provided, which stores a computer program. The computer program includes program instructions, which, when executed by a processor, implement all or part of the processes of the data analysis method for shipping inventory management described above. The computer program code can be source code, object code, executable file, or intermediate code. The computer-readable storage medium can include a USB flash drive, external hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), or other non-transitory media capable of storing program instructions.

[0120] Computer-readable storage media can be internal storage units of electronic devices, such as hard drives or memory, or external storage devices of electronic devices, such as plug-in hard drives, smart media cards (SMCs), secure digital memory cards (SDs), or flash cards. Computer-readable storage media are used to store computer programs and other programs and data required to perform data analysis methods.

[0121] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this application.

[0122] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the electronic devices and units described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0123] In the embodiments provided in this application, the division of units is a logical functional division. In actual implementation, multiple units can be combined or integrated into the same processing device, or they can be distributed across multiple processing devices through data interfaces. The connection between units can be a direct communication connection, or an indirect communication connection can be formed through a communication interface, data bus, or network.

[0124] The unit described as a separate component can be a physically separate device or a software functional unit running in the same processing device; in a distributed deployment, each functional unit can be located at different network nodes and transmit loading and unloading events, inventory migration diagrams, actual loading and unloading quantities, verification deviations and transfer instructions in accordance with the aforementioned data flow relationship.

[0125] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0126] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A data analysis method for shipping inventory management, characterized in that, Includes the following steps: S1. Acquire inventory data, equipment data, and vessel data for the voyage, and identify loading and unloading events of cargo units based on the locking status, detection load, and changes in operating position in the equipment data. S2. Construct an inventory migration diagram based on the cargo units, starting positions, and target positions corresponding to the loading and unloading events, and associate each migration edge with the corresponding loading and unloading events, ledger loads, and detection loads. S3. Determine two hull stability moments before and after the start of the continuous loading and unloading event based on the ship data. Use the time range between the two hull stability moments as the loading and unloading verification period. Determine the actual loading and unloading volume based on the changes in ship displacement and non-cargo load during the loading and unloading verification period. S4. According to the loading event taking positive value and the unloading event taking negative value, the ledger load and detection load of each migration edge in the loading and unloading verification period are summarized into ledger migration quantity and detection migration quantity respectively. The equipment verification deviation is determined based on the absolute difference between the detected migration amount and the actual loading and unloading amount; the inventory verification deviation is determined based on the absolute difference between the ledger migration amount and the detected migration amount. S5. Initialize the inventory migration diagram as a corrected inventory migration diagram, determine the loading and unloading verification period when the equipment verification deviation does not exceed the first threshold and the inventory verification deviation exceeds the second threshold as the period to be corrected, determine the abnormal migration edge according to the absolute difference between the ledger load and the detection load of each migration edge in the period to be corrected, and update the ledger load corresponding to the corrected inventory migration diagram using the detection load of the abnormal migration edge. S6. Obtain the transfer requirements including the cargo units to be transferred and the target time period. Determine the preceding transfer cargo in the unloading path according to the cargo position relationship of the corrected inventory migration map. Determine the expected unloading completion time according to the ledger load of the cargo units to be transferred and the preceding transfer cargo, the loading and unloading equipment operation capacity and the ship arrival time. Determine the cargo units to be transferred that have been unloaded within the target time period as executable inventory and generate transfer instructions.

2. The method according to claim 1, characterized in that, In step S1, identifying the loading and unloading events includes: The moment when the locked state first changes from the unlocked state to the locked state is determined as the starting point of the work cycle, and the moment when the locked state first changes from the unlocked state to the locked state thereafter is determined as the ending point of the work cycle. When the duration for which the detected load reaches the load threshold within the operation cycle is not less than the load stabilization time, and the operation location is transferred from the external area to the internal stowage position, the migration of the cargo unit corresponding to the operation cycle is determined as a loading event. When the duration for which the detected load reaches the load threshold is not less than the load stabilization time, and the operation location is transferred from the inboard stowage area to the outboard area, the migration of the cargo unit corresponding to the operation cycle is determined as an unloading event.

3. The method according to claim 1, characterized in that, In step S2, constructing the inventory migration map includes: Arrange the loading and unloading events corresponding to the same cargo unit according to the order of occurrence, and compare the target position of the previous loading and unloading event with the starting position of the next loading and unloading event in adjacent loading and unloading events. When the target position is inconsistent with the starting position, determine whether there is a valid in-ship displacement record corresponding to the same cargo unit between two adjacent loading and unloading events; If a valid in-ship displacement record exists, retain the target position of the previous loading / unloading event and the starting position of the next loading / unloading event, and associate the record with the two adjacent loading / unloading events; if no valid in-ship displacement record exists, obtain the inventory position record corresponding to the same cargo unit between the two adjacent loading / unloading events, convert the inventory position record and the corresponding operation position to the ship coordinate system, determine the position corresponding to the inventory position record with the smallest distance from the inventory position record whose distance from the operation position does not exceed the position matching threshold as the calibration position, and use the calibration position to correct the target position of the previous loading / unloading event and the starting position of the next loading / unloading event.

4. The method according to claim 1, characterized in that, In step S3, determining the moment when the hull stabilizes includes: Based on the equipment data, the period during which the locked state of each loading and unloading equipment participating in the loading and unloading operation of the voyage remains unlocked, the detection load is lower than the empty load threshold, and the duration reaches the empty load duration is determined as the candidate stable period. The ship attitude change rate and draft change rate during the candidate stable period are determined based on the ship data. Candidate stable periods in which the rate of change of hull attitude and the rate of change of draft are continuously lower than the corresponding stable thresholds are determined as stable periods of hull, and the moment closest to the adjacent loading and unloading event is determined as the stable moment of hull.

5. The method according to claim 1, characterized in that, In step S3, determining the actual loading and unloading volume includes: Based on the bow draft data, stern draft data, draft data on both sides, and hull attitude data in the ship data, the draft data is converted to a preset reference attitude according to the coordinates of each draft detection position relative to the ship reference plane. Based on the converted draft data, query the ship's hydrostatic data to determine the change in the ship's displacement. The change in non-cargo load is determined based on the ballast tank level, fuel tank level, and fresh water tank level in the ship data. The change in non-cargo load is then subtracted from the change in ship displacement, following the principle of increasing loads during loading and decreasing loads during unloading, to obtain the actual loading and unloading volume.

6. The method according to claim 1, characterized in that, In step S5: The first threshold is determined by multiplying the number of detected loads included in the summary during the loading and unloading verification period by the allowable error of a single load detection, the allowable error of ship displacement detection, and the allowable error of non-cargo load detection. The second threshold is determined by multiplying the number of ledger loads included in the summary and the allowable error of a single ledger load during the loading and unloading verification period, and by multiplying the number of detected loads included in the summary and the allowable error of a single load detection.

7. The method according to claim 1, characterized in that, In step S5, determining the abnormal migration edge includes: From the migration edges that have not yet been corrected during the period to be corrected, the ledger load of each migration edge is temporarily replaced with the corresponding detection load. While keeping other migration edges unchanged, the inventory verification deviation after the temporary replacement is calculated, and the corresponding ledger load is restored after the calculation. The deviation reduction of each migration edge is determined based on the inventory verification deviation before and after the temporary replacement. The migration edges are arranged from largest to smallest according to the deviation reduction, and when the deviation reduction is the same, they are arranged according to the order of occurrence of loading and unloading events. When there is an uncorrected migration edge and the deviation reduction of the first migration edge is greater than zero, the migration edge is identified as the abnormal migration edge, its ledger load is corrected using the corresponding detection load, and the inventory verification deviation is recalculated; the abnormal migration edge is identified repeatedly until the recalculated inventory verification deviation does not exceed the second threshold; when there is no uncorrected migration edge or the deviation reduction of the first migration edge is not greater than zero, a data verification identifier is generated and automatic updates are stopped.

8. The method according to claim 1, characterized in that, In step S5, updating the corresponding ledger load in the corrected inventory migration diagram includes: The difference between the detection load of the abnormal migration edge and the ledger load is determined as the load correction amount; Along the migration direction of the abnormal migration edge, the load correction amount is transferred to the subsequent migration edge of the same cargo unit, and the correction ledger load associated with each subsequent migration edge is updated according to the load correction amount, until the migration edge corresponding to the unloading event of the cargo unit or the last migration edge of the current voyage is updated.

9. The method according to claim 1, characterized in that, In step S6, the allocation requirement also includes the target unloading location, and determining the pre-transfer cargo includes: The cargo location and the target unloading location in the corrected inventory migration diagram are determined as location nodes. When the loading and unloading equipment can transfer cargo between the two location nodes, a directed connection is established between the two location nodes to obtain the unloading reachability relationship. Based on the unloading reachability relationship, a feasible unloading path is determined for the cargo unit to be transferred to reach the target unloading location, and the sum of the ledger loads of other cargo units on each feasible unloading path is determined as the pre-migration amount. The feasible unloading path with the smallest pre-migration amount is determined as the target unloading path; when the pre-migration amounts of multiple feasible unloading paths are the same, the feasible unloading path with the shortest migration distance is determined as the target unloading path, and other cargo units on the target unloading path are determined as the pre-migration cargo.

10. A data analysis system for shipping inventory management, used to implement the method of any one of claims 1 to 9, characterized in that, include: The event recognition module is used to acquire inventory data, equipment data and ship data for a voyage, and to identify loading and unloading events of cargo units based on the locking status, detection load and operation position changes in the equipment data. The migration graph construction module is used to construct an inventory migration graph based on the cargo units, starting positions, and target positions corresponding to the loading and unloading events. Each migration edge is associated with the corresponding loading and unloading events, ledger loads, and detection loads. The loading / unloading volume determination module is used to determine two hull stability moments before and after the start of a continuous loading / unloading event based on the ship data. The time range between the two hull stability moments is used as the loading / unloading verification period. The actual loading / unloading volume is determined based on the changes in ship displacement and non-cargo load during the loading / unloading verification period. The deviation determination module is used to take positive values ​​for loading events and negative values ​​for unloading events, and to summarize the ledger load and detection load of each migration edge during the loading and unloading verification period into ledger migration amount and detection migration amount, respectively. The equipment verification deviation is determined based on the absolute difference between the detected migration amount and the actual loading and unloading amount; the inventory verification deviation is determined based on the absolute difference between the ledger migration amount and the detected migration amount. The inventory correction module is used to initialize the inventory migration diagram as a corrected inventory migration diagram, determine the loading and unloading verification period when the equipment verification deviation does not exceed the first threshold and the inventory verification deviation exceeds the second threshold as the period to be corrected, determine the abnormal migration edge according to the absolute difference between the ledger load and the detection load of each migration edge in the period, and update the ledger load corresponding to the corrected inventory migration diagram using the detection load of the abnormal migration edge. The transfer instruction module is used to obtain the transfer requirements, including the cargo units to be transferred and the target time period, determine the preceding transfer cargo in the unloading path according to the cargo position relationship of the corrected inventory migration map, determine the expected unloading completion time according to the ledger load of the cargo units to be transferred and the preceding transfer cargo, the loading and unloading equipment operation capacity and the ship arrival time, determine the cargo units to be transferred that have been unloaded within the target time period as executable inventory and generate transfer instructions.