A method and device for determining a bulk cargo unloading scheme for a ship hold, and an electronic device

CN117592717BActive Publication Date: 2026-10-27CHONGQING SAIDIQIZHI ARTIFICIAL INTELLIGENCE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311598040.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-11-27
Publication Date
2026-10-27
Estimated Expiration
2043-11-27

AI Technical Summary

Technical Problem

考虑船体平衡的装卸调度模型目前国内外鲜有研究和应用案例

Benefits of technology

[0006]在上述实现过程中,通过根据每个船舱的货物总重量、所述减载次数、所述分配比例及所述概率,得到每个船舱的可行的减载方案;根据所有船舱的减载方案及第一约束条件构建多个减载向量;将多个减载向量进行堆叠形成一个矩阵,并按照所述约束条件对所述矩阵进行多次重排列,得到调度决策的解空间;能够精确计算得到调度决策的所有调度方案,然后通过目标函数对调度方案进行评价,这种方法避免了单纯依靠人工经验进行调度决策,导致的减载过程中船舱剩余货物重量不均衡的问题,通过目标函数定量分析的方式得到最终调度方案,提高了调度方案的准确性及船舱调度过程中货物剩余质量的均衡性,从而提高了卸载机器在卸载作业时的安全性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117592717B_ABST
    Figure CN117592717B_ABST
Patent Text Reader

Abstract

The application provides a method and device for determining a bulk cargo unloading scheme of a ship cabin, and electronic equipment. The method comprises: obtaining the number of ship cabins and the total weight of cargo in each ship cabin; obtaining the number of times of unloading, the distribution ratio corresponding to the number of times of unloading, and the probability of each distribution ratio for each ship cabin; obtaining a feasible unloading scheme for each ship cabin according to the total weight of cargo in each ship cabin, the number of times of unloading, the distribution ratio, and the probability; constructing a plurality of unloading vectors according to the unloading schemes of all ship cabins and a first constraint condition; stacking the plurality of unloading vectors to form a matrix, and rearranging the matrix multiple times according to the constraint condition to obtain a solution space of a scheduling decision; the solution space comprises all feasible scheduling schemes; for each scheduling scheme, obtaining an evaluation value of the scheduling scheme according to the scheduling scheme and a plurality of preset objective functions; and determining a final scheduling scheme from all scheduling schemes according to the evaluation value.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of warehousing and logistics, and specifically relates to a method, apparatus, and electronic equipment for determining a bulk material unloading scheme in a ship's hold. Background Technology

[0002] Job scheduling problems are common in industrial manufacturing, and can be further divided into shop floor scheduling and assembly line scheduling. Specialized scenarios involve even more complex scheduling, such as vehicle scheduling and dockside cargo loading and unloading scheduling. Typical scheduling problems consider multiple operations and multiple machines, with optimization goals focused on resource balance and operational efficiency. Currently, there are few research and application cases of loading and unloading scheduling models that consider ship hull balance, both domestically and internationally. Summary of the Invention

[0003] Therefore, the purpose of this application is to provide a method, apparatus, and electronic equipment for determining a bulk unloading scheme in a ship's hold, so as to improve the balance of the ship's hold when unloading cargo, thereby improving the safety of the unloading machine operation.

[0004] The embodiments of this application are implemented as follows:

[0005] In a first aspect, embodiments of this application provide a method for determining a bulk cargo unloading scheme for a ship's hold. The method includes: obtaining the number of ship holds and the total weight of cargo in each hold; obtaining the number of unloading attempts for each hold, the allocation ratio corresponding to the number of unloading attempts, and the probability of each allocation ratio; obtaining a feasible unloading scheme for each hold based on the total weight of cargo in each hold, the number of unloading attempts, the allocation ratio, and the probability; the unloading scheme includes the number of unloading attempts, the weight of each unloading attempt, and the probability of the unloading scheme; constructing multiple unloading vectors based on the unloading schemes for all holds and a first constraint condition; each unloading attempt... A vector represents a single load reduction action; multiple load reduction vectors are stacked to form a matrix, and the matrix is ​​rearranged multiple times according to the constraints to obtain the solution space for scheduling decisions; the solution space includes all feasible scheduling schemes; a matrix represents a scheduling scheme; for each scheduling scheme, an evaluation value is obtained based on the scheduling scheme and multiple preset objective functions; the objective functions include a hull balance function, a workload equalization function, a function for minimizing the total moving distance, and a function for minimizing the total number of cabin entry and exit operations; the final scheduling scheme is determined from all scheduling schemes based on the evaluation value.

[0006] In the above implementation process, feasible unloading schemes for each cargo hold are obtained based on the total cargo weight of each hold, the number of unloading attempts, the allocation ratio, and the probability. Multiple unloading vectors are constructed based on all unloading schemes and the first constraint. These vectors are stacked to form a matrix, and the matrix is ​​rearranged multiple times according to the constraint to obtain the solution space for the scheduling decision. This method can accurately calculate all scheduling schemes for the scheduling decision, and then evaluate the scheduling schemes using an objective function. This approach avoids the problem of uneven weight distribution of remaining cargo in the cargo holds during unloading, which is caused by relying solely on human experience for scheduling decisions. The final scheduling scheme is obtained through quantitative analysis using an objective function, improving the accuracy of the scheduling scheme and the balance of remaining cargo weight during cargo hold scheduling, thereby enhancing the safety of the unloading machine during unloading operations.

[0007] Optionally, obtaining the number of times each cargo hold is unloaded, the allocation ratio corresponding to the number of times the cargo is unloaded, and the probability of each allocation ratio includes: calculating the number of times each cargo hold is unloaded based on the total weight of cargo in each cargo hold, the maximum weight of cargo in all cargo holds, and the minimum weight of cargo; and obtaining, for the number of times the cargo is unloaded, a variety of pre-set allocation ratios and the probability of each allocation ratio.

[0008] In the above implementation process, by calculating the number of times each cargo hold is unloaded based on the total weight of cargo in each hold, the maximum weight of cargo in all holds, and the minimum weight of cargo, different unloading times can be allocated to holds with different cargo weights, thereby making the scheduling scheme more scientific and reasonable.

[0009] Optionally, obtaining a feasible load reduction scheme for each cargo hold based on the total cargo weight of each hold, the number of load reduction attempts, the allocation ratio, and the probability includes: determining multiple allocation ratios and probabilities corresponding to the number of load reduction attempts, and multiplying each allocation ratio by the total cargo weight of the hold to obtain a feasible load reduction scheme and its probability for each hold.

[0010] In the above implementation process, a more accurate load reduction plan can be obtained by multiplying the total weight of cargo in the ship's hold with the allocation ratio of the load reduction plan.

[0011] Optionally, the first constraint includes: the reduced load weight being a non-negative integer; in the first 1 to N reduced load actions, exactly one cabin is reduced load each time; in the first N+1 to M*N possible reduced load actions, at most one cabin is reduced load each time; where N is the number of cabins; and M is the maximum number of reduced load actions for each cabin; the step of constructing multiple reduced load vectors based on all cabin reduced load schemes and the first constraint includes: constructing M*N reduced load vectors with dimension N, where each dimension represents a cabin; each reduced load vector has at most one non-zero positive number; the rest are zero values; the non-zero positive number represents the reduced load weight of the cabin at the corresponding position.

[0012] In the above implementation process, M*N load reduction vectors with dimension N are constructed through the first constraint and the load reduction scheme, which can quantitatively express the load reduction behavior each time, making the expression of the scheduling scheme more accurate.

[0013] Optionally, the first constraint also includes a minimum total number of unloading operations of N; a total number of unloading operations not exceeding M*N times; the total unloading weight of a hold not exceeding the total weight of cargo in the hold; all unloading operations being completed within the total number of unloading operations; the number of unloading operations for each hold not exceeding the maximum number of unloading operations; and at M*N times, the remaining cargo mass of all holds being 0. The step of stacking multiple unloading vectors to form a matrix and rearranging the matrix multiple times according to the constraint to obtain the solution space for scheduling decisions includes: fully permuting the M*N unloading vectors to obtain multiple matrices, and selecting the matrix that meets the constraint as the solution space for scheduling decisions.

[0014] In the above implementation process, by constraining the scheduling matrix through the first constraint condition, more feasible scheduling schemes that meet the requirements can be selected, thereby greatly reducing the number of feasible solutions in the solution space.

[0015] Optionally, for each scheduling scheme, obtaining the evaluation value of the scheduling scheme based on the scheduling scheme and multiple preset objective functions includes: randomly selecting an initial scheduling scheme according to the Bandit algorithm, calculating the evaluation values ​​of multiple objective functions of the scheduling scheme; then obtaining the evaluation value of the scheduling scheme based on each evaluation value and its corresponding weight; randomly selecting the next scheduling scheme according to the Bandit algorithm and the nearest neighbor selection strategy, and calculating the evaluation value of the next scheduling scheme.

[0016] In the above implementation process, the Bandit algorithm and the nearest neighbor selection strategy can focus on the scheduling scheme that satisfies the nearest neighbor strategy, thereby improving the search efficiency of finding the optimal scheduling scheme from the solution space.

[0017] Optionally, the step of randomly selecting the next scheduling scheme according to the Bandit algorithm and the nearest neighbor selection strategy, and calculating the evaluation value of the next scheduling scheme, includes: randomly selecting a scheduling scheme from the solution space, calculating the Cayley distance between the initial scheduling scheme and the current scheduling scheme; if the Cayley distance is less than a preset Cayley distance, using the current scheduling scheme as the next scheduling scheme; otherwise, selecting a new scheduling scheme and calculating the Cayley distance between it and the initial scheduling scheme; calculating the evaluation value of the next scheduling scheme; if the evaluation value of the next scheduling scheme is less than the evaluation value of the initial scheduling scheme, using the next scheduling scheme as a reference scheduling scheme for calculating the Cayley distance in the next iteration of scheduling scheme selection; the Cayley distance is the number of identity permutations of the matrix rows or columns of the two scheduling schemes.

[0018] In the above implementation process, since the calculation of Cayley distance is simple and efficient, using Cayley distance as the screening criterion for the nearest neighbor strategy can quickly, efficiently and simply screen out the scheduling schemes that are closest to the previous scheduling scheme.

[0019] Secondly, embodiments of this application provide an apparatus for determining a bulk cargo unloading scheme for a ship's hold. The apparatus includes: an acquisition module for acquiring the number of ship holds and the total weight of cargo in each hold; an acquisition module for acquiring the number of unloading attempts for each hold, the allocation ratio corresponding to the number of unloading attempts, and the probability of each allocation ratio; a determination module for obtaining a feasible unloading scheme for each ship hold based on the total weight of cargo in each ship hold, the number of unloading attempts, the allocation ratio, and the probability; the unloading scheme includes the number of unloading attempts, the weight of each unloading attempt, and the probability of the unloading scheme; and a vector construction module for constructing multiple unloading vectors based on the unloading schemes of all ship holds and a first constraint condition. Each load reduction vector represents a load reduction action; the solution module is used to stack multiple load reduction vectors to form a matrix, and rearrange the matrix multiple times according to the constraints to obtain the solution space of the scheduling decision; the solution space includes all feasible scheduling schemes; a matrix represents a scheduling scheme; the evaluation module is used to obtain the evaluation value of each scheduling scheme based on the scheduling scheme and multiple preset objective functions; the objective functions include the hull balance function, the workload balance function, the function of minimizing the total movement distance, and the function of minimizing the total number of cabin entry and exit; the screening module is used to determine the final scheduling scheme from all scheduling schemes based on the evaluation value.

[0020] Thirdly, embodiments of this application provide an electronic device, including: a memory and a processor, the processor being connected to the memory; the memory being used to store a program; the processor being used to invoke the program stored in the memory to perform the method as described in any one of the first aspects.

[0021] Fourthly, embodiments of this application provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, performs the method as described in any one of the first aspects.

[0022] Other features and advantages of this application will be set forth in the following description. The objectives and other advantages of this application can be realized and obtained through the structures particularly pointed out in the written description and the accompanying drawings. Attached Figure Description

[0023] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the accompanying drawings used in the embodiments will be briefly described below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort. The above and other objects, features, and advantages of this application will become clearer through the accompanying drawings.

[0024] Figure 1 A schematic flowchart illustrating a method for determining a bulk material unloading scheme in a ship's hold, provided in Embodiment 1 of this application;

[0025] Figure 2 A schematic diagram of the structure of a device for determining a bulk material unloading scheme in a ship's hold, provided in Embodiment 2 of this application;

[0026] Figure 3 This is a schematic diagram of the structure of an electronic device provided in Embodiment 3 of this application. Detailed Implementation

[0027] The technical solutions of the embodiments of this application will now be described with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. The following embodiments are provided as examples to more clearly illustrate the technical solutions of this application, and should not be used to limit the scope of protection of this application. Those skilled in the art will understand that, without conflict, the following embodiments and features can be combined with each other.

[0028] It should be noted that similar reference numerals and letters in the following figures denote similar items; therefore, once an item is defined in one figure, it does not need to be further defined and explained in subsequent figures. Furthermore, relational terms such as "first," "second," etc., in the description of this application are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one…" does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0029] Furthermore, the term "and / or" in this application is merely a description of the relationship between related objects, indicating that there can be three relationships. For example, A and / or B can represent three situations: A exists alone, A and B exist simultaneously, and B exists alone.

[0030] Example 1

[0031] This application provides a method for determining a bulk material unloading scheme in a ship's hold, such as... Figure 1 The method includes:

[0032] S101: Obtain the number of cargo holds and the total weight of cargo in each cargo hold; obtain the number of times each cargo hold is unloaded, the allocation ratio corresponding to the number of times the cargo is unloaded, and the probability of each allocation ratio.

[0033] The number of cargo holds and the total weight of cargo in those holds can be obtained from loading operations. The method for determining the number of unloading attempts for each cargo hold is not specifically limited; it can be pre-set or calculated based on the total weight of cargo in the hold. The allocation ratio and probability corresponding to the number of unloading attempts are pre-set.

[0034] In one feasible implementation, step S101, obtaining the number of times each cargo hold is unloaded, the allocation ratio corresponding to the number of times the cargo is unloaded, and the probability of each allocation ratio, includes: calculating the number of times each cargo hold is unloaded based on the total weight of cargo in each cargo hold, the maximum weight of cargo in all cargo holds, and the minimum weight of cargo; and obtaining, for the number of times the cargo is unloaded, a variety of pre-set allocation ratios and the probability of the corresponding allocation ratio.

[0035] Optionally, the number of unloading operations for each hold can be calculated based on the total cargo weight of each hold, the maximum cargo weight of all holds, and the minimum cargo weight. The formula can be expressed as:

[0036]

[0037] Where M is the maximum number of unloading operations for each cabin, and m i Let be the total weight of cargo in the i-th hold, min_m be the minimum weight of cargo in all holds, and max_m be the maximum weight of cargo in all holds. I is the number of times cargo is unloaded in the i-th hold, and the number of unloading times is the result rounded down.

[0038] For each number of times the cargo hold is unloaded, multiple pre-set allocation ratios and their corresponding probabilities are obtained. The specific methods for pre-setting these allocation ratios and probabilities are not limited.

[0039] Optionally, a method for pre-setting multiple allocation ratios is as follows: the smallest unit for splitting the cargo mass of each hold is defined as 1 / W, where W is the least common multiple of all possible unloading times.

[0040] For example, assuming the maximum number of unloading times M is 3, then the possible number of unloading times for all cabins is 1, 2 or 3 times, then W is 1*2*3=6, and the smallest splitting unit is 1 / 6.

[0041] Once the smallest splitting unit is determined, the allocation ratio can be determined based on the smallest splitting unit and the actual number of load reductions.

[0042] For example, assuming the i-th cargo hold is unloaded 3 times, the total weight of the cargo in that hold is divided into six parts, and then allocated according to the following allocation schemes: (2, 2, 2), (3, 2, 1), and (4, 1, 1). The order of unloading in each allocation scheme is not specifically limited. The probability of each allocation scheme is not specifically limited; it only needs to be that the sum of the probabilities of all allocation schemes is 1.

[0043] S102: Based on the total cargo weight of each hold, the number of times the cargo is reduced, the allocation ratio, and the probability, a feasible cargo reduction plan for each hold is obtained; the cargo reduction plan includes the number of times the cargo is reduced, the weight of each reduction, and the probability of the cargo reduction plan.

[0044] The method for obtaining a feasible load reduction plan for each cargo hold based on the total cargo weight of each hold, the number of load reduction attempts, the allocation ratio, and the probability is not specifically limited.

[0045] In one feasible implementation, step S102, obtaining a feasible load reduction scheme for each cargo hold based on the total cargo weight of each hold, the number of load reduction attempts, the allocation ratio, and the probability, includes: determining multiple allocation ratios and probabilities corresponding to the number of load reduction attempts, multiplying each allocation ratio by the total cargo weight of the hold to obtain a feasible load reduction scheme and its probability for each hold.

[0046] For example, assuming that the cargo in hold i is unloaded 3 times and the total weight of the cargo is 3300, the possible allocation schemes are (2, 2, 2), (3, 2, 1), and (4, 1, 1). Multiplying the allocation ratio of these three schemes by the total weight of the cargo in hold i yields the feasible unloading schemes for each hold: (1100, 1100, 1100), (1650, 1100, 550), and (2200, 550, 550).

[0047] S103: Construct multiple load reduction vectors based on the load reduction schemes for all compartments and the first constraint condition; each load reduction vector represents a load reduction behavior.

[0048] The first constraint is a constraint on the unloading behavior. The first constraint is not specifically limited and can be determined based on the specific unloading strategy.

[0049] Specifically, the load reduction schemes for all cabins are broken down into multiple load reduction behaviors, and a load reduction vector is constructed based on each load reduction behavior and the first constraint condition.

[0050] In one feasible implementation, step S103 includes the following: the first constraint condition is that the weight reduction is a non-negative integer; in the first 1 to N weight reduction actions, exactly one cabin is reduced each time; in the first N+1 to M*N possible weight reduction actions, at most one cabin is reduced each time; where N is the number of cabins; and M is the maximum number of weight reductions for each cabin; the step of constructing multiple weight reduction vectors based on all cabin weight reduction schemes and the first constraint condition includes:

[0051] Construct M*N load reduction vectors with dimension N, where each dimension represents a cabin; each load reduction vector has at most one non-zero positive number; the rest are zero values; the non-zero positive number represents the load reduction weight of the cabin at the corresponding position.

[0052] The first constraint condition can be expressed by the following formula:

[0053]

[0054] in, Select the load reduction value for the i-th compartment in step j; express When it is 1, This means that in steps 1 to N, exactly one cabin has a reduced load value. This means that in steps N+1 to M*N, at most one cabin has a reduced load value. Here, N is the total number of cabins.

[0055] For example, there are 3 cargo holds, and each cargo hold has a maximum of 3 unloading attempts, so 9 unloading vectors need to be constructed. Assuming the first cargo hold has 1 unloading attempt, the second cargo hold has 2 unloading attempts, and the third cargo hold has 3 unloading attempts, and the total weight of the cargo in each cargo hold is 60 tons, then the unloading scheme for the first cargo hold is (60), the possible unloading schemes for the second cargo hold are (30,30) and (45,15), and the possible unloading schemes for the third cargo hold are (20,20,20), (30,20,10), and (40,10,10). If one unloading scheme is selected from each cargo hold as the scheduling scheme for the three cargo holds, then there are 1*2*3 scheduling schemes. Taking the scheduling scheme (60, 0, 0), (30, 20, 10), (40, 10, 10) as an example, the load reduction vector is constructed as: (60, 0, 0), (0, 0, 0), (0, 0, 0), (0, 30, 0), (0, 20, 0), (0, 10, 0), (0, 0, 40), (0, 0, 10), (0, 0, 10).

[0056] S104: Stack multiple load reduction vectors to form a matrix, and rearrange the matrix multiple times according to the first constraint to obtain the solution space of the scheduling decision; the solution space includes all feasible scheduling schemes; a matrix represents a scheduling scheme.

[0057] In one feasible implementation, step S103 further includes the following: the total number of unloading operations is at least N; the total number of unloading operations does not exceed M*N times; the total unloading weight of a hold cannot exceed the total weight of the cargo in that hold; all unloading operations are completed within the total number of unloading operations; the number of unloading operations for each hold does not exceed the maximum number of unloading operations; at M*N times, the remaining cargo mass of all holds is 0; the step of stacking multiple unloading vectors to form a matrix, and rearranging the matrix multiple times according to the first constraint to obtain the solution space for the scheduling decision, includes:

[0058] The M*N load reduction vectors are permuted to obtain multiple matrices. The matrices that meet the constraints are selected from these matrices to serve as the solution space for scheduling decisions.

[0059] The first constraint also includes constraints on the matrix.

[0060] The constraint on the matrix in the first constraint condition can be expressed by the formula:

[0061]

[0062] in, This refers to the total number of load reductions. This means that up to step j, the total unload value of the i-th hold cannot exceed the initial total weight of the cargo in that hold. This means that when the unloading ends, the total unloading value of the i-th hold is equal to the total weight of the cargo in that hold; This means that from step 1 to step j0, there is exactly one cabin with a load reduction value in each step. This means that from step j0+1 to step M*N, there is no load reduction value at any step. Both formulas together express that the load reduction behavior is concentrated in the first j0 steps. This refers to the number of times the i-th cabin is unloaded.

[0063] Specifically, the load reduction vectors are permuted, and then, based on the above constraints, matrices that meet the constraints are selected as scheduling schemes. All scheduling schemes that meet the constraints constitute the solution space.

[0064] For example, the scheduling scheme in the previous example has 9 load shedding vectors. By performing a full permutation of the 9 load shedding vectors, 81 scheduling schemes can be obtained. From these, the matrix with the last two load shedding vectors being (0,0,0) is selected as the scheduling scheme that meets the constraints.

[0065] S105: For each scheduling scheme, an evaluation value for the scheduling scheme is obtained based on the scheduling scheme and multiple preset objective functions; the objective functions include the hull balance function, the workload balance function, the function for minimizing the total moving distance, and the function for minimizing the total number of cabin entries and exits.

[0066] The objective function can be expressed by the formula:

[0067]

[0068] in, w represents the weight reduction at the i-th compartment in step s. i Let m represent the torque from the i-th cabin to the center of all cabins. i Let x(i) represent the total weight of cargo in the i-th hold, and x(i) represent the total number of times cargo was unloaded in the i-th hold.

[0069] Among them, w i The calculation method is as follows:

[0070]

[0071] Where N is the total number of cabins, n p For N modulo 2, n mid For N / 2 rounded down, wi Let be the torque of the i-th cabin.

[0072] In one feasible implementation, in step S105, for each scheduling scheme, an evaluation value for the scheduling scheme is obtained based on the scheduling scheme and multiple preset objective functions, including:

[0073] A starting scheduling scheme is randomly selected based on the Bandit algorithm, and the evaluation values ​​of multiple objective functions of the scheduling scheme are calculated. Then, based on each evaluation value and its corresponding weight, the evaluation value of the scheduling scheme is obtained.

[0074] Specifically, a scheduling scheme is randomly selected from the solution space as the initial scheduling scheme. The target evaluation value of the scheduling scheme is calculated according to the above multiple objective functions. Then, the target evaluation values ​​are weighted and summed according to the weights corresponding to each target evaluation value to calculate the evaluation value of the scheduling scheme. The weights can be preset according to specific circumstances.

[0075] For example, if the target evaluation values ​​are 30, 25, 40, and 35, and the weights are 0.005, 3, 1, and 1, then the evaluation value of the scheduling scheme is P = 30 * 0.005 + 25 * 3 + 40 * 1 + 35 * 1 = 150.15.

[0076] The next scheduling scheme is randomly selected based on the Bandit algorithm and the nearest neighbor selection strategy, and the evaluation value of the next scheduling scheme is calculated.

[0077] Optionally, the step of randomly selecting the next scheduling scheme according to the Bandit algorithm and the nearest neighbor selection strategy, and calculating the evaluation value of the next scheduling scheme, includes: randomly selecting a scheduling scheme from the solution space, calculating the Cayley distance between the initial scheduling scheme and the current scheduling scheme; if the Cayley distance is less than a preset Cayley distance, using the current scheduling scheme as the next scheduling scheme; otherwise, selecting a new scheduling scheme and calculating the Cayley distance between it and the initial scheduling scheme; calculating the evaluation value of the next scheduling scheme; if the evaluation value of the next scheduling scheme is less than the evaluation value of the initial scheduling scheme, using the next scheduling scheme as a reference scheduling scheme for calculating the Cayley distance in the next iteration of scheduling scheme selection; the Cayley distance is the number of identity permutations of the matrix rows or columns of the two scheduling schemes.

[0078] The Cayley distance is the number of identity permutations between two permutation matrices. For the same scheduling scheme, there may be different unloading orders. Therefore, for two matrices with different unloading orders, one matrix can be transformed into the other through several row or column transformations. Thus, the similarity between two matrices can be determined by the Cayley distance. The smaller the Cayley distance, the higher the similarity.

[0079] Specifically, a scheduling scheme is randomly selected from the solution space. This scheme, along with the initial scheduling scheme, is then transformed into a permutation matrix—a matrix where all non-zero values ​​are set to 1 and the rest to 0. Next, the Cayley distance between the two matrices is calculated. If the two matrices cannot be obtained through row or column transformations, then the Cayley distance between them is infinite.

[0080] For example, given the sequence σ = (1,5,6,3,2,4) and the sequence π = (1,2,3,4,5,6), calculate the Cayley distance Dc(σ,π).

[0081] σ = (1, 5, 6, 3, 2, 4) after 3 swaps yields π = (1, 2, 3, 4, 5, 6), as follows:

[0082] 156324->126354->123654->123456.

[0083] The Cayley distance between matrices is similar to the Cayley distance between one-dimensional vectors, and will not be elaborated further here.

[0084] Specifically, when the Cayley distance between the randomly selected scheduling scheme and the initial scheduling scheme is less than the preset Cayley distance, the randomly selected scheduling scheme is used as the next scheduling scheme, and the evaluation value of the next scheduling scheme is calculated. If the evaluation value of the next scheduling scheme is less than the evaluation value of the initial scheduling scheme, the next scheduling scheme is used as the reference scheduling scheme for calculating the Cayley distance when selecting the scheduling scheme in the next iteration.

[0085] Optionally, if the calculated Cayley distance is less than the preset Cayley distance, the calculated Cayley distance is used as the preset Cayley distance for the next calculation of the Cayley distance between the two scheduling schemes, thereby continuously increasing the similarity between the iteratively selected scheduling scheme and the previous scheduling scheme.

[0086] S106: Determine the final scheduling scheme from all scheduling schemes based on the evaluation value.

[0087] Specifically, the final scheduling scheme is determined from all scheduling schemes based on the evaluation value. There are no specific limitations. The evaluation values ​​can be sorted in ascending order, and the scheduling schemes corresponding to the first preset number of evaluation values ​​can be selected as the final scheduling schemes. Alternatively, an evaluation value threshold can be preset, and the scheduling schemes with evaluation values ​​less than the threshold can be used as the final scheduling schemes.

[0088] Below is an example of a specific scheduling scheme:

[0089] There are 9 ship holds with cargo masses of [18435, 12390, 10030, 12036, 12241, 11748, 12040, 14446, 11239]. The scheduling scheme is as follows:

[0090]

[0091]

[0092] Example 2

[0093] This application provides a device 200 for determining a bulk material unloading scheme in a ship's hold, such as... Figure 2 As shown, the device 200 includes: an acquisition module 201, used to acquire the number of cargo holds and the total weight of cargo in each cargo hold; an acquisition module 201, used to acquire the number of unloading attempts for each cargo hold, the allocation ratio corresponding to the number of unloading attempts, and the probability of each allocation ratio; a determination module 202, used to obtain a feasible unloading scheme for each cargo hold based on the total weight of cargo in each cargo hold, the number of unloading attempts, the allocation ratio, and the probability; the unloading scheme includes the number of unloading attempts, the weight of each unloading attempt, and the probability of the unloading scheme; and a vector construction module 203, used to construct multiple unloading vectors based on the unloading schemes of all cargo holds and a first constraint condition; each unloading vector represents one... Load reduction behavior; Solution module 204 is used to stack multiple load reduction vectors to form a matrix, and rearrange the matrix multiple times according to the constraints to obtain the solution space of the scheduling decision; the solution space includes all feasible scheduling schemes; a matrix represents a scheduling scheme; Evaluation module 205 is used to obtain the evaluation value of each scheduling scheme according to the scheduling scheme and multiple preset objective functions; the objective functions include the hull balance function, the workload balance function, the function of minimizing the total moving distance, and the function of minimizing the total number of cabin entry and exit; Screening module 206 is used to determine the final scheduling scheme from all scheduling schemes according to the evaluation value.

[0094] Optionally, the acquisition module 201 is specifically used to calculate the number of times each cargo compartment is unloaded based on the total weight of cargo in each compartment, the maximum weight of cargo in all compartments, and the minimum weight of cargo; and to acquire, for the number of times the cargo is unloaded, a variety of pre-set allocation ratios and the probability of the corresponding allocation ratios.

[0095] Optionally, the determining module 202 is specifically used to determine multiple allocation ratios and probabilities corresponding to the number of load reductions, and multiply each allocation ratio by the total weight of the cargo in the hold to obtain a feasible load reduction scheme and its probability for each hold.

[0096] Optionally, the first constraint includes: the weight reduction is a non-negative integer; in the first 1 to N weight reduction actions, exactly one cabin is reduced each time; in the first N+1 to M*N possible weight reduction actions, at most one cabin is reduced each time; where N is the number of cabins; and M is the maximum number of weight reductions for each cabin; the vector construction module 203 is specifically used to construct M*N weight reduction vectors with dimension N, where each dimension represents a cabin; each weight reduction vector has at most one non-zero positive number; the rest are zero values; the non-zero positive number represents the weight reduction of the cabin at the corresponding position.

[0097] Optionally, the first constraint also includes a minimum total number of unloading operations of N; a total number of unloading operations not exceeding M*N times; the total unloading weight of a hold not exceeding the total weight of cargo in the hold; all unloading operations being completed within the total number of unloading operations; the number of unloading operations for each hold not exceeding the maximum number of unloading operations; and at M*N times, the remaining cargo mass of all holds being 0. The solution module 204 is specifically used to perform full permutation of the M*N unloading vectors to obtain multiple matrices, and to select the matrices that meet the constraint conditions as the solution space for scheduling decisions.

[0098] Optionally, the evaluation module 205 is specifically used to randomly select an initial scheduling scheme according to the Bandit algorithm, calculate the evaluation values ​​of multiple objective functions of the scheduling scheme; then obtain the evaluation value of the scheduling scheme according to each evaluation value and its corresponding weight; randomly select the next scheduling scheme according to the Bandit algorithm and the nearest neighbor selection strategy, and calculate the evaluation value of the next scheduling scheme.

[0099] Optionally, the evaluation module 205 is specifically used to randomly select a scheduling scheme from the solution space, calculate the Cayley distance between the initial scheduling scheme and the current scheduling scheme; if the Cayley distance is less than a preset Cayley distance, the current scheduling scheme is used as the next scheduling scheme; otherwise, a new scheduling scheme is selected, and the Cayley distance between the current scheduling scheme and the initial scheduling scheme is calculated; the evaluation value of the next scheduling scheme is calculated; if the evaluation value of the next scheduling scheme is less than the evaluation value of the initial scheduling scheme, the next scheduling scheme is used as a reference scheduling scheme for calculating the Cayley distance in the next iteration of selecting a scheduling scheme; the Cayley distance is the number of identity permutations of the matrix rows or columns of the two scheduling schemes.

[0100] Example 3

[0101] like Figure 3 As shown, Figure 3 A schematic diagram of the structure of an electronic device 300 provided in an embodiment of this application is shown. The electronic device 300 includes a processor 301 and a memory 302.

[0102] The processor 301 is used to execute one or more programs stored in the memory 302 to implement the method for determining the unloading scheme of bulk materials in the ship's hold as described in Embodiment 1 above.

[0103] Understandable. Figure 3 The structure shown is for illustrative purposes only; the electronic device may also include components that are more advanced than those shown. Figure 3 The more or fewer components shown, or having the same Figure 3 The different configurations shown.

[0104] For example, the processor 301 and the memory 302 may be connected via a communication bus. As another example, the electronic device may also include components such as a display, mouse, and keyboard.

[0105] In this embodiment, the processor 301 can be a central processing unit, a microprocessor, a microcontroller, etc., but this is not a limitation. The memory 302 can be a random access memory, a read-only memory, a programmable read-only memory, an erasable read-only memory, an electrically erasable read-only memory, etc., but this is not a limitation.

[0106] In the embodiments of this application, the electronic device can be, but is not limited to, physical devices such as desktop computers, laptops, smartphones, smart wearable devices, and in-vehicle devices, or virtual devices such as virtual machines. Furthermore, the electronic device is not necessarily a single device; it can be a combination of multiple devices, such as a server cluster, etc.

[0107] This embodiment also provides a computer-readable storage medium, such as a floppy disk, optical disk, hard disk, flash memory, USB flash drive, SD (Secure Digital Memory Card), MMC (Multimedia Card), etc., in which one or more programs implementing the above steps are stored. These one or more programs can be executed by one or more processors to implement the method for determining the unloading scheme of bulk cargo in the ship's hold as described in Embodiment 1. Further details will not be elaborated here.

[0108] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can also be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram and / or flowchart, and combinations of blocks in block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0109] In addition, the functional modules in the various embodiments of this application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.

[0110] If the aforementioned functions are implemented as software functional modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a computer-readable storage medium and includes several instructions to cause a computer device (which may be a personal computer, laptop, server, or electronic device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned computer-readable storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0111] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A method for determining a bulk cargo unloading scheme in a ship's hold, characterized in that, The method includes: Obtain the number of ship holds and the total weight of cargo in each hold; Obtain the number of times each cabin is unloaded, the allocation ratio corresponding to the number of times the cabin is unloaded, and the probability of each allocation ratio; Based on the total cargo weight of each hold, the number of unloading attempts, the allocation ratio, and the probability, a feasible unloading plan for each hold is obtained; the unloading plan includes the number of unloading attempts, the weight of each unloading attempt, and the probability of the unloading plan. Multiple load reduction vectors are constructed based on the load reduction schemes for all compartments and the first constraint condition; each load reduction vector represents a load reduction behavior. Multiple load reduction vectors are stacked to form a matrix, and the matrix is ​​rearranged multiple times according to the constraints to obtain the solution space of the scheduling decision; the solution space includes all feasible scheduling schemes; a matrix represents a scheduling scheme. For each scheduling scheme, an evaluation value for the scheduling scheme is obtained based on the scheduling scheme and multiple preset objective functions; the objective functions include the hull balance function, the workload balance function, the function for minimizing the total moving distance, and the function for minimizing the total number of cabin entries and exits. The final scheduling scheme is determined from all scheduling schemes based on the evaluation value; The first constraint includes that the unloaded weight is a non-negative integer; in the first 1 to N unloaded actions, exactly one compartment is unloaded each time; and in the first N+1 to M... In N possible unloading actions, at most one cabin can be unloaded at any time; where N is the number of cabins; and M is the maximum number of unloading actions for each cabin. The process involves constructing multiple load reduction vectors based on the load reduction schemes for all ship compartments and the first constraint condition, including: Construct M There are N load reduction vectors with each dimension of N, where each dimension represents a cabin; each load reduction vector has at most one non-zero positive number; the rest are zero values; the non-zero positive number represents the load reduction weight of the cabin at the corresponding position. The first constraint also includes a minimum total number of load shedding operations of N; and a total number of load shedding operations not exceeding M. N times, the total unloaded weight of a hold cannot exceed the total cargo weight of that hold; all unloading actions are completed within the total number of unloading attempts; the number of unloading attempts for each hold does not exceed the maximum number of unloading attempts; in M At time N, the remaining cargo mass in all holds is 0; the process of stacking multiple unloading vectors to form a matrix, and rearranging the matrix multiple times according to the constraints, yields the solution space for the scheduling decision, including: M The N load reduction vectors are permuted to obtain multiple matrices. The matrix that meets the constraints is selected from these matrices and used as the solution space for scheduling decisions.

2. The method for determining the bulk material unloading scheme in the ship's hold as described in claim 1, characterized in that, The process of obtaining the number of times each cabin is unloaded, the allocation ratio corresponding to the number of times the cabin is unloaded, and the probability of each allocation ratio includes: The number of times each cargo hold is unloaded is calculated based on the total cargo weight of each hold, the maximum cargo weight of all holds, and the minimum cargo weight; for each number of unloaded times, a variety of pre-set allocation ratios and the probability of each allocation ratio are obtained.

3. The method for determining the bulk cargo unloading scheme in the ship's hold as described in claim 1, characterized in that, The process of obtaining feasible load reduction schemes for each cargo hold based on the total cargo weight of each hold, the number of load reduction attempts, the allocation ratio, and the probability includes: Determine the various allocation ratios and probabilities corresponding to the number of unloading attempts, and multiply each allocation ratio by the total weight of the cargo in the hold to obtain the feasible unloading schemes and their probabilities for each hold.

4. The method for determining the bulk material unloading scheme in the ship's hold as described in claim 1, characterized in that, For each scheduling scheme, an evaluation value is obtained based on the scheduling scheme and multiple preset objective functions, including: A starting scheduling scheme is randomly selected based on the Bandit algorithm, and the evaluation values ​​of multiple objective functions of the scheduling scheme are calculated. Then, based on each evaluation value and its corresponding weight, the evaluation value of the scheduling scheme is obtained. The next scheduling scheme is randomly selected based on the Bandit algorithm and the nearest neighbor selection strategy, and the evaluation value of the next scheduling scheme is calculated.

5. The method for determining the bulk material unloading scheme in the ship's hold as described in claim 4, characterized in that, The step of randomly selecting the next scheduling scheme according to the Bandit algorithm and the nearest neighbor selection strategy, and calculating the evaluation value of the next scheduling scheme, includes: Randomly select a scheduling scheme from the solution space, and calculate the Cayley distance between the initial scheduling scheme and the current scheduling scheme; if the Cayley distance is less than a preset Cayley distance, use the current scheduling scheme as the next scheduling scheme; otherwise, select a new scheduling scheme and calculate the Cayley distance between it and the initial scheduling scheme. Calculate the evaluation value of the next scheduling scheme; if the evaluation value of the next scheduling scheme is less than the evaluation value of the initial scheduling scheme, use the next scheduling scheme as the reference scheduling scheme for calculating the Cayley distance when selecting the scheduling scheme in the next iteration; the Cayley distance is the number of identity permutations of the matrix rows or columns of the two scheduling schemes.

6. A device for determining a bulk material unloading scheme in a ship's hold, characterized in that, The device includes: The acquisition module is used to acquire the number of ship holds and the total weight of cargo in each ship hold; The acquisition module is used to acquire the number of times each cabin is unloaded, the allocation ratio corresponding to the number of times the cabin is unloaded, and the probability of each allocation ratio; The determination module is used to obtain a feasible load reduction plan for each cargo hold based on the total cargo weight of each hold, the number of load reduction attempts, the allocation ratio, and the probability; the load reduction plan includes the number of load reduction attempts, the weight of each load reduction attempt, and the probability of the load reduction plan. The vector construction module is used to construct multiple load reduction vectors based on the load reduction schemes of all compartments and the first constraint condition; each load reduction vector represents a load reduction behavior. The solution module is used to stack multiple load reduction vectors to form a matrix, and rearrange the matrix multiple times according to the constraints to obtain the solution space of the scheduling decision; the solution space includes all feasible scheduling schemes; a matrix represents a scheduling scheme. The evaluation module is used to obtain an evaluation value for each scheduling scheme based on the scheduling scheme and multiple preset objective functions; the objective functions include the hull balance function, the workload balance function, the function of minimizing the total movement distance, and the function of minimizing the total number of cabin entries and exits. A filtering module is used to determine the final scheduling scheme from all scheduling schemes based on the evaluation value; The first constraint includes: the unloaded weight is a non-negative integer; in the first 1 to N unloaded actions, exactly one cabin is unloaded each time; and in the first N+1 to M... In N possible unloading actions, at most one cabin can be unloaded at any time; where N is the number of cabins; and M is the maximum number of unloading actions for each cabin. The process involves constructing multiple load reduction vectors based on the load reduction schemes for all ship compartments and the first constraint condition, including: Construct M There are N load reduction vectors with each dimension of N, where each dimension represents a cabin; each load reduction vector has at most one non-zero positive number; the rest are zero values; the non-zero positive number represents the load reduction weight of the cabin at the corresponding position. The first constraint also includes a minimum total number of load shedding operations of N; and a total number of load shedding operations not exceeding M. N times, the total unloaded weight of a hold cannot exceed the total cargo weight of that hold; all unloading actions are completed within the total number of unloading attempts; the number of unloading attempts for each hold does not exceed the maximum number of unloading attempts; in M At time N, the remaining cargo mass in all holds is 0; the process of stacking multiple unloading vectors to form a matrix, and rearranging the matrix multiple times according to the constraints, yields the solution space for the scheduling decision, including: M The N load reduction vectors are permuted to obtain multiple matrices. The matrix that meets the constraints is selected from these matrices and used as the solution space for scheduling decisions.

7. An electronic device, characterized in that, include: A memory and a processor, wherein the processor is connected to the memory; The memory is used to store programs; The processor is configured to invoke a program stored in the memory to execute the method as described in any one of claims 1-5.

8. A computer-readable storage medium, characterized in that, It stores a computer program, which, when executed by a processor, performs the method as described in any one of claims 1-5.

Citation Information

Patent Citations

  • Cabin booking planning method, device and apparatus and storage equipment

    CN111382894A

  • Liquid tank stowage method and system for intelligent ship

    CN111859806A