CN113393199B - Multi-bin-point loading and unloading path planning system with time window based on genetic algorithm - Google Patents

Multi-bin-point loading and unloading path planning system with time window based on genetic algorithm Download PDF

Info

Publication number
CN113393199B
CN113393199B CN202110760400.2A CN202110760400A CN113393199B CN 113393199 B CN113393199 B CN 113393199B CN 202110760400 A CN202110760400 A CN 202110760400A CN 113393199 B CN113393199 B CN 113393199B
Authority
CN
China
Prior art keywords
module
chromosome
loading
unloading
point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110760400.2A
Other languages
Chinese (zh)
Other versions
CN113393199A (en
Inventor
梁宇翔
雷结义
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lianmeng Intelligent Technology Guangzhou Co ltd
Original Assignee
Lianmeng Intelligent Technology Guangzhou Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lianmeng Intelligent Technology Guangzhou Co ltd filed Critical Lianmeng Intelligent Technology Guangzhou Co ltd
Priority to CN202110760400.2A priority Critical patent/CN113393199B/en
Publication of CN113393199A publication Critical patent/CN113393199A/en
Application granted granted Critical
Publication of CN113393199B publication Critical patent/CN113393199B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • G06Q10/0835Relationships between shipper or supplier and carriers
    • G06Q10/08355Routing methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/12Computing arrangements based on biological models using genetic models
    • G06N3/126Evolutionary algorithms, e.g. genetic algorithms or genetic programming

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Economics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Genetics & Genomics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Development Economics (AREA)
  • Physiology (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Warehouses Or Storage Devices (AREA)

Abstract

The invention relates to a multi-bin point loading and unloading path planning system with a time window based on a genetic algorithm, which comprises a task receiving module, a two-point path query module, a genetic algorithm module and a result output module; the task receiving module is used for receiving a transportation task set from an upper application and provided transportation vehicle information, and sending a delivery point and a receiving point in the transportation task to the two-point path query module; the two-point path query module is used for acquiring the distance and the spending duration of any one group of delivery points and receiving points; the genetic algorithm module establishes a chromosome population taking the transportation path of each truck as a sub-chromosome by utilizing the trucks, the loading action and the unloading action in the acquired transportation task, and acquires the optimal chromosome through genetic evolution; and the result output module is used for decoding the obtained optimal chromosomes to obtain the optimal transportation path plans in the specified quantity. According to the invention, through a genetic algorithm, a task assignment scheme is rapidly and efficiently realized in the logistics industry, the logistics transportation decision-making efficiency is improved, and the decision-making cost is reduced.

Description

Multi-bin point loading and unloading path planning system with time window based on genetic algorithm
Technical Field
The invention belongs to the technical field of path planning, and particularly relates to a logistics path planning system.
Background
The rise of new retail sales adds challenges to logistics links, and decisions such as capacity matching, route optimization and the like need more technical support. The dimensions of the decision factors are too many, so that the decision factors cannot be judged one by one to provide an optimal decision scheme.
In the prior art, some logistics path planning systems often only consider comprehensive planning at a few latitudes, but still cannot meet the actual needs.
Disclosure of Invention
The invention aims to provide a multi-bin loading and unloading path planning system with a time window based on a genetic algorithm, which aims to realize complex transportation scheduling under the condition of planned transportation, realize multi-bin goods receiving and dispatching, realize random loading and unloading time, improve the transportation capacity, reduce the transportation cost and improve the management efficiency.
In order to achieve the purpose, the invention adopts the technical scheme that: a multi-bin loading and unloading path planning system with a time window based on a genetic algorithm comprises a task receiving module, a two-point path query module, a genetic algorithm module and a result output module; the task receiving module is used for receiving a transportation task set from an upper application and provided transportation vehicle information, and sending a delivery point and a receiving point in the transportation task to the two-point path query module; the two-point path query module is used for acquiring the distance and the spending duration of any one group of delivery points and receiving points; the genetic algorithm module establishes a chromosome population taking the transport path of each truck as a sub-chromosome by utilizing the trucks, the loading action and the unloading action in the acquired transport tasks, and acquires the optimal chromosome through genetic evolution; and the result output module is used for decoding the obtained optimal chromosomes to obtain the optimal transportation path plans in the specified quantity.
In a preferred embodiment of the present invention, the genetic algorithm module comprises:
an initial population module for constructing an initial population of chromosomes;
the fitness calculating module is used for scoring the current chromosome;
a selection module: the method is used for selecting the optimal population from several random populations according to the chromosome score until the number of populations required in the next iteration round is met;
a population iteration module: the method is used for controlling the probability of different genetic operations when each generation of population generates the next generation of chromosome;
and the genetic evolution module is used for performing crossing and mutation operations and performing no operation on the population selected by the selection module according to the set value of the population iteration module to generate the next generation of chromosomes.
Further preferably, the initial population module comprises a chromosome coding and decoding module and a chromosome modeling module; the chromosome coding and decoding module uses integer values to carry out coding and decoding operations on transport vehicles, loading actions and unloading actions in a transport task; filling the chromosome 1 with dummy codes, then coding the loading and unloading actions, and finally coding the transport vehicles; the chromosome modeling module is used for establishing a chromosome individual model.
As a preferred embodiment of the present invention, the encoding rule of the chromosome encoding and decoding module is:
at the rate of-10 8 For basic value, to transport vehiclesLine coding, with index starting from 1 Truck code
Figure BDA0003149474680000021
At 10 6 For the base value, the loading action in the transport Task is coded, indexing the Task starting from 0 code
Figure BDA0003149474680000022
The unloading action code corresponds to the loading action code one by one.
Further preferably, the decoding rule of the chromosome coding and decoding module is:
dividing the array index position less than 0 into each subtask set, circulating (i, j) between two indexes, and taking [ i: j + 1%]The return transport action task set, and the decoded vehicle code:
Figure BDA0003149474680000023
further preferably, the chromosome modeling module constructs chromosome individuals by:
1, shuffling provided transport vehicles and transport tasks;
step 2, grouping the tasks according to the delivery places;
3, shuffling all groups of information after the delivery places are grouped again, then carrying out circulating simulation loading operation on the grouped information of the delivery places of the warehouse group, wherein the loading rate of the trucks reaches more than 85%, and replacing the next truck until all commodities at the same delivery place simulate and carry out loading operation, wherein each truck forms a sub-chromosome;
step 4, performing the operation of the step 3 on all the delivery places;
step 5, calculating that the receiving point of the non-warehouse group has the shortest unloading distance with the warehouse group, and the remaining space of the truck can be loaded, and performing non-warehouse assembly operation;
step 6, simulating unloading action and updating the loading rate of the truck;
step 7, counting all routes and loadable collections of all the sub-chromosomes, and calculating an optimal value;
and 8, combining all the sub-chromosomes into chromosome individuals to complete chromosome modeling.
Further preferably, the fitness calculating module scores the chromosome using a penalty mode:
TruckError=(A+Unload count )×C 1
OverLoad=B×C 2
OverTime late =C 3 ×∑OverTime seconds
OverTime early =C 4 ×∑OverTime seconds
Loading=C 6 ×∑|C 5 -Loading percent |×100
NoCity=C 7 ×∑(P 1 +P 2 )
Truck cost =Price action +Price km ×∑Truck km
Truck count =C 8 ×∑Truck
Figure BDA0003149474680000031
wherein A is the statistical quantity under the punishment condition of no loading and no unloading action, Unload count Number of goods not yet unloaded on the currently completed truck 1 Making a penalty coefficient of unloading action for unloaded goods; b is the number of overloaded vehicle runs, C 2 Punishment coefficient for overload train number; OverTime late In order not to obey the given time window penalty, the latest time point when the time window has been exceeded to reach the unloading point, C 3 A penalty coefficient for late arrival; overtime early In order not to comply with the penalty of a given time window, the earliest time point for unloading before the time window reaches the unloading point, C 4 A penalty factor for early arrival; c 5 Load rate objective for penalty case of not reaching 85% load rateIdeal, Loading percent Is the loading rate of the current truck in the current state, C 6 Penalizing a coefficient for the loading rate; c 7 Penalty factor, P, for not allowing truck arrival under urban traffic restrictions 1 Number of lines to the loading point, P 2 The number of rows restricted for the unloading points; price action The Price is the basic cost of the current truck km For current freight-per-kilometer costs, Truck km The distance length of the current truck walking is obtained; sigma Truck number used for transporting all goods, C 8 A penalty coefficient for the number of vehicle departures; wherein C is 1 、C 2 、C 7 The system is a high penalty coefficient and is fixedly configured by the system; c 3 、C 4 、C 5 、C 6 、C 8 And the penalty coefficient is configured by the user and is used for adjusting the link item which is more concerned by the user in optimization.
Further preferably, the population iteration module controls the probability that each generation of population performs chromosome crossing operation, chromosome mutation operation or task-free operation; and terminating population iteration in advance when the optimal value of the chromosome score is not improved for a specified number of times.
Further preferably, the genetic evolution module comprises:
the crossing module is used for splicing and fusing the two introduced chromosomes to generate a next generation chromosome;
and the mutation module is used for restoring an introduced chromosome by exceeding 24-hour self-repairing operation, restoring an overload task set, restoring loading and unloading logic errors, and restoring vehicles which are not allowed to run in the urban area to perform chromosome mutation.
Further preferably, in chromosome population iteration, the population with the number of islands being the same as or less than the number of CPU cores adopts a multi-island acceleration algorithm to realize parallel evolution operation;
preferably, a multi-island immigration algorithm is adopted, after each population iteration is finished, all population optimal chromosomes in each island are calculated, chromosomes in the same positions in other islands are replaced, and the probability that other islands have more optimal chromosomes is increased through cross inheritance
The logistics path planning system for loading the multiple warehouses with the time window at any point based on the genetic algorithm realizes the rapid and efficient acquisition of the optimal solution under the complex problems of loading and unloading the multiple warehouses with the time window and loading the any point by using the genetic algorithm through the mutual matching of the chromosome coding and decoding module, the chromosome modeling module, the population iteration module, the fitness calculation module, the selection module and the genetic evolution module and by adopting the multi-island acceleration algorithm and the multi-island immigration algorithm, and replaces the traditional simple task of manual allocation according to experience. According to the invention, through a genetic algorithm, a task assignment scheme is rapidly and efficiently realized in the logistics industry, the logistics transportation decision-making efficiency is improved, and the decision-making cost is reduced.
Drawings
FIG. 1 is a schematic structural diagram of a logistics path planning system for multi-warehouse loading with time windows at any point based on a genetic algorithm in an embodiment of the invention;
FIG. 2 is a schematic diagram of chromosome coding, wherein (a) is an example of encoding a daughter chromosome and (b) is an example of encoding an individual chromosome;
FIG. 3 is a flowchart of initializing population in the chromosome modeling module in an embodiment of the invention;
FIG. 4 is a flowchart of a population iteration module algorithm in an embodiment of the present invention;
FIG. 5 is a flowchart of an algorithm of a calculate fitness module in an embodiment of the present invention;
FIG. 6 is a flow diagram of a tournament according to an embodiment of the present invention;
FIG. 7 is a schematic diagram of chromosome crossing procedure in an embodiment of the present invention;
FIG. 8 is a schematic diagram of a process of chromosomal mutation (mutation) according to an embodiment of the present invention.
FIG. 9 is a schematic diagram of an inter-island operation flow and inter-island cross migration according to an embodiment of the present invention.
Detailed Description
In order to make those skilled in the art better understand the technical solutions of the present invention, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
In order that those skilled in the art will better understand the technical solution of the present invention, the following detailed description of the present invention is provided in conjunction with the accompanying drawings and the detailed description.
The embodiment provides a genetic algorithm-based multi-bin point loading and unloading path planning system with a time window, which is built based on a distributed evolution algorithm DEAP, wherein the DEAP is a Python-based distributed evolution algorithm framework. The invention also uses SCOOP to carry out a parallelization mechanism to realize the island operation of the genetic algorithm.
Fig. 1 is a schematic structural diagram of a logistics path planning system for multi-warehouse loading with time windows and at any point based on a genetic algorithm in this embodiment, as shown in fig. 1, the system includes: the device comprises a task receiving module 1, a two-point path query module 2, an initial population module 3, a population iteration module 4, a fitness calculation module 5, a crossing module 6, a variation module 7, a selection module 8 and an output module 9. The functions of each module and the sub-modules included therein are described in detail as follows.
The task receiving module 1 is used for receiving a task data set provided by an upper application, wherein the task data set comprises loading time consumption, unloading time consumption, commodity quantity, commodity volume, task starting point longitude and latitude, task ending point longitude and latitude, unloading time window starting time and unloading time window ending time; and a transportable truck data set which comprises truck volume, departure cost, cost per kilometer and whether the vehicle can drive in an urban area or not), receives a calculation priority strategy (conventional, on-time and economic), and sends the longitude and latitude of the starting point and the longitude and latitude of the ending point in the task to the two-point path query module 2. At the same time, it is also calculated whether 85% of the vehicle weight and volume provided is greater than the weight and volume of all the goods shipped, such as to provide more vehicle information back.
A two-point path inquiry module 2 for receiving the longitude and latitude data set of the task receiving module 1 and inquiring all the duplication removersThe latter longitude and latitude place set is formed
Figure BDA0003149474680000061
And combining the one-to-one starting point and the one-to-one ending point, and inquiring the distance between the two points and the time consumption through the API (application program interface) of the Gade map.
The initial population module 3 is used for initializing task loading action codes, unloading action codes and truck codes, generating chromosome individuals of the 1 st generation in batches, and forming an initial population in a genetic algorithm, and comprises the following steps:
a chromosome coding and decoding module 3-1 for coding: the transport task is converted into a chromosome, and decoded: chromosomes are interpreted as specific tasks.
1. And (3) encoding: and coding the freight car, loading action and unloading action by using the integer value.
(1) Truck code base value is-10 8 The value range is as follows: (-10 8 - ∞). The secondary coding is carried out by the transport vehicles provided in the task receiving module, and the index starts from 1 to Truck code The coding formula is as follows:
Figure BDA0003149474680000062
(2) loading motion coding base value is 10 6 The value range is as follows: [10 6 , + ∞). Carrying out secondary coding through the transportation Task provided in the Task receiving module, and starting Task from 0 in the index code The loading action coding formula is as follows:
Figure BDA0003149474680000063
(3) the unloading action code and the loading action code need to be in one-to-one correspondence, and the value range is as follows: [0,10 6 ) No coding base value needs to be added.
Chromosome action execution must be performed from left to right, for example: 1000001 represents the loading operation of task 2, 1 represents the unloading operation of task 2, 1000001 must appear to the left of 1 and must be in the same daughter chromosome.
(4) All chromosomes using a dummy code of-10 at position 1 8 Filling, followed by a loading and unloading task code, and finally a truck code, representing the trucks in the sequence number performing the actions in the previous task code. The loading and unloading task code and the truck code constitute a sub-chromosome, and an example of the code is shown in fig. 2 (a).
(5) The 1 st dummy code and each daughter chromosome constitute a chromosome individual, and an example of the code is shown in FIG. 2 (b).
2. And (3) decoding: dividing the array index position less than 0 into each subtask set, circulating the (i, j) between two indexes, taking the sub chromosome of [ i: j +1], returning to the transport action task set, and decoding the truck code.
The truck decoding formula is as follows:
Figure BDA0003149474680000071
task shipment decoding formula:
Figure BDA0003149474680000072
the chromosome modeling module 3-2 is used for constructing an initial scheme of chromosome individuals, and the flow is shown in fig. 3, and the specific steps are as follows:
shuffle operation is carried out on the provided vehicles and transportation tasks by using random in Python so as to ensure the diversity of the initialized chromosomes of various groups of islands;
step 2, grouping the tasks according to delivery places, wherein the delivery places are a warehouse group and a non-warehouse group, and the operation of loading and unloading can be realized in the initialization process;
step 3, circularly simulating loading operation is carried out on the grouped information of the delivery places of the warehouse group, the grouped information of each group is shuffled again to increase diversity of task combination and task sequence during initialization, then accumulated commodities are simulated until the loading rate is more than 85% after loading, the next truck is replaced to carry out loading operation until all the commodities in the same delivery place simulate loading operation, and each truck forms a sub-chromosome;
step 4, continuously circulating all warehouse groups to deliver the goods until the goods are finished;
5, calculating that the receiving point of the non-warehouse group has the shortest unloading distance with the warehouse group, and the remaining space of the boxcar can be loaded, and performing non-warehouse assembly operation;
step 6, simulating unloading action and reducing corresponding loading rate;
step 7, counting all routes and loadable collections of all the sub-chromosomes, and calculating an optimal value;
and 8, combining all the sub-chromosomes into chromosomes (also called individuals) to complete chromosome modeling.
And the fitness calculating module 4 is used for calculating the score of the chromosome, and evaluating the score by using a penalty mode, wherein the lower the score is, the better the arrangement of the chromosome is. The calculate fitness module includes: the system comprises a chromosome decoding module, a sub-chromosome decoding loading action module, a sub-chromosome decoding unloading action module, a loading and unloading logic module, a sub-chromosome time-consuming logic module, a restricted-trip logic module, an overload module, a loading rate statistical module, a time-consuming statistical module, a travel statistical module, a time window logic module and a chromosome evaluation statistical module.
A chromosome decoding module: the system is used for decoding the current chromosome to obtain each sub-chromosome segment, a truck set of the current chromosome and a position index list of each segment separation point;
the sub-chromosome decoding and loading action module: all loading actions in chromosome order for sub-chromosome decoding;
daughter chromosome decoding and unloading action mode: all unloading actions for the daughter chromosome decoding in chromosome order;
loading and unloading logic module: for handling loading and unloading normal rationality logic errors;
daughter chromosome time-consuming logic module: used for counting the loading time, the running time, the unloading time and the morning and evening peak time of each taskOperating; penalty of overtime, single penalty of 10 22
A restriction logic module: the method is used for judging whether the current truck is in a restricted area or not during a loading task and a unloading task; line limit punishment, the single punishment value is 10 16
An overload module: the system is used for counting the overload times in the process of simulating transportation loading and unloading; overload penalty, single penalty of 10 18
A loading rate statistic module: the method is used for counting the accumulated value of the percentage of the absolute value of the difference of 85% each time in the process of simulating the loading and unloading of the transportation, and finally multiplying the accumulated value by a load rate punishment configuration value;
a time-consuming statistic module: the method is used for counting the time consumed for loading, the time added at the morning and evening peak time, the time window early arrival and late arrival time statistics when the time reaches the unloading point and the time consumed for unloading;
a stroke counting module: the system is used for counting the path length of each road section of the truck passing by;
a time window logic module: the system is used for judging whether the time window is arrived early or late after reaching the unloading point, counting the time length of the early arrival and the time length of the late arrival;
a chromosome evaluation statistical module: and the method is used for counting each punishment index in the simulated transportation process, and finally calculating the evaluation value of the current chromosome through the static hyperparameters and the dynamic hyperparameters.
The algorithm flow of the fitness calculating module 4 is shown in fig. 5, and the specific steps are as follows:
1, decomposing a chromosome into sub chromosomes, namely the running track of each truck; and 2, respectively simulating loading, transporting and unloading operations for each sub-chromosome, increasing the consumed time by 1.5 times when the vehicle encounters an early peak and a late peak during the driving period, and counting punishment conditions of the following items: loading and unloading, overloading, failing to obey a given time window, failing to reach a loading rate of 85 percent, discharging quantity, and not allowing the freight car to arrive at a receiving point or a discharging point (restricted urban area); and step 3, substituting the result obtained in the step 2 into the following formula to calculate an evaluation value:
TruckError=(A+Unload c o unt )×C 1
OverLoad=B×C 2
OverTime late =C 3 ×∑OverTime seconds
OverTime early =C 4 ×∑OverTime seconds
Loading=C 6 ×∑|C 5 -Loading percent |×100
NoCity=C 7 ×∑(P 1 +P 2 )
Truck c o st =Price action +Price km ×∑Truck km
Truck count =C 8 ×∑Truck
Figure BDA0003149474680000091
wherein A is the statistical number in the case of (i), Unload count Number of goods not yet unloaded on the currently completed truck 1 A penalty coefficient under the condition of firstly; b is the number of times of the overload vehicles under the second condition, C 2 A penalty factor in case of (2); overtime late (iii) the latest point in time at which the arrival point of the discharge exceeds the time window under the condition C 3 Penalty coefficient of late time under the condition of ③; overtime early (iii) the earliest unloading time point when the arrival unloading point and the absence of the arrival time window under the condition C 4 The penalty coefficient of early arrival under the condition of three; c 5 Loading rate target ideal value under the condition of percent Is the loading rate of the current truck in the current state, C 6 Penalizing a coefficient for the loading rate; c 7 A penalty factor, P, for not allowing truck arrival in the case 1 Number of lines to the loading point, P 2 The number of rows restricted for the unloading points; price action The Price is the basic cost of the current truck km For current freight-per-kilometer costs, Truck km For the distance length of the current truck walking(ii) a Sigma Truck number used for transporting all goods, C 8 And the penalty coefficient is the number of the vehicles which are discharged. Wherein C is 1 、C 2 、C 7 The system is a high penalty coefficient, is logically a condition which is not allowed to exist, and is fixedly configured by the system; c 3 、C 4 、C 5 、C 6 、C 8 And the penalty coefficient is configured by the user and is used for adjusting the link item which is more concerned by the user in optimization.
The population iteration module 5 controls iteration circulation in the population, and selects one of cross, mutation and non-operation through random numbers before the chromosome iteration of the next generation. The algorithm flow is shown in fig. 6, and specifically includes:
the iteration control module is used for controlling population iteration circulation, evaluating whether the population iteration circulation accords with an early stop rule, and stopping population iteration in advance when the chromosome evaluation optimal value is not improved for 10 times; a random number is generated.
An evolution selector: selecting a population according to the generated random number to generate a next generation evolution mode, which specifically comprises the following steps:
(1) when the random number is less than 80%, performing chromosome crossing operation;
(2) when the random number is greater than or equal to 80% and less than 90%, carrying out chromosome mutation (mutation) operation;
(3) when the random number is greater than or equal to 90%, no operation is performed.
The crossover module 6 is used for importing 2 chromosomes to generate a next generation chromosome, and the algorithm flow is shown in fig. 7 and includes the following sub-modules: the system comprises a chromosome #1 preprocessing module, a chromosome #2 preprocessing module, a chromosome fusion processing module and a chromosome post-processing module.
And the chromosome #1 preprocessing module is used for transmitting the chromosome 1, decoding the chromosome, recording a wagon list used by the chromosome #1, randomly selecting 1 daughter chromosome from the wagon list, filtering the randomly selected daughter chromosomes from the chromosome #1, arranging the randomly selected daughter chromosomes according to the sequence of the chromosome #2 where the new chromosome #1 appears, and removing the unloading action.
The chromosome #2 preprocessing module is used for transmitting the chromosome #2, filtering truck information, providing an action sequence of the chromosome #2 and reconstructing the chromosome #1 for use;
the chromosome fusion processing module tries for 10 times, randomly generates the division points by compressing or expanding the number of the division points, divides the division points into +1 part of sub-chromosomes after duplication is removed, and distributes wagon indexes to each 1 part of sub-chromosomes, and randomly selects a nonexistent wagon list to distribute wagon operations if the number of wagons exceeds the number of wagons;
and the chromosome post-processing module is used for constructing a new chromosome from the new chromosome array in the generated chromosome fusion processing module, calculating an estimated value of the newly generated chromosome, and updating an optimal adaptive value if the estimated value is better than the old estimated value. After 10 crossover operations, the best chromosome was returned.
And the mutation module 7 is used for transmitting 1 chromosome to carry out a self-chromosome mutation process, self-repairing is carried out for more than 24 hours, repairing of an overload task set, logical error repairing of loading and unloading, vehicle repairing in urban areas is not allowed, and the environment fitness of the sub-chromosomes is improved.
The sub-modules included in the mutation module 7 and the functions of the sub-modules are described in detail as follows:
the system comprises a chromosome decoding module, an overtime task repairing module, an overload repairing module, a loading and unloading logic repairing module, a freight train urban area restricted driving repairing module, a chromosome mutation module, a transportation task repairing module which does not meet the condition and a chromosome post-processing module;
the chromosome decoding module is used for decoding the current transmitted chromosome to obtain each sub-chromosome segment, a wagon set of the current chromosome and a position index list of each segment separation point;
the overtime task repairing module randomly generates sub-chromosome set separation points for overtime sub-chromosomes, divides the sub-chromosome set into 2 parts of sub-chromosomes, and randomly distributes 1 unused truck for transporting new sub-chromosomes;
the overload restoration module randomly generates a sub-chromosome set separation point for the overloaded sub-chromosomes, divides the sub-chromosome set into 2 sub-chromosomes, and randomly allocates 1 unused truck for transporting new sub-chromosomes;
the loading and unloading logical repair module is used for exchanging the loading and unloading sequence before unloading in the same task;
the truck urban area restricted driving restoration module is used for removing the loading points or the unloading points which cannot be reached by the current truck in the task from the original chromosome and storing the task set which is not allowed to run in the chromosome mutation task of the mutation chromosome module;
a chromosome mutation module, which uses random. shuffle to shuffle each action sequence in the sub-chromosomes, and repairs logic abnormality of loading and unloading;
the transportation task repairing module which does not meet the condition searches the transportation task set which is collected in the freight car urban region restricted repairing module 5 and is not allowed to run for the freight car which does not use the urban region to be driven, and carries out recursive loading; if the rest vehicles can not finish all the transportation tasks, searching the trucks with the loaded goods and the spaces, and trying to load the goods;
and the chromosome post-processing module is used for recombining all the sub-chromosomes into a population chromosome.
The algorithm flow of the mutation module 7 is shown in fig. 8, and the specific process is as follows: checking and repairing a subtask set and an overload task set which exceed 24-hour operation, and randomly selecting one unused vehicle for task separation; secondly, loading and unloading are carried out in wrong logic, and the loading and unloading sequence is exchanged; the restricted vehicles extract the tasks of loading points or unloading points which cannot walk in the urban area, remove the tasks from the atomic chromosomes and store the tasks which are not allowed to run in the chromosome mutation tasks of the mutation chromosome module; fourthly, shuffling the sub-chromosomes, and repairing logic abnormality of loading and unloading; calculating the score of the current child chromosome, if the mutant child chromosome is better than the previous child chromosome, the mutant child chromosome is retained; after the sub-chromosomes are recursively completed, searching the transport task set which is collected in the step three and is not allowed to run for trucks which do not use the drivable urban area, and recursively loading the trucks; if the rest vehicles can not finish all the transportation tasks, searching the trucks with the loaded goods and the spaces, and trying to load the goods; all the sub-chromosomes were recombined into a population chromosome.
And the selection module 8 is used for selecting better individuals from the population and transmitting the better individuals to the next generation, eliminating the inferior individuals, using a championship method, selecting 5 individuals randomly from the population as shown in the flow chart of fig. 6, selecting the optimal individuals, and transmitting the new population to the population iteration module 6.
And the output module 9 is used for decoding the chromosomes after a plurality of iterations to generate the optimal transportation scheme with the specified quantity for the upper-layer application to interpret and use.
As shown in fig. 9, in the system provided in the embodiment of the present invention, the genetic algorithm module adopts a multi-island acceleration algorithm, and the modules in the multi-islands are the same, so as to implement parallel population evolution operation with the number of islands being less than or equal to the number of CPU cores. And meanwhile, a multi-island immigration algorithm is adopted, after each population iteration is finished, all chromosomes with the optimal population in each island are calculated, chromosomes at the same positions in other islands are replaced, and the probability of the chromosomes appearing in other islands is increased through cross inheritance.

Claims (2)

1. A multi-bin loading and unloading path planning system with time windows based on genetic algorithm is characterized in that: the system comprises a task receiving module, a two-point path query module, a genetic algorithm module and a result output module; the task receiving module is used for receiving a transportation task set from an upper application and provided transportation vehicle information, and sending a delivery point and a receiving point in the transportation task to the two-point path query module; the two-point path query module is used for acquiring the distance and the spending duration of any one group of delivery points and receiving points; the genetic algorithm module establishes a chromosome population taking the transportation path of each transportation vehicle as a sub-chromosome by utilizing the acquired transportation vehicles, loading actions and unloading actions in the transportation task, and acquires an optimal chromosome through genetic evolution; the result output module is used for decoding the obtained optimal chromosomes to obtain the optimal transportation path plans in the specified quantity;
the genetic algorithm module comprises:
an initial population module for constructing an initial population comprising chromosomes;
the fitness calculating module is used for scoring the current chromosome;
a selection module: the method is used for selecting an optimal value from several random populations according to the chromosome score until the number of populations required in the next iteration round is met;
a population iteration module: for controlling the probability of different genetic evolutions occurring when generating next generation chromosomes for each generation of population, comprising: the iteration control module is used for controlling population iteration circulation and evaluating whether the population iteration circulation accords with an early stop rule, and population iteration is stopped in advance when the chromosome evaluation optimal value is not improved for 10 times; generating a random number; an evolution selector: selecting a population according to the generated random number to generate a next generation evolution mode, which specifically comprises the following steps:
(1) when the random number is less than 80%, performing chromosome crossing operation;
(2) when the random number is more than or equal to 80% and less than 90%, carrying out chromosome mutation operation;
(3) when the random number is more than or equal to 90 percent, no operation is carried out;
the genetic evolution module is used for performing cross operation and mutation operation or no operation on the population selected by the selection module according to the set value of the population iteration module to generate a next generation chromosome;
the initial population module comprises:
the chromosome coding and decoding module: encoding and decoding the transport vehicles, the loading actions and the unloading actions in the transport tasks by using integer values; filling the chromosome 1 with dummy codes, then coding the loading and unloading actions, and finally coding the transport vehicles;
a chromosome modeling module: for establishing a chromosome individual model;
the unloading action codes correspond to the loading action codes one by one;
the encoding rule of the chromosome encoding and decoding module is as follows:
at the rate of-10 8 For the base value, the transport vehicles are coded with an index starting from 1 Truck code
Figure FDA0003709231250000021
At 10 6 For the base value, the loading action in the transport task is coded, the index starting from 0
Figure FDA0003709231250000022
The unloading action codes correspond to the loading action codes one by one;
the decoding rule of the chromosome coding and decoding module is as follows:
dividing the array index position less than 0 into each subtask set, circulating (i, j) between two indexes, and taking [ i: j + 1%]The return transport action task set, and the decoded vehicle code:
Figure FDA0003709231250000023
the chromosome modeling module constructs individual chromosomes by:
1, shuffling provided transport vehicles and transport tasks;
step 2, grouping the tasks according to the delivery places;
3, shuffling all groups of information after the delivery places are grouped again, then carrying out circulation simulation loading operation on the grouped information of the delivery places of the warehouse group, wherein the loading rate of a transport vehicle reaches more than 85%, and replacing the next transport vehicle until all commodities at the same delivery place simulate and carry out loading operation, wherein each transport vehicle forms a sub-chromosome;
step 4, performing the operation of the step 3 on all the delivery places;
step 5, calculating that the receiving point of the non-warehouse group has the shortest unloading distance with the warehouse group, and the remaining space of the transport vehicle can be loaded, and performing non-warehouse assembly operation;
step 6, simulating unloading action and updating the loading rate of the transport vehicle;
step 7, counting all routes and loadable collections of all the sub-chromosomes, and calculating an optimal value;
step 8, combining all the sub-chromosomes into chromosome individuals to complete chromosome modeling;
the fitness calculating module adopts a punishment mode to grade the chromosome:
Figure FDA0003709231250000031
wherein A is the statistical quantity under the punishment condition of no loading and no unloading action, Unload count For the number of goods not yet unloaded on the transport vehicle currently completing transport, C 1 Making a penalty coefficient of unloading action for unloaded goods; b is the number of overloaded vehicle runs, C 2 A penalty coefficient for the number of overloaded vehicles; overtime late To arrive at the latest point in time at which the point of unloading exceeds the time window without obeying a given time window penalty, C 3 A penalty coefficient for late arrival; overtime early To arrive at the unloading point without obeying the penalty of a given time window and to arrive at the earliest unloading point in the time window 4 A penalty factor for early arrival; c 5 Loading for the load rate target ideal value under the penalty of not reaching 85 percent of load rate percent Is the loading rate of the current transport vehicle in the current state, C 6 Penalizing a coefficient for the loading rate; c 7 Penalty factor, P, for not allowing arrival of transport vehicles in restricted urban areas 1 Number of rows to be restricted for loading points, P 2 The number of rows restricted for the unloading points; price action Price for the current basic cost of delivery of a transport vehicle km For the current cost per kilometre of transport vehicles, Truck km The distance length of the current transport vehicle; sigma transport number of transport vehicles used for transporting all goods, C 8 A penalty coefficient for the number of vehicle departures;
the genetic evolution module comprises:
the crossing module is used for splicing and fusing the two introduced chromosomes to generate a next generation chromosome;
and the mutation module is used for restoring an introduced chromosome by exceeding 24-hour self-repairing operation, restoring an overload task set, restoring loading and unloading logic errors, and restoring vehicles which are not allowed to run in the urban area to perform chromosome mutation.
2. The system for planning the loading and unloading path of the multi-bin point with the time window based on the genetic algorithm of claim 1, wherein in the chromosome population iteration, the population with the number of islands being less than or equal to the number of the CPU cores is subjected to the parallel evolution operation by adopting a multi-island acceleration algorithm;
and (3) adopting a multi-island immigration algorithm, and after each population iteration is finished, calculating all chromosomes with optimal populations in each island to replace chromosomes at the same positions in other islands.
CN202110760400.2A 2021-07-06 2021-07-06 Multi-bin-point loading and unloading path planning system with time window based on genetic algorithm Active CN113393199B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110760400.2A CN113393199B (en) 2021-07-06 2021-07-06 Multi-bin-point loading and unloading path planning system with time window based on genetic algorithm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110760400.2A CN113393199B (en) 2021-07-06 2021-07-06 Multi-bin-point loading and unloading path planning system with time window based on genetic algorithm

Publications (2)

Publication Number Publication Date
CN113393199A CN113393199A (en) 2021-09-14
CN113393199B true CN113393199B (en) 2022-08-16

Family

ID=77625167

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110760400.2A Active CN113393199B (en) 2021-07-06 2021-07-06 Multi-bin-point loading and unloading path planning system with time window based on genetic algorithm

Country Status (1)

Country Link
CN (1) CN113393199B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115953089B (en) * 2022-12-26 2023-12-29 东南大学 Method for determining number of transport trucks for guaranteeing balance state of construction area
CN116187895B (en) * 2023-04-24 2023-07-18 北京中超伟业信息安全技术股份有限公司 Intelligent warehouse cargo flow planning method, system and electronic equipment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111563336A (en) * 2020-04-30 2020-08-21 南通大学 Deadlock-free scheduling method of flexible manufacturing system based on improved genetic algorithm

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107238388B (en) * 2017-05-27 2018-02-23 合肥工业大学 Multiple no-manned plane task is distributed and trajectory planning combined optimization method and device
CN112990528A (en) * 2020-06-28 2021-06-18 青岛盈智科技有限公司 Logistics transportation stowage management method and device
CN112836892B (en) * 2021-02-26 2023-01-24 山东科技大学 Multi-target vehicle distribution path determining method and system based on improved genetic algorithm

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111563336A (en) * 2020-04-30 2020-08-21 南通大学 Deadlock-free scheduling method of flexible manufacturing system based on improved genetic algorithm

Also Published As

Publication number Publication date
CN113393199A (en) 2021-09-14

Similar Documents

Publication Publication Date Title
CN113393199B (en) Multi-bin-point loading and unloading path planning system with time window based on genetic algorithm
Cattaruzza et al. The multi-trip vehicle routing problem with time windows and release dates
CN108921483A (en) A kind of logistics route planing method, device and driver arrange an order according to class and grade dispatching method, device
CN112686458B (en) Optimized dispatching method for multi-vehicle fleet delivery process
CN111553507B (en) Multi-commodity-flow-based optimization method for Chinese and European container transportation scheme
CN109635510B (en) Method for setting parallel overhaul lines of railway freight cars
CN108985677A (en) The multiple batches of fresh agricultural products Distribution path optimization method of multi items
CN115689247A (en) Complete vehicle logistics scheduling optimization method based on improved genetic algorithm
CN111882200A (en) Vehicle and goods matching method considering vehicle path and three-dimensional boxing
CN115965172B (en) Path optimization algorithm, system and equipment for finished oil secondary distribution vehicle
CN112330070A (en) Multi-type intermodal transportation path optimization method for refrigerated container under carbon emission limit
Hani et al. Simulation based optimization of a train maintenance facility
CN106295864A (en) A kind of method solving single home-delivery center logistics transportation scheduling problem
CN109840615B (en) Method for optimizing traffic flow organization of loading area of heavy haul railway based on immune clone algorithm
Kamsopa et al. Hybrid genetic algorithm for multi-period vehicle routing problem with mixed pickup and delivery with time window, heterogeneous fleet, duration time and rest area
Wang et al. Research of oil product secondary distribution optimization based on collaborative distribution
CN114742380A (en) Double-layer resource allocation optimization method for smart park
Park et al. A solution of vehicle routing problems in a multiple objective environment
CN115358455A (en) Electric vehicle path optimization method considering battery replacement and hybrid time window constraints
Utomo et al. Designing mixed-fleet of electric and autonomous vehicles for home grocery delivery operation: an agent-based modelling study
CN113706081A (en) Unmanned aerial vehicle goods taking and delivering system and method based on urban roof automatic express device
Weise et al. Evolutionary freight transportation planning
CN111652550A (en) Method, system and equipment for intelligently searching optimal loop set
Yazdani et al. Truck routing and scheduling for cross-docking in the supply chain: model and solution method
Kim et al. Optimal Rebalancing Strategy for Shared e-Scooter Using Genetic Algorithm

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant