Bulk commodity supply chain management system
By introducing image recognition, IOT equipment and optimization algorithms into the commodity supply chain management system, the problems of low efficiency and backward data collection in the traditional management model are solved, automated identification, flow monitoring and coal extraction optimization are realized, and the supply chain is improved management efficiency and accuracy.
Patent Information
- Application Number
- CN202411255511.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-09
- Publication Date
- 2024-12-20
AI Technical Summary
There are problems with inefficiency in commodity supply chain management, including manual operation dependence, serious information silos, lack of standardized management, backward data collection, and difficulty in real-time sharing and analysis, resulting in difficult to detect and deal with cargo errors and hidden risks.
A commodity supply chain management system was designed, using image recognition, IOT equipment, integer planning and ant colony optimization algorithms to realize vehicle identification, coal flow monitoring and coal lifting plan optimization, and control goods through the coal business management module and stations Modules and coal-lifting business modules improve the efficiency and accuracy of supply chain management.
It realizes automatic vehicle identification and unattended operations, improves the management efficiency and accuracy of the coal supply chain, predicts coal flow through flow calculation and time series analysis, optimizes the coal lifting plan, reduces vehicle empty and roundabout driving, and improves The efficiency and resource allocation of the overall supply chain.
Smart Images

Figure CN119168304A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of bulk commodity supply chain management, and in particular to a bulk commodity supply chain management system. Background Art
[0002] In recent years, with the vigorous development of industrial Internet and the iterative update of new generation information technology, the field of commodity supply chain management is experiencing a wave of digital transformation. The traditional supply chain management model relies on manual operation, with serious information islands, and it is difficult to adapt to the increasingly complex supply chain collaboration needs.
[0003] As the core hub of the commodity supply chain, the management level of the commodity park largely affects the efficiency of the entire supply chain. At present, there are still many pain points in the operation and management of the commodity park: first, the business operations in the park rely on manual labor, the management model is single, and there is a lack of standardized and normalized operation processes, which is prone to cargo errors and data errors; second, there is a lack of unified management of equipment, sites, and personnel in the park, making it difficult to achieve visual monitoring of the entire process, and it is difficult to discover and deal with risks in a timely manner; third, the park's data collection methods are backward, making it difficult to achieve real-time sharing and analysis of data, and the park management lacks digital and intelligent means to support it. Summary of the invention
[0004] In response to the problem of low efficiency in bulk coal commodity supply chain management in the prior art, the present application provides a bulk commodity supply chain management system, which uses a coal loading business management model to perform on-site vehicle entry and exit verification and coal loading and unloading control, uses the on-site short-distance business module to interact with the loading and unloading vehicle entrance belt scale IOT device to monitor and predict the flow of coal in the site, and uses integer programming and ant colony optimization algorithms to generate coal delivery plans and vehicle scheduling instructions, thereby improving the efficiency of coal supply chain management.
[0005] The purpose of this application is achieved through the following technical solutions.
[0006] The present application provides a bulk commodity supply chain management system, including: a coal loading business management module, which generates a supply plan according to user needs and coal inventory information of a station, obtains vehicle license plates through image recognition and compares and verifies with vehicle IDs pre-entered in the system, controls vehicle entry and coal unloading according to the verification results, and collects coal unloading data and updates the coal inventory information of the station by interacting with the IOT device at the coal unloading port; the IOT device at the coal unloading port includes an RFID device and an infrared sensor; a station cargo control module, which controls vehicles entering and exiting the station and collects vehicle loading and unloading cargo measurement data according to the supply plan; a short-distance business module, which obtains coal circulation start and end quantity data by interacting with the IOT device of the belt scale at the loading port and the unloading port, and forms coal circulation data in combination with the collected vehicle loading and unloading cargo measurement data; and uses a stream computing framework to process the coal circulation data, and predicts the time and quantity of coal circulation through a data mining algorithm; a coal lifting business module, which generates a coal lifting plan according to the user's coal lifting needs and controls vehicle coal loading;
[0007] Furthermore, the coal loading business management module includes: a supply planning unit, which generates a supply plan based on user demand and coal inventory information at the site; a vehicle identification unit, which extracts features and classifies vehicle images through a convolutional neural network to obtain the license plate number of the vehicle entering the site; an entry verification unit, which compares and verifies the obtained license plate number with the vehicle ID pre-entered in the system, and calculates the similarity between the license plate number and the vehicle ID through the Distans metric algorithm. When the similarity is greater than a preset threshold, an entry instruction is generated, otherwise a prohibition of entry instruction is generated; a coal unloading control unit, which controls the vehicle to unload coal according to the entry instruction, and identifies the unloading vehicle by interacting with the RFID device at the coal unloading port. The RFID electronic tag installed on the coal-unloading vehicle obtains the unique identification code of the coal-unloading vehicle, and compares the obtained unique identification code of the coal-unloading vehicle with the vehicle ID pre-entered in the system. When the comparison is consistent, the coal-unloading data is collected by interacting with the laser radar device at the coal-unloading port, and the coal inventory information of the station is updated according to the coal-unloading data; wherein, the laser radar device scans the surface morphology of the coal at the coal-unloading port by laser triangulation to obtain the coal accumulation volume data, and converts the coal volume into coal weight according to the preset coal density parameters. When the converted coal weight reaches the coal weight of the supply plan, a stop coal-unloading signal is generated, and the vehicle is controlled to stop unloading according to the coal-unloading information.
[0008] Furthermore, the coal volume is converted into coal weight, including: scanning the coal surface morphology at the coal unloading port by laser triangulation to obtain a series of three-dimensional coordinate point cloud data; calculating the average distance between each coordinate point and the corresponding neighborhood point by statistical filtering method based on the three-dimensional coordinate point cloud data, marking the coordinate points with an average distance greater than a threshold as noise points, and removing the noise points to obtain denoised point cloud data; mapping the point cloud data set to a two-dimensional plane by Delaunay triangulation algorithm based on the denoised point cloud data set, triangulating the mapped two-dimensional data point set, establishing a triangular mesh topological relationship, mapping the triangular mesh back to three-dimensional space, and obtaining a three-dimensional surface model of the coal accumulation body; calculating the volume V of the coal accumulation body by numerical integration method based on the three-dimensional surface model; and calculating the coal weight M by formula M=ρV based on the preset coal density parameter ρ.
[0009] Furthermore, according to the three-dimensional surface model, the volume V of the coal accumulation body is calculated by a numerical integration method, including: triangulating the three-dimensional surface model, dividing the coal accumulation body into a plurality of triangular grid units by a greedy projection triangulation algorithm; averaging the vertex coordinates of each triangular grid unit to obtain the center coordinates of the corresponding triangular grid unit, and treating the coal accumulation body as an irregular polyhedron determined by the center coordinates of each grid unit; calculating the volume Vi of each triangular grid unit, and summing up the volumes of all triangular grid units to obtain the total volume V of the coal accumulation body; calculating the volume V of each triangular grid unit i : Where V_i is the volume of the i-th triangular mesh unit, Ω is the integration domain of the i-th triangular mesh unit, m is the number of Gaussian integration points, and w j is the weight coefficient of the jth Gaussian integration point, x j ,y j 、z j is the coordinate of the jth Gaussian integration point.
[0010] Furthermore, the cargo control module of the station includes: a vehicle entry and exit control unit, which controls the vehicle entry and exit according to the vehicle ID, the type of cargo and the quantity of cargo in the supply plan; when the vehicle enters the station, it interacts with the vehicle identification device of the entry gate, uses the image recognition algorithm to extract the license plate number of the vehicle entering the station, and compares the extracted license plate number with the vehicle ID in the supply plan. When the comparison is consistent, it generates a gate opening command to control the gate to be lifted; when the vehicle leaves the station, it interacts with the RFID reader / writer of the exit gate, uses the time division multiple access anti-collision algorithm to read the vehicle ID in the vehicle RFID electronic tag, and compares the read vehicle ID with the supply The vehicle ID in the plan is compared. When the comparison is consistent and the quantity of goods loaded and unloaded by the vehicle meets the requirements of the supply plan, an opening command is generated to control the gate to be lifted; the loading and unloading metering unit collects the vehicle loading and unloading metering data: when the vehicle enters the loading and unloading area, it interacts with the weighing sensor array in the loading and unloading area to collect the vehicle's own weight data before entering the site; after the vehicle is loaded or unloaded, the weighing sensor array is used to collect the vehicle's weight data after loading or unloading again, and the differential cumulative algorithm is used to subtract the weight data collected twice before and after loading or unloading to eliminate the influence of the vehicle's own weight and obtain the weight of the vehicle loaded or unloaded.
[0011] Furthermore, the short-distance transfer business module includes: a short-distance transfer business data collection unit, which interacts with the belt scale IOT equipment at the loading port and unloading port to obtain the starting quantity data and ending quantity data of the coal flow at the corresponding loading port and unloading port; and is connected with the station cargo control module to obtain the vehicle loading and unloading cargo measurement data, and associates the obtained coal flow starting quantity data, ending quantity data and vehicle loading and unloading cargo measurement data according to time series to form coal flow data; a short-distance transfer business data processing unit, which uses the flow computing framework to process the coal flow data to obtain standardized coal flow data in time windows; a short-distance transfer business data analysis unit, based on the standardized coal flow data, obtains the quantity characteristics of coal flow in each time window through a time series analysis algorithm.
[0012] Furthermore, the normalized coal flow data in time windows is obtained, including: abstracting the coal flow data into key-value pairs through the stream computing engine <recordTime,<flowDirection,amount> >, where recordTime is the data collection time, flowDirection is the coal flow direction identifier, and amount is the amount of coal; the data stream is processed using the sliding window mechanism, and a sliding window operator is constructed to divide the data stream into windows according to the preset time interval and window length parameters, and the data stream is converted into a bounded data set in windows; in each window, the data is grouped according to the flow direction identifier field by the GroupBy operator, and then the grouped amount field is summed by the Aggregate operator to obtain the subtotal data of the coal flow volume of each flow direction in the current window; according to the actual occurrence time of the data and the preset maximum allowable delay threshold, a watermark operator is set to periodically trigger the window closing operation, and the subtotal data of the coal flow volume in the current window is persisted to the state storage; the flow direction coal flow volume data of multiple consecutive windows are windowed twice, and the KeyBy operator and the Window operator are used to re-divide the data according to the preset time interval to form a large window containing multiple sub-windows; in the large window formed by the secondary windowing, the Reduce operator is used Function customizes the merging strategy, accumulates and summarizes the coal flow volume data of each sub-window with the same flow direction identifier, outputs the summary results and stores them persistently, and finally obtains the normalized coal flow data in units of larger time windows.
[0013] Furthermore, the quantitative characteristics of coal circulation in each time window are obtained through the time series analysis algorithm, including: dividing the normalized coal circulation data according to the time window, and taking each time window as a time node; extracting the total amount of coal circulation in the time window as the observation value of the corresponding time node, and generating a time node-observation value sequence by sorting the time nodes; performing an ADF unit root test on the time node-observation value sequence, and setting a significance level α; if the P value of the ADF test is greater than α, the sequence is judged to be non-stationary, and a first-order difference operation is performed on the sequence, and the ADF test is repeated until the sequence after the difference passes the ADF test, and a stationary time series is output; the autocorrelation of the stationary time series is calculated. The coefficient ACF and the partial correlation coefficient PACF; determine the range of the order p and q of the ARMA (p, q) model of the stationary time series according to the ACF and PACF, and obtain the order parameter space of the ARMA model; use the BIC criterion to traverse and evaluate each group of p and q values in the order parameter space, fit the ARMA (p, q model by the maximum likelihood estimation method and calculate the BIC value, select the p value and q value corresponding to the minimum BIC value as the optimal order p* and q*, and obtain the ARMA (p*, q*) model; use the ARMA (p*, q*) model to predict the coal turnover in the future T time windows based on the observed values of the time nodes, and form a coal turnover prediction sequence with a length of T.
[0014] Furthermore, the coal picking business module includes: a coal picking demand receiving unit, which receives coal picking demand information submitted by users, and the coal picking demand information includes coal picking user identification, coal picking quantity and coal picking time; a coal picking plan generating unit, which generates a coal picking plan based on the coal picking demand information and the coal inventory information of the station by using an integer programming algorithm; the coal picking plan includes the loading station, loading time and loading quantity; and a scheduling control unit, which generates a vehicle scheduling instruction based on the coal picking plan by using an ant colony algorithm.
[0015] Furthermore, an integer programming algorithm is used to generate a coal lifting plan, including: taking the coal lifting quantity of each coal lifting demand as the decision variable of the integer programming model, and taking the minimum sum of the absolute values of the differences between the expected coal lifting time and the planned loading time of the coal lifting demand as the objective function, to establish an integer programming model; according to the coal inventory information and vehicle capacity information of the station, the coal inventory and vehicle capacity of each station are set as constraints of the integer programming model; solving the integer programming model to obtain the optimal loading station, loading time and loading quantity for each coal lifting demand, and generating a coal lifting plan.
[0016] Furthermore, according to the coal picking plan, the vehicle dispatching instructions are generated by the ant colony algorithm, including: taking the loading station of each coal picking order as the starting point and the location of the coal picking user as the end point, using the depth-first search algorithm to construct a directed graph of the vehicle driving path to form a vehicle driving path search space; initializing the ant population, encoding each coal picking vehicle as an ant individual, each ant individual carries an initial loading and unloading coal order list randomly generated according to the loading capacity constraint, and the loading and unloading coal order list satisfies the constraint that the vehicle loading capacity does not exceed the rated load; taking the shortest total mileage of the vehicle as the fitness function, each ant individual selects the next driving node according to the state transition probability rule, and searches from the current node to the loading order. A feasible path to the unloading site is found, the fitness value of the path is calculated, and the pheromone concentration between nodes is updated according to the path length; when all individuals in the ant population complete an iterative search, the feasible paths searched by all ant individuals are compared, the path with the best fitness value is selected, and the loading order list and driving path of the corresponding ant individual are used as the local optimal solution of the current iteration; the iterative search is repeated until the change of the optimal fitness value for multiple consecutive iterations is less than the threshold or the maximum number of iterations is reached, and the local optimal solution corresponding to the optimal fitness value found in the iterative process is output as the global optimal solution to obtain the vehicle dispatching instruction, which includes the optimal loading and coal picking order list and the shortest driving path.
[0017] Compared with the prior art, the advantages of this application are:
[0018] The coal loading business management module introduces image recognition technology to automatically identify vehicles, and implements vehicle entry verification by calculating the similarity between the license plate number and the pre-entered vehicle ID, avoiding the tedious steps of manually checking vehicle information; through RFID and laser radar devices, real-time coal unloading data is collected, and vehicles are automatically controlled to unload coal, realizing unattended operations and improving coal loading efficiency and accuracy. At the same time, laser triangulation method scans the coal surface to obtain three-dimensional point cloud data, and accurately calculates the coal volume through mathematical modeling and numerical integration, and then converts it into coal weight.
[0019] The field short-circuit business module interacts with the belt scale IOT device to obtain coal flow data at different times and in different directions. The stream computing framework is used to clean and aggregate the original data to form a standardized time window coal flow data set. On this basis, the ARMA model is constructed through the time series analysis method to mine the quantitative characteristics of coal flow in each time window and predict the future coal flow volume.
[0020] The coal extraction business module adopts an integer programming model, with the goal of minimizing the time deviation of coal extraction demand, taking the coal inventory and vehicle transportation capacity of the station as constraints, solving the optimal loading volume plan for each demand, and forming a coal extraction plan that takes into account actual supply and demand. Compared with empirical planning, integer programming can obtain the global optimal resource allocation plan under the premise of meeting constraints, thereby improving the timeliness of coal extraction.
[0021] The vehicle dispatch control unit uses the ant colony algorithm to minimize the total mileage of vehicles. Through the iterative search of ants in the solution space, it finds the optimal vehicle loading and coal picking order combination and driving path. Compared with manual dispatch instructions, ant colony optimization can search for a near-optimal dispatch strategy in a large number of dispatch plans, reducing empty driving and detours. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] The present application will be further described in the form of exemplary embodiments, which will be described in detail by the accompanying drawings. These embodiments are not restrictive, and in these embodiments, the same number represents the same structure, wherein:
[0023] Figure 1 is an exemplary module diagram of a commodity supply chain management system according to some embodiments of the present application;
[0024] Figure 2 is an exemplary module diagram of a coal loading business management module according to some embodiments of the present application;
[0025] Figure 3 is an exemplary flow chart for calculating the weight of coal according to some embodiments of the present application;
[0026] Figure 4 is an exemplary flow chart for obtaining normalized coal circulation data according to some embodiments of the present application;
[0027] Figure 5 This is an exemplary flowchart for obtaining vehicle dispatch instructions according to some embodiments of the present application. DETAILED DESCRIPTION
[0028] The method and system provided in the embodiments of the present application are described in detail below with reference to the accompanying drawings.
[0029] Figure 1It is an exemplary module diagram of a bulk commodity supply chain management system shown in some embodiments of the present application, a coal supply chain management system based on the Internet of Things and intelligent optimization, including four business modules: coal loading, station cargo control, short-distance delivery and coal extraction. Through the Internet of Things devices deployed in the loading and unloading stations, coal loading and unloading data and vehicle measurement data are collected in real time, and the data is processed and analyzed using artificial intelligence algorithms to automatically generate coal supply plans, station scheduling instructions and vehicle transportation routes, so as to achieve collaborative optimization and intelligent decision-making of all links in the coal supply chain. Preferably, a digital supply chain module is added to manage the entire process and digitally of the park based on the data collected and processed by the above four business modules. Including vehicle management, driver management, vehicle dispatch management, entry and exit management, warehouse management, quality inspection management, processing management, on-site operation supervision, etc.
[0030] Figure 2 It is an exemplary module diagram of the coal loading business management module shown in some embodiments of the present application. The coal loading business management module includes: a supply planning unit: receiving coal demand information submitted by users, including coal quantity, delivery time, coal quality indicators, etc. Through the industrial Internet platform, obtain the real-time coal inventory information of the station, including coal variety, quantity, quality, etc. Using the integer programming algorithm, considering the constraints such as transportation capacity, storage capacity, and coal quality matching, generate a detailed coal supply plan to clarify the loading coal type, loading quantity and time requirements of each station. The generated supply plan data is written into the system database, released to relevant business departments, and an API interface is provided to the outside for collaborative units to query.
[0031] Vehicle identification unit, set up 1-2 high-definition network cameras next to the entrance channel of the coal station. The model can be Dahua IPC-HF8242F-FR, with a resolution of 1920×1080 and a frame rate of 30fps. Send the vehicle image to the pre-trained convolutional neural network model for inference calculation. The image preprocessing uses the histogram equalization algorithm to enhance the image contrast, and the median filter algorithm to eliminate noise. Use the pre-trained CNN convolutional neural network model to extract features from the license plate area image. The optional CNN models include: ResNet-18: It consists of 18 convolutional layers and 1 fully connected layer, pre-trained on the ImageNet dataset, and the feature dimension is 512. MobileNetv2: It uses deep separable convolution, with a small number of model parameters, high pre-training accuracy, and a feature dimension of 1280.
[0032] Input the extracted license plate image features into the LSTM recurrent neural network, calculate the character similarity through CTC Loss, decode the output text sequence, and build an LSTM network: Use TensorFlow or PyTorch deep learning framework to build a bidirectional LSTM recurrent neural network model. The input of the LSTM model is the CNN feature vector of the license plate image, with a dimension of N×512, where N is the number of license plate characters (such as 7 characters) and 512 is the feature dimension of the ResNet-18 model. The LSTM model contains 3 bidirectional LSTM layers, each with 256 hidden units, and uses a tanh activation function. A fully connected layer is connected after the last LSTM layer to map the feature dimension to the number of character categories, such as 34 character categories (26 letters + 8 numbers). The output of the LSTM model is an N×34 probability matrix, which represents the probability distribution of each character category at each character position.
[0033] Use the trained LSTM model to perform inference prediction on the newly collected license plate image. Input the license plate image into the CNN model and extract the N×512-dimensional feature vector. Input the feature vector into the LSTM model and calculate the output probability matrix through forward propagation. Use the CTC Decoder algorithm to decode the probability matrix and obtain the text sequence of the license plate number. CTC Decoder uses the Beam Search algorithm, sets the beam width to 10, and retains the 10 candidate paths with the highest probability during the search process. During the search process, the cumulative probability of each candidate path is calculated based on the character probability output by LSTM, and pruning is performed to finally obtain the text sequence with the highest probability. Post-process the decoded text sequence to delete duplicate characters and blank characters to obtain the final license plate number recognition result.
[0034] The vehicle identification unit publishes the identified license plate number information to the message topic "vehicle / plate" through the industrial Ethernet using the MQTT communication protocol. The license plate number is sent to the RESTful API interface of the identity verification service. The identity verification service is deployed on the application server of the station control system and provides a Web service interface for vehicle identity verification. After receiving the HTTP request, the identity verification service queries the relational database of the station control system through the JDBC connector. The vehicle registration information table is pre-stored in the database, which contains the mapping relationship between the license plate number and the registration ID. The service executes the SQL query statement and obtains the corresponding registration ID from the database table based on the license plate number as a condition, such as "V000123".
[0035] The edit distance between the identification plate and the registration ID is compared by the Distans metric algorithm. This algorithm is based on the idea of dynamic programming. By filling the edit distance matrix, the minimum number of edit operations between two strings is calculated. Specifically, the edit distance (EditDistance), also known as the Levenshtein distance, measures the similarity between two strings. It represents the minimum number of edit operations required to convert one string into another, and can be used to quantify the degree of difference between strings. Edit operations include: inserting a character, deleting a character, and replacing a character. For example, the edit distance for converting "kitten" to "sitting" is 3, because the following operations need to be performed: replace "k" with "s"; replace "e" with "i"; insert "g" at the end. In order to calculate the edit distance between two strings, a dynamic programming algorithm can be used, and the time complexity of this algorithm is O(mn, where m and n are the lengths of the two strings respectively.
[0036] First, create a (m+1)×(n+1) two-dimensional array d p , where d p [i][j] represents the minimum number of operations required to convert the first i characters of the first string into the first j characters of the second string. Initialize the first row and first column of the dp array: p [0][j] = j, which means that to convert an empty string into a string of length j, j insertion operations are required. p [i][0]=i, which means that to convert a string of length i into an empty string, i deletion operations need to be performed. p Array, fill the remaining elements: If the current characters of the two strings are the same, that is, str1[i-1] == str2[j-1], then d p [i][j]=d p [i-1][j-1], no editing operation is required. If the current characters of the two strings are different, then d p [i][j] takes the minimum value of the following three cases: d p [i-1][j]+1 means deleting the i-th character of str1; d p [i][j-1]+1 means inserting the jth character of str2 after the i-th character of str1; d p [i-1][j-1]+1 means replace the i-th character of str1 with the j-th character of str2. p[m][n] is the edit distance between the two strings. The actual edit distance value calculated by the edit distance algorithm is compared with the preset threshold. If the actual value is less than or equal to the threshold, it is determined that the similarity between the license plate number and the registered ID is high enough, and the vehicle identity verification passes. If the actual value is greater than the threshold, it is determined that the similarity between the license plate number and the registered ID is low, and the vehicle identity verification fails.
[0037] When the vehicle actually passes through the gate and enters the site, the access layer gateway generates vehicle release record data, including vehicle ID, release time and other information. The access layer gateway publishes the release record data to the "vehicle_access" topic of Kafka through the ProducerAPI of the Kafka message queue. The site control system and the coal supply chain business platform act as consumers, subscribe to this topic, and receive real-time release record data. The site control system writes the release record to the entry and exit log table in relational databases such as MySQL, and displays historical data queries and statistical reports. The coal supply chain business platform updates the vehicle status information in memory databases such as Redis, such as marking the vehicle status as "in the site", real-time scheduling and full-process tracking. Coal unloading control unit, RFID equipment deployment: RFID antennas and reader devices are installed above the unloading hopper or trestle at the coal unloading point. The RFID antenna uses a long-distance, high-power model, such as the Yagi antenna in the UHF band, to ensure a reading distance of about 10 meters. The RFID reader is an industrial-grade device with RS485 or ZigBee communication interface, supporting simultaneous reading of multiple antennas and multiple tags.
[0038] When the coal-carrying vehicle enters the coal unloading station, the electronic tag pre-pasted on the vehicle windshield enters the reading range of the RFID antenna. The RFID reader-writer transmits electromagnetic waves through the antenna to power the electronic tag and receives the modulated signal reflected by the tag. The reader-writer decodes the modulated signal and obtains the vehicle's unique identification code (such as EPC code) stored in the electronic tag. The obtained vehicle identification code is uploaded to the station management and control system via the wireless network and compared with the vehicle ID pre-registered in the database. The station management and control system checks the status of the vehicle (such as empty, fully loaded, faulty, etc.) and dispatch instructions (such as coal unloading target quantity, allowed coal unloading time period, etc.).
[0039] If the vehicle status and dispatching instructions are verified, the station control system generates a coal unloading permission instruction. The gate opening instruction is sent to the programmable logic controller (PLC) of the unloading hopper control unit through the RS485 bus or ZigBee wireless communication protocol. After receiving the gate opening instruction, the PLC controls the actuator to open the valve or gate under the unloading hopper, allowing the coal to fall into the coal storage bin or the car coal receiving chute. At the same time, the coal unloading permission signal is sent to the display screen in the driver's cab through the wireless communication module, prompting the driver to start the coal unloading operation.
[0040] Figure 3 This is an exemplary flow chart for calculating the weight of coal according to some embodiments of the present application. A laser triangulation scanner is installed at the coal discharge port, and the scanner consists of a laser emitter, a CCD camera and a controller. The laser emitter emits a laser line, which is irradiated to the surface of the coal to form a laser belt, and the CCD camera collects the laser belt image from another angle. The controller calculates the three-dimensional coordinates of each point on the laser belt based on the image collected by the CCD camera through the triangulation principle. By rotating or translating the scanner, the laser belt is scanned on the surface of the coal to obtain a series of three-dimensional coordinate point cloud data. The acquired original point cloud data is preprocessed to remove noise points introduced by factors such as coal dust and fog. A statistical filtering method, such as the K nearest neighbor method or the radius filtering method, is used to calculate the average distance between each coordinate point and its corresponding neighborhood point. A threshold is set, and the coordinate points with an average distance greater than the threshold are marked as noise points and removed from the point cloud data set. The denoised point cloud data set is obtained, and the point cloud distribution is more uniform and regular, which is conducive to subsequent surface reconstruction.
[0041] A three-dimensional surface model is established based on the denoised point cloud data set, and the three-dimensional point cloud data set P = {(x, y, z)} is mapped to the XY plane to obtain the corresponding two-dimensional point set Q = {(x, y)}. The mapping method can be positive projection, that is, directly ignoring the Z coordinate, or other transformation methods, such as conformal transformation, area-preserving transformation, etc. The mapped two-dimensional point set Q corresponds one-to-one to the original three-dimensional point cloud P, and the distribution characteristics of the point cloud in the XY plane are retained. Delaunay triangulation is performed on the mapped two-dimensional point set Q to generate a plane triangle mesh. The basic principle of the Delaunay triangulation algorithm is: for any four points on the plane, if the circumscribed circle formed by three of the points does not contain the fourth point, then these three points form a Delaunay triangle. Commonly used Delaunay triangulation algorithms include incremental insertion method, divide-and-conquer method, scan line method, etc., and the appropriate algorithm can be selected according to the scale and distribution characteristics of the point set. The plane triangle mesh generated by triangulation is unique, and slender triangles are avoided as much as possible, which is conducive to subsequent surface reconstruction. According to the plane triangle mesh generated by Delaunay triangulation, the topological relationship between triangles is established. The topological relationship includes information such as the vertices, edges, and adjacent triangles of the triangle, which can be represented by topological data structures such as half-edge data structures and facet-edge data structures. Commonly used methods for establishing topological relationships include methods based on triangle traversal and methods based on edge traversal. The purpose of establishing triangle topological relationships is to provide necessary connection information for subsequent three-dimensional mapping and surface reconstruction. According to the topological relationship of the two-dimensional triangle mesh, each triangle is mapped back to the three-dimensional space to obtain a three-dimensional surface model that fits the original point cloud. The mapping method is to replace the three vertex coordinates (x, y) of each two-dimensional triangle with the corresponding three-dimensional point cloud coordinates (x, y, z) to obtain a three-dimensional triangular patch. The normal vector of the three-dimensional triangular patch can be calculated by the cross product of two edges, which reflects the orientation of the patch. If the original point cloud density is low or unevenly distributed, interpolation or smoothing can be performed while mapping the triangle to improve the quality of the surface model. The set composed of all three-dimensional triangular patches is the reconstructed three-dimensional surface model, which approximately represents the surface shape of the coal accumulation body.
[0042] The volume of coal accumulation is calculated based on the three-dimensional surface model. First, the greedy projection triangulation algorithm is used to generate a triangular mesh. According to the resolution of the divided mesh, the vertices of the three-dimensional surface model are projected to the XY plane to obtain the corresponding two-dimensional point set. The projection method is orthogonal projection, that is, the Z coordinate is directly ignored and the (x, y, z) coordinates of the vertex are converted to (x, y) coordinates. Delaunay triangulation is performed on the projected two-dimensional point set to generate a plane triangular mesh. Commonly used Delaunay triangulation algorithms include incremental insertion method, divide-and-conquer method, scanning line method, etc. The appropriate algorithm can be selected according to the scale and distribution characteristics of the point set. The basic idea of the incremental insertion method is: starting from an initial triangle, inserting points one by one, and adjusting the local triangles according to the Delaunay property until all points are inserted. Starting from the top layer, according to the topological relationship of the two-dimensional triangular mesh, three-dimensional triangular mesh units are generated layer by layer. For each two-dimensional triangle, according to the X and Y coordinates of its three vertices, the corresponding Z coordinate on the three-dimensional surface model is found to obtain the vertex coordinates of the three-dimensional triangular mesh unit. Calculate the normal vector of the 3D triangle mesh unit, and then perform lighting calculation and visualization. Store the generated 3D triangle mesh unit into the mesh data structure, such as triangle face list, vertex list, etc. Generate 3D triangle mesh units layer by layer from the top layer to the bottom layer until the entire 3D surface model is covered.
[0043] For each triangular mesh unit, calculate the average value of its three vertex coordinates to get the center coordinate of the mesh unit. Suppose the vertex coordinates of the i-th triangular mesh unit are (x1, y1, z1), (x2, y2, z2), (x3, y3, z3), then its center coordinate (cx i ,cy i ,cz i )for: The coal deposit is considered as an irregular polyhedron determined by the center coordinates of each triangular mesh unit. Each center coordinate represents a sub-volume unit. Volume calculation of triangular mesh unit: For each triangular mesh unit, the volume is calculated using the Gaussian numerical integration method. m Gaussian integration points are selected in the triangular mesh unit. Each integration point has a corresponding coordinate (x j ,y j ,z j ) and weight coefficient w j The volume V of the i-th triangular mesh unit i It can be approximately calculated by the following formula: Where Ω is the integration domain of the i-th triangular mesh unit. There are many methods for selecting Gaussian integration points, and the commonly used ones are the tetrahedron 4-point scheme and the decahedron 10-point scheme, which can be selected according to the accuracy requirements and computational efficiency.
[0044] Calculation of the total volume of the coal deposit: Traverse all triangular grid units, accumulate the volume of each unit, and obtain the total volume V of the coal deposit. Assuming that the coal deposit consists of n triangular grid units, the total volume V is: Among them, V i is the volume of the i-th triangular grid unit. According to the preset coal density parameter ρ, the coal weight M is calculated by the formula M=ρV. The coal density parameter ρ can be preset according to factors such as coal type and moisture content, and can also be dynamically updated through sampling and detection.
[0045] The cargo control module of the yard station includes: a vehicle entry and exit control unit: entry control: a vehicle identification device is installed at the entry gate, such as a high-definition camera, license plate recognition software, etc. When a vehicle approaches the entry gate, the vehicle identification device is automatically triggered to collect vehicle images. The license plate number is extracted from the collected image using an image recognition algorithm, such as a license plate detection and recognition model based on deep learning. The extracted license plate number is compared with the vehicle ID in the supply plan database, and the mapping relationship between the license plate number and the vehicle ID is used to determine whether the vehicle is in the supply plan. If the comparison is consistent, that is, the vehicle is in the supply plan, a gate opening instruction is generated to control the gate to be lifted and allow the vehicle to enter the yard; otherwise, the gate is kept closed and the vehicle is refused to enter the yard. Exit control: an RFID reader is installed at the exit gate to read the vehicle ID in the vehicle RFID electronic tag. When the vehicle approaches the exit gate, the RFID reader is automatically triggered and uses a time division multiple access anti-collision algorithm, such as the ALOHA algorithm or the binary tree algorithm, to communicate with the vehicle RFID electronic tag and read the vehicle ID stored therein. The read vehicle ID is compared with the vehicle ID in the supply plan database to determine whether the vehicle is in the supply plan and whether the quantity of goods loaded and unloaded meets the supply plan requirements. If the comparison is consistent and the quantity of goods loaded and unloaded meets the requirements, a gate opening instruction is generated to control the gate to be raised and allow the vehicle to exit; otherwise, the gate is kept closed and the vehicle is refused to exit.
[0046] Loading and unloading metering unit: Entry weighing: Install a weighing sensor array at the entrance of the loading and unloading area, such as a weighing scale, weighing plate, etc. When a vehicle enters the loading and unloading area, the wheels press on the weighing sensor array, triggering the collection of weighing data. The weighing sensor array transmits the collected weight data to the controller, such as a PLC or industrial computer, through wired or wireless communication. After receiving the weight data, the controller associates it with the vehicle ID and stores it in the database as the vehicle's dead weight data before entering the site. Exit weighing: Install a weighing sensor array at the exit of the loading and unloading area, which is the same as the entry weighing equipment. When the vehicle is loaded or unloaded, it passes the weighing sensor array again, triggering the collection of weighing data. The weighing sensor array transmits the collected weight data to the controller, which associates it with the vehicle ID and stores it in the database as the vehicle's weight data after loading or unloading. Loading and unloading weight calculation: The controller reads the dead weight data before entering the site and the weight data after loading or unloading of the same vehicle from the database. Using the differential cumulative amount algorithm, the net weight of the vehicle loaded or unloaded can be obtained by subtracting the weight data collected twice, eliminating the influence of the vehicle's own weight. The calculated loading and unloading weight is associated with the vehicle ID, timestamp and other information, and stored in the database for subsequent data analysis and statistics.
[0047] Figure 4 It is an exemplary flow chart for obtaining standardized coal circulation data according to some embodiments of the present application, and the field short-distance business module includes: the field short-distance business data collection unit: data collection: belt scale IOT equipment is installed at the loading port and unloading port, such as laser belt scale, microwave belt scale, etc., to collect coal circulation data in real time. The belt scale IOT device is connected to the data collection unit through a wired or wireless network, and the collected coal circulation start quantity data and end quantity data are transmitted to the data collection unit. The data collection unit establishes a data interface with the yard cargo control module to obtain vehicle loading and unloading cargo measurement data, such as vehicle entry and exit time, loading and unloading cargo weight, etc. Data association: The coal circulation start quantity data, end quantity data and vehicle loading and unloading cargo measurement data collected by the belt scale are associated in time series to form a complete coal circulation data record. The coal circulation data record includes fields such as data collection time, loading port ID, unloading port ID, vehicle ID, coal circulation direction, and coal quantity. The associated coal circulation data records are stored in a database, such as a relational database MySQL, a time series database Influx DB, etc., to facilitate subsequent data processing and analysis.
[0048] Data processing unit for short-circuit business, data stream abstraction: Select an appropriate stream computing framework, such as Apache Flink or Apache Spark Streaming, as the data processing infrastructure. These frameworks provide high-throughput, low-latency distributed data stream processing capabilities and can process large-scale streaming data in real time. Define an abstract model for data streams and represent coal flow data as key-value pairs. <record Time,<flow Direction,amount> >. Among them: recordTime represents the timestamp of data collection, accurate to seconds or milliseconds, recording the generation time and order of data. flowDirection represents the identification of coal flow direction, such as "loading" or "unloading", distinguishing different business scenarios and data sources. amount represents the amount of coal, in tons or kilograms, measuring the scale and rate of coal circulation. Determine the type and access method of the data source, such as relational database, NoSQL database, message queue, etc. Common data sources include: relational databases such as MySQL and Oracle, which read coal flow data in real time through JDBC connectors. NoSQL databases such as Mongo DB and HBase, which read coal flow data in real time through dedicated connectors. Message queues such as Kafka and Rabbit MQ receive coal flow data in real time through consumers (Consumer). Develop a data source connector to convert the coal flow data in the data source into a data stream. The main tasks of the connector include: establishing a connection with the data source, such as creating a JDBC connection, Kafka consumer, etc. Define query statements or consumer configurations for data reading, such as SQL queries, Kafka topics, and consumer groups. Convert the read data into key-value pairs <record Time,<flow Direction,amount> > to build a data stream. Handle exceptions and errors in the data reading process, such as connection interruption, incorrect data format, etc. Register the data source connector in the stream computing framework, and configure the properties and behaviors of the data stream, such as: specify the type and parameters of the data source connector, such as JDBCURL, Kafka Broker address, etc. Set the parallelism, time characteristics (Event Time or ProcessingTime), Watermark generation strategy, etc. of the data stream. Define data stream transformation operations, such as filtering, mapping, aggregation, etc., to pre-process and enhance the data. Start the stream computing job, read the coal flow data in the data source in real time, and convert it into a data stream. The data stream is a steady stream of key-value pairs. <record Time,<flow Direction,amount> > into the stream computing framework for subsequent data processing and analysis.
[0049] Window partitioning: Use the sliding window mechanism to process the data stream, and build a sliding window operator to divide the data stream into windows according to the preset time interval (such as 5 minutes) and window length (such as 1 hour) parameters. The sliding window slides forward at a fixed time interval. Each window contains data within a certain time range, and there may be overlap between windows. Through window partitioning, the unbounded data stream is converted into a bounded data set in windows, which is convenient for subsequent aggregation calculations. Group aggregation: Use the Group By operator provided by the stream computing framework to group the data stream according to the flow direction identification field (flow Direction). The Group By operator divides data records with the same flow Direction value into the same group. In each group, use the Aggregate operator to perform aggregation calculations on the coal quantity field (amount). The Aggregate operator can specify various aggregation functions, such as sum, average, maximum, etc. Here, the amount field needs to be summed to obtain the subtotal data of coal flow in each flow direction in the current window. The aggregation result is expressed as<window Start Time,window End Time,flow Direction,sumAmount> The output is in the form of , where window Start Time and window End Time represent the start time and end time of the window respectively, flow Direction represents the coal flow direction, and sumAmount represents the sum of the coal flow volume in the current window.
[0050] Watermark and window closure: Introduce a watermark mechanism in the data stream to process delayed data in the data stream and ensure data integrity and consistency within a certain time range. A watermark is a timestamp that indicates that the data in the data stream has reached a certain time point and no earlier data will arrive. Set the watermark generation strategy based on the actual occurrence time of the data and the preset maximum allowable delay threshold (such as 5 minutes). Common watermark generation strategies include fixed delay watermarks and periodic watermarks. Fixed delay watermarks generate watermarks based on the event time of the data and the maximum allowable delay, while periodic watermarks generate watermarks at fixed time intervals. In the stream computing framework, watermark operators (such as AssignerWithPeriodic Watermarks or AssignerWithPunctuatedWatermarks) are used to periodically trigger the window closing operation. When the watermark time exceeds the sum of the window end time and the maximum allowable delay, it means that the data in the window is complete and the window can be closed. When the window is closed, the subtotal data of coal turnover in the current window is persisted to the state storage, such as HDFS (Hadoop Distributed File System) or Rocks DB (key-value database). State storage provides reliable data persistence and fault tolerance mechanisms to ensure that data remains available after failure recovery.
[0051] Secondary windowing: The coal flow volume data of multiple consecutive windows are secondary windowed to further aggregate the fine-grained coal flow volume subtotal data to form normalized coal flow data on a larger time scale. The KeyBy operator is used to group the data stream according to the flow direction identification field (flow Direction), and the data with the same flow direction is divided into the same group. The Window operator is used to perform secondary windowing on the data in each group. The Window operator re-divides the data according to the preset time interval (such as 1 day) to form a large window containing multiple sub-windows. Common window types include tumbling windows (TumblingWindow) and sliding windows (SlidingWindow). After secondary windowing, each large window contains the coal flow volume subtotal data of multiple sub-windows, which need to be further aggregated and calculated.
[0052] Merge and summarize: In the large window formed by the secondary windowing, use the Reduce Function to customize the merge strategy and accumulate and summarize the coal flow volume data of each sub-window with the same flow direction identifier. The Reduce Function accepts two input values and merges them into one output value. Here, it is necessary to accumulate the coal flow volume of each sub-window to obtain the total coal flow volume of each flow direction in the large window. The merge result is<window Start Time,window End Time,flowDirection,sumAmount> The output is in the form of , which indicates the cumulative coal flow volume (sumAmount) of each flow direction (flow Direction) within the large window time range (window Start Time to window End Time). The merged and summarized results are output through a data sink connector (such as Kafka Producer) and persistently stored in a database or message queue. The database can be a relational database (such as MySQL, Postgre SQL) or a time series database (such as Influx DB, OpenTSDB), which stores standardized coal flow data for subsequent query and analysis. Message queues (such as Kafka) can pass data to downstream consumers to achieve data decoupling and asynchronous processing.
[0053] Field short-circuit business data analysis unit: According to the time window fields (such as windowStart Time and window EndTime) of the normalized coal flow data, the data is divided into time windows of fixed length. Each time window represents a time node, such as 1 day, 1 week or 1 month. For each time window, the coal quantity fields (such as sumAmount) of all coal flow records in the window are summarized to obtain the total amount of coal flow at the time node as the observation value. The time nodes and the corresponding observation values are combined into time node-observation pairs, which are sorted in the order of the time nodes to generate a time node-observation sequence. Use time series data structures (such as Time Series in Java or pandas.Series in Python) to represent time node-observation sequences to facilitate subsequent time series analysis and modeling.
[0054] Use the ADF (Augmented Dickey-Fuller) unit root test to determine whether the time node-observation sequence is stationary. The ADF test is a commonly used time series stationarity test method to detect whether there is a unit root (i.e., non-stationarity) in the sequence. Set the significance level α (such as 0.05) to indicate the probability of rejecting the null hypothesis (the sequence has a unit root) at a given confidence level. Perform an ADF test on the time node-observation sequence to obtain the P value of the test. If the P value is greater than the significance level α, the null hypothesis cannot be rejected and the sequence is judged to be non-stationary; otherwise, the sequence is judged to be stationary. If the sequence is non-stationary, perform a first-order difference operation on the sequence, that is, calculate the difference between adjacent observations to generate a difference sequence. Repeat the ADF test on the difference sequence until the differenced sequence passes the ADF test. Output a stationary time series, that is, a time node-observation sequence or its difference sequence that passes the ADF test. A stationary sequence is a basic requirement for time series analysis and modeling, ensuring that the statistical characteristics of the sequence remain unchanged over time.
[0055] Calculate the autocorrelation coefficient (ACF) and partial correlation coefficient (PACF): Use relevant library functions of statistical software or programming languages, such as the acf() and pacf() functions of R language, to calculate the ACF and PACF values of the stationary time series. Specify an appropriate maximum lag order, such as a lag order of 1 / 3 or 1 / 4 of the length of the time series, to ensure that the key correlation structure of the series can be captured. Draw ACF and PACF graphs, observe the numerical and graphical characteristics of the autocorrelation and partial correlation coefficients at different lag orders, and judge the short-term and long-term correlation of the series.
[0056] Determine the order range of the ARMA model: Based on the characteristics of the ACF and PACF graphs, preliminarily determine the possible range of values for the orders p and q of the ARMA(p,q) model. For the AR(p) model, the PACF graph is truncated after the p-order, and the ACF graph shows exponential decay or fluctuating decay. For the MA(q) model, the ACF graph is truncated after the q-order, and the PACF graph shows exponential decay or fluctuating decay. Considering the characteristics of the ACF and PACF graphs, and according to the characteristics of the time series and the previous ACF and PACF analysis results, determine the range of values for the orders p and q of the ARMA model. Usually, the range of p and q can be selected from 0 to a smaller positive integer, such as 0 to 5 or 0 to 10, to form an order parameter space.
[0057] Fitting ARMA(p,q) model: For each set of p and q values in the order parameter space, use the time series modeling function of statistical software or programming language, such as arima(function) in R language, to fit the ARMA(p,q) model. During the fitting process, specify the order of the model as the current p and q values, and use the default values for other parameters or set them as needed. Use the maximum likelihood estimation method to estimate the parameters of the model, that is, to find the optimal values of the model parameters by maximizing the likelihood function.
[0058] Calculate the BIC value: For each fitted ARMA (p, q) model, calculate its corresponding BIC (Bayesian Information Criterion) value. The calculation formula for the BIC value is: BIC = -2×logL+k×logn, where L is the maximum likelihood estimate of the model, k is the number of parameters of the model, and n is the number of samples. The BIC value comprehensively considers the goodness of fit of the model (through the maximum likelihood estimate) and the complexity of the model (through the number of parameters). The smaller the value, the better the model. Record BIC values: Create a BIC value matrix or data frame to store the BIC values corresponding to each set of p and q values. The rows of the matrix or data frame represent the p values, the columns represent the q values, and each cell stores the BIC value corresponding to the p and q combination. Fill the BIC value of each fitted model into the corresponding cell to form a complete BIC value matrix or data frame.
[0059] Find the optimal order in the BIC value matrix or data frame, create a two-dimensional array or table to store the BIC values, the rows represent the p values, the columns represent the q values, and each cell stores the BIC value corresponding to the combination of p and q. Traverse the entire BIC value matrix or data frame and compare the BIC value of each cell one by one. Use two variables p min and q min Record the p and q values corresponding to the currently found minimum BIC value. Initialize p min and q min The p and q values corresponding to the first cell of the BIC value matrix or data frame. Starting from the second cell, compare the BIC value of each cell with the current minimum BIC value. If the BIC value of the current cell is smaller, update p min and q min is the p value and q value corresponding to the current cell. After traversing the entire BIC value matrix or data frame, p min and q min That is, the optimal order p and q. Output the optimal order p and q, and the corresponding ARMA (p*, q*) model. Perform residual diagnosis on the selected ARMA (p*, q*) model to check whether the residual sequence meets the white noise condition. If not, consider further optimizing the model.
[0060] Forecast using the ARMA (p*, q*) model: The selected ARMA (p*, q*) model should be a stable time series, and use the relevant library functions of statistical software or programming languages, such as the forecast (function) of the R language, to forecast the coal turnover in the future time window. Specify the number of time windows T for prediction, such as predicting the coal turnover in the next 1 month, 3 months or 6 months. Based on the observations of historical time nodes, use the prediction formula of the ARMA model to recursively calculate the predicted values of the next T time windows to generate a prediction sequence of length T. Match the predicted sequence with the corresponding start and end time of the future time window to form a prediction result data frame or data table. The prediction results are expressed in<futureWindowStartTime,futureWindowEndTime,predictedAmount> It is presented in the form of , which represents the predicted coal turnover in each future time window.
[0061] Figure 5 This is an exemplary flow chart for obtaining vehicle dispatch instructions according to some embodiments of the present application. The coal lifting business module, first, the coal lifting demand receiving unit: design a user interface to allow users to submit coal lifting demand information through a web page or mobile application. Design a data interface at the back end to receive and parse the coal lifting demand information submitted by the user. Perform necessary verification and preprocessing on the coal lifting demand information, such as checking data integrity, format legitimacy, etc. Store the coal lifting demand information in a database for subsequent processing and query.
[0062] The coal picking plan generation unit reads the coal picking demand information submitted by the user from the database, including the coal picking user identification, coal picking quantity and coal picking time. Obtain the coal inventory information of the station, including the current coal inventory of each station. Construct an integer programming model: Define decision variables: Let x[i][j] represent the coal picking quantity of the i-th coal picking demand at the j-th station, where i=1, 2,..., n, j=1, 2,..., m. n is the total number of coal picking demands, and m is the total number of stations. x[i][j] is a non-negative integer. Define the objective function: Let t[i] represent the expected coal picking time of the i-th coal picking demand. Let T[j] represent the planned loading time of loading at the j-th station. The objective function is to minimize the sum of the absolute values of the difference between the expected coal picking time and the planned loading time of the coal picking demand, and the expression is as follows: Set constraints: Coal inventory limit for each station: Let S[j] represent the current coal inventory of the jth station. The constraints are: For each station j, That is, the total loading volume of each station does not exceed its inventory. Vehicle capacity limit: Let C represent the rated load of each vehicle. The constraint condition is: for each coal demand i, That is, the total loading quantity of each coal lifting demand does not exceed the rated load of the vehicle. The coal lifting demand satisfies the constraint: Let D[i] represent the coal lifting quantity of the i-th coal lifting demand. The constraint condition is: for each coal lifting demand i, That is, the total loading quantity of each coal lifting demand is equal to its demand.
[0063] Use the branch and bound method to solve the integer programming model and transform the integer programming model into a standard form: minimize the objective function: The decision variables are non-negative:
[0064] x[i][j]≥0,i=1,2,......,n,j=1,2,.....,m; The constraint condition is an inequality or equality: Coal inventory limit at the station: j=1,2,……,m; Vehicle capacity limit: i=1,2,......,n;Coal extraction demand meets the restriction: i=1,2,......,n. Define the problem node: Node information includes: Current objective function value: Decision variable values: x[i][j], i=1,2,......,n, j=1,2,.....,m; Constraints: Coal inventory limit at the station, vehicle capacity limit, coal demand satisfaction limit; Node depth: The depth of the current node in the branch and bound tree; Node status: Active, pruned, integer solution. Initialize the active node list: Add the original problem as the root node to the active node list; The objective function value of the root node is infinite, the decision variable value is empty, the constraints are the constraints of the original problem, the node depth is 0, and the node status is active. Set the global lower bound and the global optimal solution: The global lower bound is initialized to infinity, indicating the optimal objective function value found so far; the global optimal solution is initialized to empty, indicating the optimal decision variable value found so far.
[0065] Branch and bound solution process: When the active node list is not empty, perform the following steps: a. Select a node from the active node list as the current node, usually the node with the smallest objective function value; b. Solve the linear relaxation problem of the current node, that is, relax the integer constraints into continuous variables to obtain a linear programming problem; c. If the relaxation problem has no solution or the objective function value is greater than the global lower bound, prune, mark the current node state as pruned, and return to step a; d. If the optimal solution of the relaxation problem meets the integer condition, update the global lower bound and the global optimal solution, mark the current node state as an integer solution, and return to step a; e. If the optimal solution of the relaxation problem does not meet the integer condition, select a fractional variable for branching, generate two child nodes, add the child nodes to the active node list, and return to step a; When the active node list is empty, the algorithm terminates and outputs the global optimal solution as the optimal solution to the integer programming problem.
[0066] Generate a coal lifting plan based on the global optimal solution: Extract the decision variable values in the global optimal solution: Extract the values of the decision variable x[i][j] from the global optimal solution obtained by the branch and bound method, i=1, 2, ..., n, j=1, 2, ..., m; x[i][j] represents the optimal loading quantity of the i-th coal lifting demand at the j-th station. Determine the loading station and loading quantity for each coal lifting demand: For each coal lifting demand i, i=1, 2, ..., n, perform the following steps: Initialize the loading station list of coal lifting demand i to be empty and the loading quantity to be 0; Traverse all stations j, j=1, 2, ..., m: If x[i][j]>0, add station j to the loading station list of coal lifting demand i, and increase the loading quantity by x[i][j]; Get the loading station list and total loading quantity of coal lifting demand i. Determine the loading time of each coal lifting demand: For each coal lifting demand i, i=1, 2, ..., n, perform the following steps: According to the list of loading stations for coal lifting demand i, obtain the planned loading time T[j] of the corresponding station; Set the loading time of coal lifting demand i to the earliest planned loading time of its loading station.
[0067] Generate a coal lifting plan: Create an empty coal lifting plan list. For each coal lifting demand i, i = 1, 2, ..., n, perform the following steps: Create a coal lifting plan object, containing the following information: coal lifting demand number: i; loading station list: list of loading stations for coal lifting demand i; loading time: loading time for coal lifting demand i; loading quantity: total loading quantity for coal lifting demand i; Add the coal lifting plan object to the coal lifting plan list. Get a complete coal lifting plan list and store the coal lifting plan in the database: Connect to the coal lifting plan database; For each coal lifting plan object in the coal lifting plan list, perform the following steps: Insert the information of the coal lifting plan object into the coal lifting plan table of the database, including fields such as coal lifting demand number, loading station list, loading time, and loading quantity; Submit the database transaction to ensure the persistent storage of the coal lifting plan data.
[0068] Construct a directed graph of vehicle travel paths and determine the nodes of the directed graph: Use the loading station in the coal lifting plan as the starting node of the directed graph, indicating the starting point of the vehicle travel path. Use the location of the coal lifting user as the end node of the directed graph, indicating the destination of the vehicle travel path. According to the actual geographical location and road network, determine the intermediate nodes that the vehicle may pass through during the travel process, such as major cities, transportation hubs, etc. Each node represents a geographical location, including the loading station, the location of the coal lifting user, and the intermediate locations.
[0069] Determine the edges of the directed graph: According to the road network connection, add directed edges between nodes to represent the roads connecting these nodes. The direction of the directed edge represents the legal direction of vehicle travel, pointing from one node to another. The weight of each directed edge can represent the distance of the road, the travel time, or other related factors, such as road grade, traffic restrictions, etc. The weight of the edge can be set according to the actual situation, for example, using the actual distance of the road as the weight, or considering the road travel time and road conditions to comprehensively determine the weight.
[0070] Use the depth-first search algorithm to traverse the directed graph: Starting from the starting node, use the depth-first search algorithm to traverse the directed graph and explore all possible paths from the starting point to the end point. The basic idea of the depth-first search algorithm is to explore forward along a path as much as possible until it is impossible to continue, then backtrack to the previous node and try other unexplored branches. During the traversal process, record the nodes and edges passed through to form a complete vehicle driving path. When the end node is reached, it means that a feasible vehicle driving path has been found and the path is saved. Continue the depth-first search until all possible paths have been explored.
[0071] Processing path constraints: When traversing a directed graph, actual constraints need to be considered, such as road access restrictions, vehicle weight limits, etc. For each explored path, determine whether these constraints are met. If not, prune the path and stop exploring it. Constraints can include one-way traffic on roads, vehicle weight limits, road height limits, etc., which should be set according to actual conditions. Generate a vehicle driving path search space: All feasible paths obtained by depth-first search form a vehicle driving path search space. Each path in the search space represents a possible vehicle driving plan, from the starting point to the end point, passing through a series of nodes and edges. The size of the search space depends on the complexity of the directed graph and the restrictions of the constraints, and may contain a large number of feasible paths.
[0072] Initialize the ant colony algorithm, the encoding of the ant individual: encode each coal-lifting vehicle as an ant individual, and each ant individual represents a coal-lifting vehicle. The properties of the ant individual include: Current node: indicates the current geographical location of the ant individual, which is initially the loading station. Traveled path: records the nodes and edges that the ant individual has passed from the starting point to the current node, which is initially empty. Loaded coal order list: records the coal-lifting orders currently loaded by the ant individual, including order number, loading quantity and other information, which is initially empty. The encoding of the ant individual can be represented by an array or object to store the various attribute information of the ant individual.
[0073] Generate an initial coal loading order list: Generate an initial coal loading order list for each ant individual based on the loading quantity and vehicle loading constraints in the coal lifting plan. The loading quantity in the coal lifting plan represents the loading quantity of each coal lifting demand, and the vehicle loading constraint represents the maximum load of each vehicle. Coal lifting demands are randomly selected and their loading quantities are accumulated until the vehicle loading constraint is reached or all coal lifting demands have been allocated.
[0074] The generated initial loading and coal lifting order list must meet the following conditions: Each coal lifting demand can only be assigned to one vehicle and cannot be assigned repeatedly. The load weight of each vehicle cannot exceed the vehicle loading capacity constraint. Assign coal lifting demands to vehicles as much as possible to improve vehicle utilization. The initial loading and coal lifting order list can be represented by an array or a list to store the coal lifting demand number assigned to the vehicle and the corresponding loading quantity. Place the ant individuals at the starting node: Place each ant individual at the starting node of the directed graph, that is, the loading station. The starting node represents the starting position of the vehicle's driving path, and all ant individuals start searching for the path from this node. Set the current node attribute of the ant individual to the starting node, indicating that the ant individual is currently at the loading station.
[0075] Initialize pheromone and heuristic information: Initialize pheromone and heuristic information on the edges of the directed graph to guide the search direction of individual ants. The initial pheromone value can be set to a small constant, indicating that the pheromone concentration on the edges is the same at the beginning. Heuristic information can be calculated based on the weight of the edge (such as the inverse of the distance), indicating the attractiveness or priority of the edge. The initial values of pheromone and heuristic information can be stored in the attributes of the edges of the directed graph to facilitate subsequent updates and access.
[0076] Iterative execution of the ant colony algorithm: Input coal distribution order data, vehicle data, road network data and other related information. Initialize the algorithm parameters, including the number of ant individuals, the maximum number of iterations, the pheromone volatility coefficient, the pheromone intensity coefficient, the relative importance of the pheromone concentration and heuristic information, etc. Initialize the pheromone concentration and heuristic information between nodes, where the pheromone concentration can be set to a small constant, and the heuristic information can be calculated based on the distance between nodes.
[0077] For each ant individual, the next travel node is selected according to the state transition probability rule, and a feasible path from the current node to the loading order unloading location is gradually constructed. The calculation of the state transition probability depends on the pheromone concentration and heuristic information between nodes. For an ant individual k, currently located at node i, the probability p_ij^k(t of selecting the next travel node j is calculated by the following formula: Among them, τ ij (t) represents the pheromone concentration on the edge from node i to node j at the tth iteration; η ijRepresents the heuristic information from node i to node j, usually taken as the inverse of the distance; Represents the set of next nodes that can be selected when ant individual k is currently located at node i; α and β represent the relative importance of pheromone concentration and heuristic information, respectively. The exploration and utilization capabilities of the algorithm can be controlled by adjusting the parameters. According to the above formula, when selecting the next travel node, the ant individual will comprehensively consider the pheromone concentration and heuristic information. Nodes with higher pheromone concentration and shorter distance will have a greater state transition probability and are more likely to be selected. Repeat the above process until the ant individual reaches the unloading place of the loading order, completing a path search. Heuristic information η ij It represents the attraction or priority of node i to node j, usually taken as the inverse of the distance. The calculation formula is: Among them, d ij Represents the distance from node i to node j. The heuristic information value corresponding to the node with a shorter distance is larger, indicating that the node has a higher priority and is more likely to be selected by the ant individual.
[0078] Calculation of fitness value: When an ant individual completes a path search, it is necessary to calculate the fitness value of the path to evaluate the quality of the path. The fitness function can be designed according to the characteristics of the problem and the optimization goal. Common fitness functions include: Total mileage fitness function: Among them, L k Indicates the total mileage of the path searched by the kth ant in the current iteration. This fitness function indicates that the shorter the total mileage of the path, the greater the fitness value and the better the path quality. Comprehensive fitness function: Among them, L k represents the total mileage of the path searched by the kth ant in the current iteration; C k represents the total cost of the path or other related indicators searched by the kth ant in the current iteration; w1 and w2 are weight coefficients, balancing the importance of total mileage and other indicators. The fitness function comprehensively considers the total mileage of the path and other related indicators, and calculates the fitness value by weighted summation. The selection and design of the fitness function can be determined according to the needs of the actual problem and the optimization goal to reflect the quality of the path.
[0079] Update of pheromone concentration: After each iteration, the pheromone concentration on the edge between nodes is updated according to the search results of the ant individuals. The formula for updating the pheromone concentration is as follows: Among them, ρ represents the pheromone volatility coefficient, which simulates the decay of pheromone over time; m represents the number of ant individuals;
[0080] It represents the increment of pheromone left by the k-th ant on the edge from node i to node j in the t-th iteration. The calculation formula is: If the kth ant passes through the edge from node i to node j in the tth iteration; Otherwise. Where Q represents the pheromone intensity coefficient, L k (t) represents the total path length of the kth ant in the tth iteration. By updating the pheromone concentration, the pheromones left by individual ants during the search process will affect the search direction of subsequent ant individuals and guide the algorithm to converge towards a better solution.
[0081] Selection of the optimal solution: After each iteration, traverse the paths searched by all ant individuals and calculate the fitness value of each path. The path with the largest fitness value is taken as the local optimal solution of the current iteration. Compare the fitness value of the local optimal solution of the current iteration with the fitness value of the global optimal solution so far: If the fitness value of the current local optimal solution is greater than the fitness value of the global optimal solution, update the current local optimal solution to the new global optimal solution. If the fitness value of the current local optimal solution is less than or equal to the fitness value of the global optimal solution, the global optimal solution is not updated. Record the path information corresponding to the global optimal solution, including the list of coal loading and unloading orders and the driving path, and subsequent data output.
[0082] Iteration termination condition judgment: Set two iteration termination conditions: Condition 1: The current number of iterations reaches the preset maximum number of iterations. Condition 2: Multiple consecutive iterations fail to update the global optimal solution (algorithm convergence). After each iteration, determine whether the iteration termination condition is met: If the current number of iterations is equal to the preset maximum number of iterations, condition 1 is met and the algorithm terminates. If the global optimal solution is not updated after multiple consecutive iterations (for example, 50 consecutive times), condition 2 is met and the algorithm terminates. If the iteration termination condition (condition 1 or condition 2) is met, the algorithm terminates and the current global optimal solution is output as the final optimization result. If the iteration termination condition is not met, continue to the next iteration and return to the path search stage of the individual ant. When the algorithm terminates, obtain the list of loading and coal picking orders and the shortest driving path corresponding to the global optimal solution.
[0083] Visualize the optimization results: Generate a list of coal loading and unloading orders, and display the coal loading order information of each vehicle in the form of a table or list, including order number, unloading place, cargo quantity, etc. Draw a vehicle driving path map, graphically display the driving path of each vehicle, and mark key nodes (such as starting point, unloading place, end point) and path sequence. Calculate and display key indicators of the optimization results, such as total mileage, total cost, loading rate, etc. Export the optimization results as files or reports: Export the list of coal loading and unloading orders as files in Excel or CSV format to facilitate subsequent analysis and data processing. Export the vehicle driving path information as GPS coordinate data files or path description files for actual scheduling and navigation. Generate an optimization result report in the form of PDF or Word documents, including information such as algorithm parameter settings, iteration process, and optimal solution indicators. The data generated by each business module is uploaded to the data center via industrial Ethernet, and after pre-processing such as cleaning, association, and aggregation, it is stored in the system database in the form of structured data. Statistical indicators such as coal supply volume, transportation volume, on-site inventory, daily average, weekly peak and valley values are obtained through OLAP analysis and calculation.
Claims
1. A bulk commodity supply chain management system, comprising: The coal loading business management module generates a supply plan based on user needs and coal inventory information at the station, obtains the vehicle license plate through image recognition and compares it with the vehicle ID pre-entered in the system, controls vehicle entry and coal unloading based on the verification results, and collects coal unloading data and updates the coal inventory information at the station by interacting with the IOT equipment at the coal unloading port; the IOT equipment at the coal unloading port includes RFID equipment and infrared sensors; The terminal cargo control module controls the vehicles entering and leaving the terminal and collects the measurement data of vehicles loading and unloading goods according to the supply plan; The short-haul business module obtains the starting and ending data of coal circulation by interacting with the belt scale IOT devices at the loading and unloading ports, and forms coal circulation data by combining the collected vehicle loading and unloading cargo measurement data; and uses the stream computing framework to process the coal circulation data, and predicts the time and quantity of coal circulation through data mining algorithms; The coal lifting business module generates a coal lifting plan based on the user's coal lifting needs and controls the vehicle loading of coal.
2. The bulk commodity supply chain management system according to claim 1, characterized in that: Coal business management module, including: Supply planning unit, which generates supply plans based on user demand and coal inventory information at the station; The vehicle identification unit uses a convolutional neural network to extract features and classify vehicle images to obtain the license plate number of the vehicle entering the site; The entry verification unit compares the obtained license plate number with the vehicle ID pre-entered in the system, and calculates the similarity between the license plate number and the vehicle ID through the Distans metric algorithm. When the similarity is greater than the preset threshold, an entry instruction is generated, otherwise a prohibition of entry instruction is generated; The coal unloading control unit controls the coal unloading of the vehicle according to the entry instruction, interacts with the RFID device at the coal unloading port, identifies the RFID electronic tag installed on the coal unloading vehicle, obtains the unique identification code of the coal unloading vehicle, and compares the obtained unique identification code of the coal unloading vehicle with the vehicle ID pre-entered in the system. When the comparison is consistent, the coal unloading data is collected by interacting with the laser radar device at the coal unloading port, and the coal inventory information of the station is updated according to the coal unloading data; Among them, the laser radar device scans the surface morphology of coal at the coal unloading port through laser triangulation measurement to obtain coal accumulation volume data, and converts the coal volume into coal weight according to the preset coal density parameters. When the converted coal weight reaches the coal weight of the supply plan, a stop unloading signal is generated, and the vehicle is controlled to stop unloading according to the unloading information.
3. The bulk commodity supply chain management system according to claim 2, characterized in that: Convert coal volume to coal weight, including: The surface morphology of coal at the coal discharge port is scanned by laser triangulation to obtain a series of three-dimensional coordinate point cloud data; According to the three-dimensional coordinate point cloud data, the average distance between each coordinate point and the corresponding neighborhood point is calculated by statistical filtering method, and the coordinate points with an average distance greater than the threshold are marked as noise points, and the noise points are removed to obtain the denoised point cloud data; According to the denoised point cloud data set, the point cloud data set is mapped to a two-dimensional plane through the Delaunay triangulation algorithm, the mapped two-dimensional data point set is triangulated, the triangular mesh topological relationship is established, and the triangular mesh is mapped back to the three-dimensional space to obtain the three-dimensional surface model of the coal accumulation body; According to the three-dimensional surface model, the volume V of the coal accumulation body is calculated by numerical integration method; According to the preset coal density parameter ρ, the coal weight M is calculated by the formula M=ρV.
4. The bulk commodity supply chain management system according to claim 3, characterized in that: According to the three-dimensional surface model, the volume V of the coal accumulation body is calculated by numerical integration method, including: The three-dimensional surface model is triangulated, and the coal accumulation body is divided into multiple triangular grid units by using the greedy projection triangulation algorithm; The vertex coordinates of each triangular grid unit are averaged to obtain the center coordinates of the corresponding triangular grid unit, and the coal accumulation body is regarded as an irregular polyhedron determined by the center coordinates of each grid unit; Calculate the volume V of each triangular mesh cell i , add up the volumes of all triangular grid units to get the total volume V of the coal accumulation; Calculate the volume V of each triangular mesh cell i : Among them, V i is the volume of the i-th triangular mesh unit, Ω is the integration domain of the i-th triangular mesh unit, m is the number of Gaussian integration points, and w j is the weight coefficient of the jth Gaussian integration point, x j ,y j 、z j is the coordinate of the jth Gaussian integration point.
5. The bulk commodity supply chain management system according to claim 3, characterized in that: Terminal cargo control module, including: The vehicle entry and exit control unit controls the vehicle entry and exit according to the vehicle ID, loading and unloading cargo type and loading and unloading cargo quantity in the supply plan; When a vehicle enters the site, it interacts with the vehicle identification device of the entry gate and uses an image recognition algorithm to extract the license plate number of the vehicle entering the site. The extracted license plate number is compared with the vehicle ID in the supply plan. When the comparison is consistent, a gate opening command is generated to control the gate to lift; When a vehicle leaves the gate, it interacts with the RFID reader / writer at the gate and uses a time-division multiple access anti-collision algorithm to read the vehicle ID in the vehicle's RFID tag. The read vehicle ID is compared with the vehicle ID in the supply plan. When the comparison is consistent and the quantity of goods loaded and unloaded by the vehicle meets the requirements of the supply plan, an opening command is generated to control the gate to be lifted. Loading and unloading measurement unit, collects vehicle loading and unloading measurement data: When a vehicle enters the loading and unloading area, it interacts with the weighing sensor array in the loading and unloading area to collect the vehicle's deadweight data before entering the site; After the vehicle is loaded or unloaded, the weight data of the vehicle after loading or unloading is collected again through the weighing sensor array. The differential accumulation algorithm is used to subtract the weight data collected twice before and after loading or unloading to eliminate the influence of the vehicle's own weight and obtain the weight of the vehicle loaded or unloaded.
6. The bulk commodity supply chain management system according to claim 5, characterized in that: Field short-circuit business module, including: The short-distance business data collection unit interacts with the belt scale IOT devices at the loading and unloading ports to obtain the starting and ending data of coal circulation at the corresponding loading and unloading ports; and connects with the cargo control module of the station to obtain the vehicle loading and unloading cargo measurement data, and associates the obtained coal circulation starting and ending data with the vehicle loading and unloading cargo measurement data in time series to form coal circulation data; The field short-circuit business data processing unit uses the stream computing framework to process the coal flow data and obtains the normalized coal flow data in time windows; The field short-circuit business data analysis unit, based on the normalized coal circulation data, obtains the quantitative characteristics of coal circulation in each time window through the time series analysis algorithm.
7. The bulk commodity supply chain management system according to claim 6, characterized in that: Obtain normalized coal flow data in time windows, including: Abstract coal flow data into key-value pairs through the stream computing engine <record Time,<flow Direction, amount>>, where record Time is the data collection time, flow Direction is the coal flow direction, and amount is the coal quantity; The sliding window mechanism is used to process the data stream. According to the preset time interval and window length parameters, a sliding window operator is constructed to divide the data stream into windows, and the data stream is converted into a bounded data set in windows. In each window, the Group By operator is used to group the data according to the flow direction identification field, and then the Aggregate operator is used to sum the grouped amount fields to obtain the subtotal data of the coal flow volume of each flow direction in the current window; According to the actual occurrence time of the data and the preset maximum allowable delay threshold, the watermark operator is set to periodically trigger the window closing operation, and the subtotal data of coal turnover in the current window is persisted to the state storage; The coal flow volume data of multiple consecutive windows are windowed twice, and the KeyBy operator and Window operator are used to re-divide the data according to the preset time interval to form a large window containing multiple sub-windows; In the large window formed by the secondary window opening, the Reduce Function custom merging strategy is used to accumulate and summarize the coal flow volume data of each sub-window with the same flow direction identifier, and the summary results are output and persistently stored, finally obtaining the normalized coal flow data in units of larger time windows.
8. The bulk commodity supply chain management system according to claim 7, characterized in that: The quantitative characteristics of coal circulation in each time window are obtained through the time series analysis algorithm, including: The normalized coal circulation data is divided into time windows, and each time window is regarded as a time node; The total amount of coal turnover within the time window is extracted as the observation value of the corresponding time node, and the time node-observation value sequence is generated by sorting the time nodes; Perform an ADF unit root test on the time node-observation value sequence and set the significance level α; if the P value of the ADF test is greater than α, the sequence is judged to be unsteady, and the first-order difference operation is performed on the sequence, and the ADF test is repeated until the sequence after the difference passes the ADF test, and a stable time series is output; Calculate the autocorrelation coefficient ACF and partial correlation coefficient PACF of the stationary time series; Determine the range of the orders p and q of the ARMA(p,q) model of the stationary time series based on ACF and PACF, and obtain the order parameter space of the ARMA model; The BIC criterion is used to traverse and evaluate each group of p and q values in the order parameter space, and the ARMA (p, q) model is fitted by the maximum likelihood estimation method and the BIC value is calculated. The p and q values corresponding to the minimum BIC value are selected as the optimal order p* and q* to obtain the ARMA (p*, q*) model. The ARMA (p*, q*) model is used to predict the coal turnover in the future T time windows based on the observed values of the time nodes, forming a coal turnover prediction sequence with a length of T.
9. The bulk commodity supply chain management system according to claim 8, characterized in that: Coal extraction business module, including: A coal extraction demand receiving unit receives coal extraction demand information submitted by a user, wherein the coal extraction demand information includes a coal extraction user ID, coal extraction quantity and coal extraction time; The coal extraction plan generation unit generates a coal extraction plan based on the coal extraction demand information and the coal inventory information of the station using an integer programming algorithm; the coal extraction plan includes the loading station, loading time and loading quantity; The dispatch control unit generates vehicle dispatch instructions through ant colony algorithm according to the coal delivery plan.
10. The bulk commodity supply chain management system according to claim 9, characterized in that: According to the coal extraction plan, the ant colony algorithm is used to generate vehicle dispatch instructions, including: Taking the loading station of each coal picking order as the starting point and the location of the coal picking user as the end point, a vehicle driving path directed graph is constructed using the depth-first search algorithm to form a vehicle driving path search space; Initialize the ant population, encode each coal-lifting vehicle as an ant individual, and each ant individual carries an initial coal-lifting order list randomly generated according to the load constraint. The coal-lifting order list satisfies the constraint that the vehicle load does not exceed the rated load. Taking the shortest total mileage of vehicles as the fitness function, each ant individual selects the next travel node according to the state transition probability rule, searches for a feasible path from the current node to the loading order unloading place, calculates the fitness value of the corresponding path, and updates the pheromone concentration between nodes according to the path length; When all individuals in the ant population complete an iterative search, compare the feasible paths searched by all ant individuals, select the path with the best fitness value, and use the loading order list and driving path of the corresponding ant individual as the local optimal solution of the current iteration; The iterative search is repeated until the change in the optimal fitness value for multiple consecutive iterations is less than a threshold or the maximum number of iterations is reached. The local optimal solution corresponding to the optimal fitness value found in the iterative process is output as the global optimal solution to obtain the vehicle dispatching instruction, which includes the optimal loading and coal picking order list and the shortest driving path.
Citation Information
Patent Citations
Digital coal yard unattended operation management system and method
CN102749896A
Measurement system, method and device of scattered materials and material piling and taking control system
CN103090791A
Bulk cargo management system based on Internet of Things
CN106203915A
A server load prediction method and system based on a Markov chain and a time sequence model
CN109787855A
Cement plant cargo distribution method and system
CN110472917A
Cited By
Bulk commodity digital platform construction system and construction method
CN120952919A
