Method for the optimum control of a device by way of milp, computer program for performing the method, and corresponding apparatus

EP4652019A1Pending Publication Date: 2025-11-26SIEMENS AG
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
EP2024710641
Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-02-28
Filing Date
2024-02-26
Publication Date
2025-11-26

AI Technical Summary

Technical Problem

Current allocation strategies for pick-and-place devices in automation systems do not account for equipment wear, leading to uneven workload distribution, frequent maintenance, and higher operating costs, as they operate independently without coordination.

Method used

The method employs linear mixed integer optimization (MILP) to assign objects to target positions and sequence device operations, considering equipment wear, movement type, and logistical constraints, ensuring optimal device allocation and movement planning.

Benefits of technology

This approach optimizes device workload distribution, reduces maintenance needs, and lowers operating costs by ensuring consistent and efficient operation of pick-and-place devices, while meeting various logistical and technical requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2024054760_06092024_PF_FP
    Figure EP2024054760_06092024_PF_FP
Patent Text Reader

Abstract

The invention relates to the optimization of the motion control of a device, wherein the device is suitable and configured for picking up objects and putting them back down. The present solution proposes to use mixed-integer linear programming (MILP) methods to assign objects to target positions and to assign shipments to order pickers.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Description

[0002] Method for optimal control of a device by means of MILP, computer program for carrying out the method and corresponding device

[0003] Automation systems perform a wide variety of tasks that involve the picking and moving of objects. Manufacturing systems, including packaging systems, in a wide variety of industrial automation sectors, for example, use conveyor belts on which objects, products, or parts of products are usually unsorted or irregularly arranged. Examples can be found in the primary and secondary packaging sectors, such as the food and beverage industry. The number and arrangement of products per conveyor area can vary greatly.

[0004] A handling machine, also referred to as a device in the following, is understood to be, for example, a so-called delta kinematics or a robot that is used in automation.

[0005] For a packaging process, several handling devices, such as industrial robots, also called delta pickers or articulated arm robots, are often used in series to carry out a “pick and place” operation, i.e. picking up the product from the conveyor belt and repositioning it.

[0006] However, the procedure described is not limited to these examples. In addition to pick-and-place operations, other applications include packaging, such as palletizing products, and much more.

[0007] When operating a series of essentially similar devices that can all perform the same tasks, for example arranged in series on a conveyor belt, one challenge is deciding which machine will perform the task. A series of pick-and-place devices are to fill a box with products from a conveyor belt. One of the tasks then has to be decided which object will be picked (i.e. picked, moved, and placed in the correct location) by which device. In most arrangements of this type, any product can be picked and processed (picked) by any of the devices, which leads to a high degree of flexibility in processing the tasks. There are rules to be observed when selecting the device and the objects to be picked. For example, a device cannot pick two objects that are next to each other, or place objects in positions that are close to one another.More order pickers have to distribute the picking among themselves.

[0008] In addition, separate picking lines are set up for different tasks, each requiring different optimization criteria. For example, in some use cases, the main task is to pick all objects from the conveyor belt in a timely manner (example: filtering plastic items from a waste stream). In other use cases, however, it is more important that a packaging unit is completely filled (e.g., a box of chocolates), while it is less problematic if some objects are not picked at the end of the conveyor belt and fall off. Another challenging scenario could be placing yogurt cups on pallets in such a way that the flavors within a pallet are evenly mixed.

[0009] In addition to this compromise between optimization objectives, there is typically the problem that current allocation strategies do not take equipment wear into account. If the workload is uneven, the pickers wear out at different rates, leading to frequent and irregular maintenance intervals, increased downtime, and ultimately higher operating costs.

[0010] The task to be solved is described below.

[0011] While current allocation strategies can fulfill the core task described above in most scenarios, they fail to address, for example, the aforementioned challenge of ensuring consistent wear and tear across devices. This is primarily because modern strategies do not provide for coordination between the different devices. Instead, each device is equipped with an individual policy that decides which objects are picked in its work zone.

[0012] Known strategies include always picking the object that is closest to the (picking or gripping) arm of the device,

[0013] - is furthest forward on the conveyor belt.

[0014] However, these individual strategies lead to the next problem: the first devices in a line have a much higher workload than those at the end of the processing line.

[0015] Document EP3456485A1 describes the optimization of an automated process for selecting and grasping an object by a robot. The basic idea is to assign each object a priority identifier, which the robot takes into account when selecting and grasping the object. From "Modeling and design of an optimal line manager of a packaging system with MILP," G. Ferrari et al., Proceedings of the 41 st The 2015 annual conference of the IEEE Industrial Electronics Society (IECON) is an online scheduler for a robot that is designed to pick up products from a transport medium and place them into packaging. The goal is to lose as few products as possible, i.e., to drop from the transport medium at the end. The robot's path is optimized using an MILP algorithm, with the direction and speed of the transport medium also playing a role.

[0016] "Fast MILP-based Task and Motion Planning for Pick-and-Place with Hard / Soft Constraints of Collision-Free Route." Takuma Kogo et al., Proceedings of the 2021 IEEE International Conference on Systems, man, and Cybernetics (SMC) . The goal is to calculate a collision-free trajectory curve and use MILP to reduce the computing power requirement.

[0017] The object of the invention is to provide a method that is improved over the prior art, to map many different applications, and to execute them independently of one another online or offline. It is also an object of the invention to provide a computer program and a corresponding device.

[0018] The problem is solved by a method having the features of patent claim 1.

[0019] The problem is further solved by a computer program according to patent claim 15.

[0020] The object is further achieved by a device having the features of patent claim 16. Further advantageous embodiments are specified in the subclaims.

[0021] The proposed method is used to optimize the motion control of a device, wherein the device is suitable and configured to pick up and put down objects.

[0022] For each object, information about a starting position and information about possible target positions are known, and the starting and / or target positions change their position predictably over time.

[0023] Further boundary conditions are taken into account, see the explanations below.

[0024] A travel curve is calculated for the device. The travel curve includes several operations: moving to a starting position of a first object and then moving to a target position of the first object, and then moving to a starting position and then to a target position of another object until an end position or another stop condition is reached. The travel curve must satisfy at least one optimization criterion. The determination of a target position for each object from the set of possible target positions and the calculation of the resulting travel curve based on the starting and target positions is carried out using the mixed integer linear programming (MILP) method.

[0025] The end position is reached when the device has reached the end of its range. However, other stop conditions are conceivable.

[0026] For an empty device (picker), for example, a reasonable end position is the center of the beginning of the conveyor belt where the objects arrive, i.e., the point where new objects are expected. For a loaded picker (i.e., with a picked object that is intended for storage), it is the center of the beginning of the conveyor belt with the target positions, i.e., the point where new targets are expected.

[0027] In this solution, the use of linear mixed integer optimization (MILP) methods is proposed for assigning objects to target positions and transports to picking.

[0028] Optimization in the mathematical sense means determining the maximum or minimum of a real-valued function over a (bounded) range or state space, and the argument for which the function assumes this extreme value. A special case of this is mixed integer linear programming (MILP). This is increasingly being used in the fields of logistics, transportation, production planning, finance, communications, and design, partly because it can be used, and particularly through the use of binary variables, to formulate combinatorial optimization problems such as the traveling salesman problem, machine scheduling problems, sequencing problems, transportation, and assignment problems.

[0029] There are now powerful computer programs, called solvers, that can solve such mathematical problems for MILP quickly and, in most cases, optimally.

[0030] A major advantage of this technology is that it can be used to model different inventory configurations.

[0031] A further advantage is that the models can be formulated in such a way that only solutions that meet all technical requirements are calculated. Very different criteria can be formulated for selecting among the permissible solutions. This offers considerable flexibility in modeling preferred tasks.

[0032] The mathematical modeling of the problem is advantageously carried out offline beforehand. This allows sufficient time to capture and define the tasks at hand, which is then not lost during the production phase.

[0033] Formally, the current initial situation is considered first:

[0034] - Detected objects lying on a means of transport, such as a conveyor belt, that change their position predictably during transport. The positions of newly added objects are usually disordered and initially unpredictable.

[0035] - Target positions that are located, for example, on another conveyor belt, and whose position also changes predictably over time. These can be individual target positions or groups of target positions.

[0036] - A group of devices that are designed to pick up objects (pick operation) and place them at the target positions (place operation). These devices are individually controlled and operate independently of each other.

[0037] Based on the above information, we are looking for:

[0038] - an assignment of objects to target positions, as well as

[0039] - a sequence of transport, pick-and-place, and idle operations of the devices (also called picking) of objects to target positions. In practice, various boundary conditions arise, which can be further considered in the calculation of a motion control (this list is exemplary and not exhaustive):

[0040] - The type of movement of the equipment also affects wear and tear. This is especially true for the acceleration of the equipment in the various axes.

[0041] - The picking and / or storage operations (picking operations) can be carried out from movable conveyor belts or temporary stop belts.

[0042] - The arrangement of the transport devices can be parallel (running in the same direction or opposite) or orthogonal to each other.

[0043] - The devices can only record one or more objects at a time.

[0044] - The target positions can accommodate one or more objects (for example, trays for stacks in a biscuit pack).

[0045] - The target positions can be in groupings.

[0046] Different requirements may also exist with regard to the logistical constraints:

[0047] - Restrictions on which object is placed in which target position, e.g. depending on the shape of the object and the target position

[0048] - Conditions on classes of objects and classes of target positions, e.g. a green object in every field or a strawberry-flavored object.

[0049] The overall model can be broken down into several components using the described procedure. This advantageously allows many different applications to be represented using a manageable set of parameterizable model formulations. Furthermore, the components can be executed independently of one another online or offline.

[0050] In the present example, our model is divided into: a) a first structure that represents the various logistical requirements (combinatorial model), b) a second structure that represents the various inventory configurations and the physical properties of the transport devices, and c) a class of "coupling conditions".

[0051] To a) The first (combinatorial) structure describes:

[0052] - permissible sequences of pick and place operations (there cannot be two picking operations in a row).

[0053] - Boundary conditions regarding the picking of the objects (i.e. whether all objects have to be lifted)

[0054] - Boundary conditions for the target positions (ie whether one or more objects must be placed at each target position).

[0055] For example, the model uses 0-1 variables (value either 0 or 1) () to represent combinatorial conditions. Other notations are conceivable.

[0056] If the device(s) (order picker) alternately perform a picking and a depositing action, it is sufficient to introduce a variable for each possible loading trip (with an object to a destination) as well as for each possible empty trip (from the starting position of a picking operation or a destination position to an object).

[0057] In this case, permissible assignments correspond to the assignments of the (0-1) variables with the following conditions:

[0058] - Exactly one empty run starts at each picking start position. - Exactly one empty run ends at each object.

[0059] - Exactly one loading trip begins at each object.

[0060] - Exactly one loading trip ends at each destination position.

[0061] - At each destination position a maximum of one empty run ends

[0062] If the variables are assigned a value of 0-1, sequences of trips are calculated for the device by starting from a starting position, then carrying (exactly) one load to a drop-off position, then to (exactly) one pick-up position, or finally to a destination position. This gives the device a path.

[0063] An assignment of variables that satisfies these equations defines paths that begin at the start positions, alternate between objects and target positions, and end at a final position.

[0064] The conditions would also allow all picking operations to travel directly from the start to the end positions, with one empty and one loaded run from an object to a destination, and one empty run from the destination back to the object. This would be called a "circle." In many mathematical models, these "circles" must be explicitly prohibited. This is not necessary in the proposed method because the coupling condition effectively couples the time of picking and setting down. This makes circles impossible as long as all travel times are >0!

[0065] If sequences are to be considered in which not all objects have to be picked and / or not all destinations have to be supplied, further (0-1) variables are introduced and the equations are extended by formulating, for example: - At each start position of a device / picker, exactly one empty run starts.

[0066] - For each object, exactly one empty run ends or it is not recorded.

[0067] - At each object, exactly one loading trip begins or it is not picked up.

[0068] - At each destination position, exactly one loading trip ends or is not served.

[0069] - At each destination, at most one empty run ends or is not served.

[0070] The assignment of devices to individual objects and target positions is implicitly determined from the sequence of steps. If an assignment variable is also explicitly modeled, continuous [0, 1] variables (i.e., variables that can take any value between 0 and 1) can be used.

[0071] These assignment variables describe which picker travels to which object / destination. Using a 0-1 variable can prevent two pickers from each traveling halfway to a destination.

[0072] In one embodiment, [0,1] variables can also be used in this case, since these variables, as the sum of [ 0 , 1 ] variables, are always integers. This reduces computation times.

[0073] Then the following conditions are used:

[0074] - The starting positions are each assigned to a device / order picker.

[0075] - Each object and each destination position is served by a device / picker. - If a load journey is selected, the same device / picker is assigned to the destination as the object.

[0076] - If an empty run is selected, the object is assigned the same device / order picker as the target position at which the empty run starts.

[0077] Many constraints regarding possible assignments can be modeled by restricting the set of possible journeys. Other constraints, such as counting objects of individual classes ("green object," "square object," "object with weight = 500g") in individual target groups ("box"), are advantageously enabled by extending the instance description and model to include concepts such as object classes and target groups.

[0078] Regarding b) The physical model uses continuous variables to describe the time and location of each operation. An example would be a point in time and a point in a local coordinate system for picking. In fact, a picking operation is a process that takes a certain amount of time, during which the position of the object changes. The transition between the individual phases (empty run, picking up the object, loading run, and placement at the destination location) is therefore blurred. In our model, a fixed point in time is used as the reference point for each operation. Here, any point in time of a clearly defined process on the machine can advantageously be selected.

[0079] There is only one degree of freedom for the operation to be performed by the device, since the objects and target positions on the transport devices are on a (straight) line at the

[0080] Picking moves past at a known speed and the time of the operation uniquely determines the geometric coordinates.

[0081] One possible implementation is to define an O-line orthogonal to the belt direction for each picking operation and to declare the position's distance from this line as an "offset" variable. This offset and the position of the object or the target position on the belt then imply the time of the operation.

[0082] The constraints on the picker's range of action can be expressed as upper and lower bounds for these variables. To do this, the segment of the line on which the position moves is determined that lies within the picker's range of action.

[0083] If the two conveyor belts with the objects and destinations run parallel or in opposite directions, a common O-line can be defined for both conveyor belts and extended to an orthogonal coordinate system of the order picker. In this coordinate system, all objects and destination positions move parallel to an axis, so that for each object and destination position, one coordinate is constant. The other coordinate corresponds to the offset. This can be used to express travel times between two points as inequality conditions between the offset variables.

[0084] In general, the following still applies:

[0085] - During loading journeys, the object and target positions as well as the times of the work steps must be selected so that the difference between the time of space use and the time of the picking process is always greater than the time required by the picking operator to carry out the loading journey.

[0086] - The conditions for empty runs apply accordingly. To link the two models, the following implication is modeled:

[0087] - If a loading trip from an object to a target position is selected, then the above condition must be met.

[0088] All conditions mentioned here can be written directly in MILP (Mixed Integer Linear Programming) form.

[0089] For the last equation we used a BigM method.

[0090] A BigM formulation is a standard procedure for formulating logical conditions in MILPs.

[0091] To express the following logical condition for a 0-1 variable x and a continuous variable y (x = 0) => (y = 0) one can choose a sufficiently large M and use the following inequality y <= x * M , 0 <= y

[0092] (if x =1, then y<=M is ​​not a restriction as long as M is sufficiently large) .

[0093] This is used to formulate conditions that only apply if a specific trip has been selected:

[0094] - If a loaded journey is selected, the time at which the object is picked up and the time at which the object is dropped off at the destination must be at least as far apart as the journey time.

[0095] - If an empty run is selected, the time of the previous departure and the time of the recording must be at least as far apart as the duration of the run. The model is always created offline; in the online case, the calculation is performed for scenarios defined by the camera, taking into account decisions that have already been transmitted to the picking team.

[0096] In order to control specific devices with this model, the model must be solved cyclically and passed to the controller, which then calculates the movement commands for the devices.

[0097] Advantageous embodiments are shown in the figures.

[0098] Figure 1 a schematic overview with objects and target positions,

[0099] Figure 2 shows the situation of Figure 1, with calculated transport paths,

[0100] Figure 3 shows the movement of the device in the vertical direction over time using the physical model and Figure 4 shows an architecture overview.

[0101] Figures 1, 2, and 3 each show a top view of an arrangement of two parallel conveyor belts running in the same direction. This arrangement was chosen solely to illustrate the process; a different arrangement of the conveyor belts, for example, orthogonally as described above, is possible but not shown in the figures.

[0102] The devices G1, G2, and G3 are arranged along the conveyor belt. Figures 2 and 3 describe the movements of the devices relative to the conveyor belt.

[0103] The same reference numerals refer to the same objects or positions. The lower conveyor belt 12 contains the objects to be picked up, 1410, 1411, ...141n, and the upper conveyor belt 11 contains the target positions 1420, 1421, ..., 142n, to which the objects are to be transported and deposited. In the example shown, these are also groupings of target positions, for example, a box, a carton, a pallet, a blister pack, or similar, 131, 132, 133, for picking up multiple objects, which may specify further parameters for determining the control system.

[0104] The information shown in Figure 1 represents the starting information for the process: the starting positions of the individual objects, for example, with coordinate information (x, y), and the target position (x', y'). The devices G1, G2, and G3 are suitably arranged on the conveyor belt; the direction of travel of the transport devices is indicated by the arrow t.

[0105] Figure 2 shows the result of a calculation using the proposed method based on the data from Figure 1. It shows the assignment of the respective devices G1, G2, G3 (not shown) to the objects and the travel lanes of the three devices, 251, 252, and 253. In the example shown, object 1410 is assigned to target position 1420. First, an empty run from the starting position to object 1410 is planned and carried out, followed by a pickup of object 1410, and then a loading run (with object 1410) to the determined target position 1420. In the recorded example, all target locations are ultimately occupied with objects, which can be seen from the fact that one of the three travel curves 251, 252, or 253 is recorded for each target position. However, not all objects (141n) may have been picked up and picked by the first transport device.In Figure 3, the two conveyor belts 11, 12 with the objects 1410, 1412, ... and the target positions 1420, 1422, ... are shown in the upper half of the illustration, analogous to Figures 1 and 2. For better visibility, this time only the sequence of the path 251 and the operations of one of the devices is shown.

[0106] The lower half of the graphic shows the (same) movement of the device across the conveyor belts 31, 32 in somewhat more detail. In particular, the deviation 34, 35 of the position from the 0 position 1426 in the vertical direction (to the conveyor belt) is shown over time and represents the individual actions of the device: after starting from the target position, there is first a "wait" 321 for the first object, followed by a picking action 322, which takes a certain amount of time. The pick-up device must be moved at the same speed as the transport device. Next, the path of the transport process 323, at maximum speed, to the second conveyor belt 31 is shown. The next process is the depositing of the object 324; here, too, a time is taken into account for the depositing process. The offset of the arrow 324 to position 1420 corresponds to the offset variable.The recording is performed "early" so that operation 1422 can still be performed by the same device. Operations 1424 and 1416 are performed at the exact moment the object / target passes the device's O-line. At the end of the scan, the offsets are used again.

[0107] After completion of the last depositing process, the device / the pick-up device is moved back to the starting position.

[0108] The large arrows 322 indicate movements that occur synchronized with the respective transport device to enable the picking up or depositing of an object. Figure 4 shows an architecture overview, as already described above. Some of the process steps take place offline, before the productive process begins, while others take place online, 40, i.e., during productive operation of the system in question. A problem definition, 41, is necessary in preparation; this was already explained above using the present example. From the rules and equations 402 thus created, an instance-specific model is created and parameterized, 42. The data and models thus determined are passed on to a MILP model (Mixed Integer Linear Programming) 43 for calculation, 403.

[0109] The subsequent operation loop takes place “online” in production mode and uses a problem-specific optimizer. 44 The optimizer is used to calculate an optimal plan for the distribution of items and target positions on the belts.

[0110] The received data 404 (and / or 408 from a control loop) is transferred to the MIP solver. The result then undergoes a post-processing step 45, during which the detected objects are assigned to the available devices G1, G2, and G3 for recording. The process begins with a situation in which a plan (for a journey) is calculated and transferred to the controller 46, 406.

[0111] The trigger for a complete recalculation is an update of the information about objects and target positions on the belt, for example by evaluating camera images k that monitor an area of ​​the belts 11, 12 or the devices Gl, G2, G3.

[0112] When comparing the current instance with the last instance, some objects have disappeared (picked, transported, processed) and some new objects have been added (in the observed camera field). The remaining objects and positions were already assigned to devices or picking operations during the last planning run. Furthermore, the planned times at which the operations should take place were calculated in the last iteration.

[0113] The next step is to determine which part of the plan will be frozen. 47 This applies to all processes that take place during the period required to recalculate the plan and convert it into driving instructions. This frozen part of the solution is represented as a fixed variable in the mathematical model. With these additional conditions, 408 the model described in the last section can then be used unchanged for incremental planning.

[0114] A major advantage of this technology is that different existing configurations can be modeled, even individually and in advance (offline). Another advantage is that the models can be formulated in such a way that only solutions that meet all desired technical requirements are calculated. Very different criteria can be formulated for selecting among the permitted solutions. This offers considerable flexibility in modeling preferred tasks.

[0115] The optimizer corresponds to a mathematical model and a set of parameters that define the specific inventory (e.g., number of pickers, operating area, feeder orientation, maximum speeds, maximum acceleration, operation duration) and the logistics rules. Building this model is a technical step and may involve model extensions.

[0116] Gl, G2, G3 device

[0117] T Running direction

[0118] 10 Positioning of devices

[0119] 11 means of transport with destination positions

[0120] 12 means of transport with starting positions, objects

[0121] 131, 132, 133 Groupings of target positions

[0122] 1410...141n Object, start position

[0123] 1420...142n object, target position

[0124] 251, 252, 253 driving curve

[0125] 321 empty run

[0126] 322 Recording object at start position

[0127] 323 loading trip

[0128] 324 Drop object at target position

[0129] 40 Online Operation Cycle

[0130] 41 Problem Definition

[0131] 42 Generation Instance-Specific Model and

[0132] Parameterization

[0133] 43 MILP Model

[0134] 44 Solver (Discrete Optimizer)

[0135] 45 Post-processing

[0136] 46 Control

[0137] 47 Preprocessing, definition of frozen data

[0138] 406 Assignment of devices to objects

[0139] 407 List of objects

[0140] 402, 403, 404 Interim results

[0141] 405, 408 Interim results

Claims

Patent claims 1. Method for optimizing a motion control of a device (Gl, G2, G3) which is suitable and configured to pick up objects, comprising the steps of a) defining the optimization problem (41), wherein for each object information about a starting position (1410, 1411, ...) and information about possible target positions (2420, 2421, ...) are known, - and the start and / or finish positions change their position predictably over time, and - further boundary conditions are taken into account, and b) calculation of a travel curve (251, 252, 253) for the device (Gl, G2, G3), wherein the travel curve (251, 252, 253) includes the following operations - a recording action with moving to a starting position of the object and - a storage action with moving to a target position of the object, and - a start position of a further object and then a target position of the further object until reaching an end position or stop condition, c) and creation of an instance-specific model, wherein the travel curve must satisfy at least one optimization criterion, characterized in that the determination of a target position for each object from the set of possible target positions and the calculation of the resulting travel curve on the basis of the start and target positions is carried out using the method linear mixed integer optimization, or MILP, mixed integer linear programming, and d) output of control signals (406) for the travel curve (251, 252, 253) of the device (Gl, G2, G3) are output, wherein the method is applied to the simultaneous optimization of the travel curves (251, 252, 253) of at least two devices (Gl, G2, G3) operating in parallel.

2. Method according to claim 1, characterized in that the optimization of the driving curve (251, 252, 253) is carried out on the basis of at least one of the following parameters: - minimal time, - maximum inclusion quota objects, - Wear and tear of the devices (Gl, G2, G3).

3. Method according to claim 2, characterized in that the wear of the device (Gl, G2, G3) results from the changes in movement contained in the determined travel curve (251, 252, 253) and the distance covered.

4. Method according to one of the preceding claims, characterized in that the modeling of the output parameters of the optimization method, in particular the start and target positions and the optimization criterion, takes place offline.

5. Method according to one of the preceding claims, characterized in that the calculation of the travel curve (251, 252, 253) is carried out online, whereby control signals which have already been transmitted to the device must be taken into account.

6. Method according to one of the preceding claims, characterized in that the boundary conditions are logistical boundary conditions or boundary conditions of the devices (Gl, G2, G3).

7. Method according to one of the preceding claims, characterized in that an instance description is modeled with the aid of at least one assignment variable, in particular by means of a continuous [0,1] variable or a 0-1 variable, for the start position and the target position and each object.

8. Method according to claim 7, characterized in that the instance description is extended by an object class for a more precise definition of the object.

9. Method according to claim 7 or 8, characterized in that the instance description is extended by target groups for grouping target positions.

10. Method according to one of the preceding claims, characterized in that the travel curve (251, 252, 253) takes into account a period of time taken by the execution of the control signals by the device, and continuous [0,1] variables are used to describe the time and place of each operation, and a fixed time is used as a reference point for each operation.

11. Method according to claim 10, characterized in that the operations taken into account also include picking up the object (322) and placing down the object (324).

12. Method according to one of the preceding claims, characterized in that a target position on the travel curve is defined for each device and the distance of the position (33, 34, 35) to this target position is recorded as an "Offset" variable.

13. Method according to one of the preceding claims, characterized in that the BigM method is used to formulate conditions.

14. Method according to one of the preceding claims, characterized in that an update of information about starting positions of objects and target positions on the belt requires a recalculation, and for this purpose a part of the planning data is frozen (47), in particular for all processes that take place in the period required to carry out the recalculation and to convert it into driving instructions.

15. A computer program suitable for carrying out the steps according to any one of the methods 1 to 14.

16. Device (40) for optimising a movement control (46) of a device (Gl, G2, G3) which is suitable and arranged to pick up objects, - where for each object, information about a starting position (1410, 1411, ...) and information about possible target positions (2420, 2421, ...) are known, which change their position predictably over time, and - further boundary conditions, and - the device calculates a travel curve (251, 252, 253) for the device (Gl, G2, G3), wherein the travel curve includes several operations: approaching the start and target position, picking up and putting down, until an end position or stop condition is reached, wherein the travel curve must satisfy at least one optimization criterion, characterized in that the device (40) has a solver (44) for determining a target position for each object from the set of possible target positions and calculating the resulting travel curve (251, 252, 253) on the basis of the start and target positions using the method linear mixed integer optimization, or MILP, mixed integer linear programming, the optimization relates to the travel curves (251, 252, 253) of at least two devices (Gl, G2, G3) working in parallel.

17. Device (40) according to claim 16, characterized in that the optimization of the driving curve (251, 252, 253) is carried out on the basis of at least one of the following parameters: - minimal time, - maximum inclusion quota objects, - Wear and tear of the devices (Gl, G2, G3).

18. Device (40) according to one of the preceding claims 16 or 17, characterized in that the wear of the device (Gl, G2, G3) is calculated from the changes in movement contained in the travel curve (251, 252, 253) and the distance covered.

19. Device (40) according to one of the preceding claims 16 to 19, characterized in that the solver (44) receives a prior modelling of the output parameters of the optimisation procedure, in particular the start and target positions and the optimisation criterion, and the calculation of the travel curve (251, 252, 253) takes place during operation.

20. Device (40) according to one of the preceding claims 16 to 19, characterized in that the boundary conditions are logistical boundary conditions or boundary conditions of the devices (Gl, G2, G3).

21. Device (40) according to one of the preceding claims 16 to 20, characterized in that an instance description is modeled with the aid of at least one assignment variable, in particular by means of a continuous [0,1] variable or a 0-1 variable, for the start position and the target position and each object.

22. Device (40) according to claim 21, characterized in that the instance description is extended by an object class for a more precise definition of the object.

23. Device (40) according to claim 21 or 22, characterized in that the instance description is extended by target groups for grouping target positions.

24. Device (40) according to one of the preceding claims 16 to 23, characterized in that a traversal of the travel curve (251, 252, 253) takes a period of time, and continuous [0,1] variables are used to describe the time and location of each operation, and a fixed time is used as a reference point for each operation.

25. Device (40) according to claim 24, characterized in that the operations taken into account include picking up the object and placing the object.

26. Device (40) according to one of the preceding claims 16 to 25, characterized in that a target position on the travel curve is defined for each device and the distance of the position (33, 34, 35) to this target position is recorded as an "Offset" variable.

27. Device (40) according to one of the preceding claims 16 to 26, characterized in that the solver (40) uses the Big-M method.

28. Device (40) according to one of the preceding claims 16 to 27, characterized in that an update of the information about objects and target positions on the belt requires a recalculation, and for this purpose a part of the planning data is frozen (47), in particular for all processes that take place in the period required to carry out the recalculation and to convert it into driving instructions.