Computer-implemented method for determining a slaughtered poultry processing plan
The method optimizes poultry processing by flexibly assigning orders across multiple supply batches based on weight distributions, addressing inefficiencies in existing methods and reducing waste, thus enhancing operational efficiency.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- MAREL STORK POULTRY PROCESSING
- Filing Date
- 2026-01-06
- Publication Date
- 2026-07-23
AI Technical Summary
Existing methods for assigning poultry orders to supply batches in a processing line are inefficient, as they do not account for the unique weight distributions of each batch and the first-in-first-out nature of the processing process, leading to potential waste and suboptimal resource utilization.
A computer-implemented method that considers the overall weight distributions and numbers of poultry items across multiple supply batches, allowing flexible assignment of orders to multiple batches, including the possibility of partial allocation and threshold weight values, to optimize the processing plan.
This approach enhances the efficiency of poultry processing by minimizing waste and optimizing resource utilization, ensuring that orders are fulfilled with minimal excess poultry items, thereby improving the overall operational efficiency of the meat processing plant.
Smart Images

Figure EP2026050138_23072026_PF_FP_ABST
Abstract
Description
[0001] Computer-implemented method for determining a slaughtered poultry processing plan
[0002] FIELD OF THE INVENTION
[0003] This disclosure relates to a computer-implemented method for determining a slaughtered poultry processing plan, in particular to such method wherein a first order is assigned to both a first and to a second supply batch and a second order is assigned to the first supply batch.
[0004] BACKGROUND WO2022 / 112170 A1 discloses a method for fulfilling a plurality of weight batch orders in a food item processing line. In this method, it is determined which weight batch orders best correspond with estimated weight data of a first supply batch of food items and allocating these best corresponding orders to the first supply batch of food items. A disadvantage of this method is that it may still yield inefficient allocations of orders to supply batches.
[0005] SUMMARY
[0006] Therefore, one aspect of this disclosure relates to a computer-implemented method for determining a slaughtered poultry processing plan. The slaughtered poultry is input into a processing process in supply batches that are processed one after the other. Further, the supply batches comprise a first supply batch and a second supply batch. The method comprises, for each supply batch, obtaining supply batch information indicative of a weight distribution of poultry items in the supply batch. The method also comprises receiving a plurality of orders, wherein each order out of the plurality of orders defines a number of poultry items, such as whole chickens or fillets or thighs or drumsticks, and at least one weight criterion for the number of poultry items, e.g. defines 1000 filets of at least 250 gram. The plurality of orders comprises a first order and a second order. The method also comprises, based on the respective weight distributions of the poultry items in the supply batches, and based on the numbers and weight criteria as defined by the plurality of orders, assigning the plurality of orders to the supply batches thus determining the processing plan. Herein, assigning the plurality of orders to the supply batches comprises assigning the first order to the first supply batch and to the second supply batch and assigning the second order to the first supply batch.
[0007] It should be appreciated that determining an efficient slaughtered poultry processing plan is not trivial. A major complicating factor is that the slaughtered poultry is input into the processing process in supply batches one after the other, wherein each supply batch has its own weight distribution. In principle, only once a supply batch has been completely input into the processing process, will the next supply batch be input into the process. If for example some order is to be fulfilled that defines 1000 filets of at least 250 gram, then it will not be possible to simply select 1000 filets of at least 250 gram (effectively selecting 500 chickens with these 1000 filets) from various supply batches and then inputting these selected 1000 filets into the processing process. Even stronger, it wouldn’t even be possible to select 1000 filets of at least 250 gram from a single supply batch, because typically the poultry items within a single supply batch are input at random into the processing process. Hence, filets of less than 250 gram would be input as well into the processing process even if the order of1000 filets of at least 250 gram is being fulfilled. Another complicating factor for determining the slaughtered poultry processing plan is that, once a poultry item has been input into the processing process, it is not possible to pause the processing of this poultry item. The process is namely a first-in-first-out process. It is for example not possible, or only to very limited extent, to store, somewhere within the process, poultry items that are suitable for fulfilling some order in order to first collect enough suitable poultry items somewhere along the process line and only then let these suitable poultry items resume into the process line for fulling the order in question. Further, once a poultry item has been input into the processing process, it will have to end up being used to fulfill an order, else the poultry item will end up in bulk, which is highly undesired as bulk poultry is typically of less value than other poultry items and / or constitutes waste.
[0008] The method disclosed herein is advantageous as the whole of orders and supply batches is considered, as opposed to determining, for each supply batch, the orders that best correspond to the supply batch in question. It may very well be that even though some order best corresponds to a particular supply batch, it may still be more efficient to not allocate this order to this particular supply batch but to another supply batch, or to only partially allocate this order to the particular supply batch, as will be explained in more detail below with reference to figure 2. The first order may for example be assigned to both the first supply batch and to the second supply batch even though the first supply batch on itself or second supply batch on itself contains sufficient poultry items for completely fulfilling the first order. Such “flexible” allocation happens in the method disclosed herein in that the first order is assigned to the first supply batch and to the second supply batch, while the second order is assigned to the first supply batch. Such flexible allocation enables to improve the efficiency of the slaughtered poultry processing plan, for example in the sense that less poultry items end up in bulk as referred to above.
[0009] The slaughtered poultry processing plan may be understood to schedule the operation of a meat processing plant, wherein it is understood that poultry is considered to be meat. The process steps that at any given time are being performed in the meat processing plant and thus the required resources for these process steps, such as human operators and cutting devices, depend on which orders are being fulfilled at that given time. Hence, by assigning an order to a supply batch that will be input into the processing process during some time window, effectively constitutes scheduling, forthat time window, the activities associated with that order in the meat processing plant.
[0010] In an embodiment, the slaughtered poultry processing plan is a plan for a single day, for example for the next day, and the supply batches are input into the processing process during that day.
[0011] A poultry item may be a whole chicken. Alternatively, a poultry item may be a poultry part, such as a fillet or thigh.
[0012] It should be appreciated that adjectives such as “first” and “second” do not necessarily indicate an order. Such adjectives are typically used in this disclosure for indicating different batches, orders, etc. Thus, the first supply batch is not necessarily input into the processing process before the second supply batch.Typically, a supply batch contains a number of slaughtered poultry animals that have been delivered to the meat processing plant in a so-called flock. Each supply batch referred to herein may correspond one-to-one with such flock. Typically, a flock originates from a single poultry farmer. A flock, and therefore also its associated supply batch, may have a known or expected weight distribution of whole poultry birds. If a specific poultry part, such as a fillet, is approximately the same percentage of the total weight of a poultry bird (which typically is true), such weight distribution of whole poultry birds may be understood to indicate a weight distribution of such specific poultry part as well.
[0013] In an embodiment, assigning the plurality of orders to the supply batches comprises assigning the second order to the second supply batch.
[0014] In this embodiment, the allocation is even more flexible in that not only the first order may be assigned to the first and second supply batch, but the second order may also be assigned to the first and second supply batch.
[0015] Additionally or alternatively, the second order is assigned to a third supply batch out of the supply batches.
[0016] The first order for example defines a first weight criterion indicating that each poultry item should have a weight in a first weight range and the second order for example defines a second weight criterion indicating that each poultry item should have a weight in a second weight range, wherein the first weight range and second weight range overlap each other. Then still may the first order be assigned to both the first and second supply batch and still may the second order be assigned to both the first and second supply batch.
[0017] All orders out of the plurality of orders would, in an embodiment, relate to a same type of poultry item. To illustrate, all orders out of the plurality of orders may relate to whole poultry birds or all orders may relate to wing-type poultry items or all orders may relate to leg-type poultry items or all orders out of the plurality of orders may relate to breast-type poultry items.
[0018] In an embodiment, the first order defines a first number of poultry items and defines a first weight criterion for the first number of poultry items, and the second order defines a second number of poultry items and defines a second weight criterion for the second number of poultry items. In this embodiment, the method comprises determining, based on the respective weight distributions of the poultry items in the supply batches, and based on the numbers and weight criteria as defined by the plurality of orders, a threshold weight value for the first supply batch. In this embodiment, assigning the plurality of orders to the supply batches comprises assigning, based on the threshold weight value, the first order to first supply batch’s poultry items having a weight lower than or higher than the threshold weight value and, preferably, assigning, based on the threshold weight value, the second order to first supply batch’s poultry items having a weight higher than or, respectively, lower than the threshold value.
[0019] This embodiment further improves the flexibility with which orders can be assigned to supply batches. In this embodiment, both the first and second order may each be understood as being assigned to a specific weight range in the first supply batch. This flexibility enables to increase the efficiency of the slaughter poultry processing plan.In principle, if a threshold weight value is determined for a supply batch, then this may be understood as that the supply batch in question comprises poultry items having a weight higher than the threshold weight value and a weight lower than the threshold weight value.
[0020] It should be appreciated that the individual poultry items in a supply batch may be measured somewhere during the process after they have been input into the process. This allows to indeed assign poultry items out of one supply batch to different orders based on their weight. After each poultry item is weighed, it may for example be determined whether it will be used to fulfill the first order or the second order. If two different orders are assigned to the same supply batch, this would typically mean that the processing for these two orders is performed in simultaneously. For example, if the first order requires a first cutting device and the second order requires a second cutting device, then both the first cutting device and the second cutting device may need to be in operation while the first supply batch is going through the processing process.
[0021] In an embodiment, the first weight criterion is that each poultry item has a weight less than X gram, wherein the threshold weight value is lower than X gram. Alternatively, the first weight criterion is that each poultry item has a weight more than X gram, wherein the threshold weight value is higher than X gram. X is a positive real number.
[0022] Thus, in this embodiment, if the first weight criterion is that each poultry item has a weight less than X gram, even though the first supply batch would have poultry items that have a weight less than X gram yet more than the threshold weight value and that therefore would meet the first weight criterion, then still these poultry items would not be assigned to the first order. This flexibility in assigning orders to supply batches may benefit the efficiency of the slaughtered poultry plan. After all, continuing the example above, it may be that the poultry items having a weight between the threshold weight value and the X gram are relatively rare in the supply batches and are therefore better assigned to fulfilling an order that requires these rare poultry items.
[0023] In an embodiment, the second weight criterion is that each poultry item has a weight more than Y gram, Y being lower than X gram and the threshold weight value being between X and Y.
[0024] Alternatively, the second weight criterion is that each poultry item has a weight less than Y gram, Y being higher than X and the threshold weight value being between X gram and Y gram. Y is a positive real number.
[0025] This embodiment provides even greater flexibility as the threshold weight value does not coincide with the weight defined by the first weight criterion nor with the weight defined by the second weight criterion. Hence, due to this increased flexibility this embodiment enables to determine even more efficient slaughtered poultry processing plans.
[0026] In an embodiment, the method comprises determining, based on the respective weight distributions of the poultry items in the supply batches, and based on the numbers and weight criteria as defined by the plurality of orders, a weight value range for a particular supply batch out of the supply batches. Herein, assigning the plurality of orders to the supply batches comprises assigning at least two orders out of the plurality of orders to poultry items out of the particular supply batch that have a weight in the weight value range.The particular supply batch may be the first supply batch or the second supply batch, or any other supply batch out of the supply batches.
[0027] This embodiment is advantageous as it allows to assign different orders to poultry items of similar weight out of a single supply batch. Such assigning provides for an increased flexibility in assigned orders to supply batches and therefore enables to determine efficient slaughtered poultry processing plan.
[0028] To illustrate, it may for example be that the first order is assigned to 20% of the poultry items in the weight value range and the second order is assigned to 80% of the poultry items in the weight value range. Then, when the particular supply batch is input into the processing process, every fifth poultry item in that weight range may be used to fulfill the first order whereas the other poultry items in that weight range may be used to fulfill the second order.
[0029] Assigning different orders to a single weight range in a particular supply batch may be performed on the basis of one or more capacities of one or more respective devices, such as cutting devices, that are to be used for fulfilling the first and / or second order. To illustrate, it may be that the first order requires the use of a first cutting device, whereas the second order requires the use of a second cutting device. The first cutting device may have a first capacity in that it can process a first number of poultry items per minute and the second cutting device may have a second capacity in that it can process a second number of poultry items per minute. It may then be that assigning the first order to all poultry items in that weight range would mean that the first cutting device would receive more poultry items per minute than said first number which would cause an undesired congestion at the first cutting device. In this example, it would be better to also sign the second order to some of the poultry items in that weight range.
[0030] In an embodiment, the method comprises determining, for each scenario out of a plurality of scenarios, an efficiency score that indicates how efficient the supply batches are used for fulfilling the plurality of orders. Each scenario defines a different assignment of the plurality of orders to the supply batches. In this embodiment, the method comprises, based on the determined efficiency scores, selecting a scenario out of the plurality of scenarios. In this embodiment, the step of assigning the plurality of orders to the supply batches is performed in accordance with the assignment as defined by the selected scenario.
[0031] This embodiment may involve performing an optimization algorithm wherein the objective function of the optimization algorithm is the efficiency score that should be as high as possible, the constraints of the optimization algorithm would include the weight distributions of the supply batches as well as the weight criteria and numbers defined by the orders, and optionally the times of fulfillment and expiration dates defines by the orders (see below), and the decision variables of the optimization algorithm define which one or more orders are assigned to each supply batch and in particular define threshold weight values, for example, and / or in particular define, if two or more orders are assigned to a single weight range in a supply batch, for each order, to how many poultry items in the weight range the order in question is assigned. The threshold weight values can be used as decision variables in the optimization algorithm because the method for determining the slaughtered poultry processing plan allows for it. To illustrate, since in the methods disclosed herein, a threshold weight value doesnot need to coincide with a weight criterion of an order, there is much more freedom to vary such threshold weight value. Likewise, because multiple orders can be assigned to a single weight range in a supply batch, the way the orders can be assigned to supply batches increases tremendously. This greater flexibility in assigning orders to supply batches, in terms of an optimization algorithm, enlarges the search space of the optimization algorithm, which enables better solutions, i.e. more efficient slaughtered poultry processing plans.
[0032] Examples of such optimization algorithm include particle swarm optimization (pso), differential evolution, local search, genetic algorithms (including hybrid genetic algorithms such as those also comprising a local search) as well as Al type of algorithms such as machine learning and neural networks.
[0033] In an embodiment, in at least one scenario for which an efficiency score is determined, -the second order is assigned to the second supply batch, and / or
[0034] -the first order is assigned to first supply batch’s poultry items having a weight lower than or higher than a determined threshold weight value, and / or
[0035] -the second order is assigned to first supply batch’s poultry items having a weight higher than or, respectively, lower than this threshold value, and / or
[0036] -the threshold weight value is lower than or higher than X gram, and / or
[0037] -the threshold weight value is between X and Y gram, and / or
[0038] -at least two orders out of the plurality of orders are assigned to poultry items out of a particular supply batch that have a weight in the weight value range.
[0039] This embodiment is advantageous in that it provides great flexibility in terms of how, in the evaluated scenarios, the orders can be assigned by supply batches, which yields a higher chance of finding an optimal scenario.
[0040] In an embodiment, the efficiency score indicates a number of and / or a total weight of poultry items unassigned to an order out the plurality of orders. In principle, an unassigned poultry item will end up in bulk. As referred to herein, “bulk” is not to be understood as an order.
[0041] In an embodiment, the supply batch information obtained for each supply batch indicates a time slot during which the supply batch in question is input into the processing process, and each order out of the plurality of orders defines a time of fulfillment indicating a time at which the order in question should be fulfilled and / or defines an expiration date indicating a day until which poultry items in the order in question should remain suitable for consumption. In this embodiment, the method comprises, based on the time slots as indicated for the supply batches and based on the times of fulfillment indicated by the plurality of orders and / or based on the expiration dates indicated by the plurality of orders, assigning the plurality of orders to the supply batches.
[0042] This embodiment allows to ensure that each order is fulfilled at or before its time of fulfillment and / or is fulfilled only with poultry items having an expiration date at or after the batch expiration date. The times of fulfillment and the expiration dates defined by the orders and the time slots indicated for each supply batch may be treated as constraints in an optimization algorithm. The time of fulfillment is a constraint in that the order in question can only be assigned to supply batches that are input into the processing process before the time of fulfillment. The expiration date is a constraint in that the order inquestion cannot be assigned to supply batches that arrive before some time, because then the poultry items would have an expiration date that is too soon.
[0043] In an embodiment, obtaining, for each supply batch, supply batch information comprises determining, for each supply batch, an expected weight distribution of poultry items in the supply batch based on previously measured weight distributions of previous supply batches from the same supplier.
[0044] This embodiment improves the accuracy of the weight distributions as indicated by the supply batch information. For example, a machine-learning algorithm may be used to construct a mathematical model for calculating, based on input parameters, such as time of year, supplier, type of poultry, average age of the poultry, the weight distribution for a supply batch. Measurements that are performed during the processing process on the poultry items may then be used as training data by the machine-learning algorithm so that the mathematical model keeps improving.
[0045] In an embodiment, the method comprises, for each order out of the plurality of orders, determining, based on a processing speed indicating a number of poultry items input per unit of time into the processing process, and based on the weight distribution of at least one supply batch to which the order in question is assigned, an expected number of poultry items input per unit of time into the processing process, which number of poultry items are in the at least one supply batch and have been assigned to the order in question. In this embodiment, the method comprises determining, based on a time slot during which the at least one supply batch is input into the processing process, and based on the expected number of poultry items per unit of time, an expected time of fulfillment of the order in question.
[0046] The at least one supply batch referred to in the foregoing paragraph would typically be the last supply batch to which the order in question is assigned, i.e. the supply batch that provides the poultry items that complete the order in question.
[0047] Preferably, in each scenario referred to above, the expected time of fulfillment is determined for each order to verify that, for each order, the expected time of fulfillment is before (or at) the time of fulfillment defined by the order in question.
[0048] The expected time of fulfillment may be determined on other parameters as well, such as how long it takes for a single poultry item to be processed and to be in a state in which it can be added to the order in question. This may also be referred to as the throughput time. This throughput time for example depends on the capacities of cutting devices required for the order.
[0049] For each order, based on the expected time of fulfillment, can a total active time be determined for the order in question which indicates a time duration between the moment the first poultry item has been processed for the order and / or had been added to the order and the moment the order has been completely fulfilled. The total active time is preferably short in order to reduce storage space requirements. Active orders, which are not yet complete, will typically not be shipped out but will remain in the meat processing plant. The total active times of the different orders may be reflected to some extent in the efficiency score of a scenario.
[0050] The expected number of poultry items from a particular supply batch input per unit of time into the processing process that are assigned to a particular order, P_expected, may be determined by multiplying a ratio between the number of poultry items in the particular supply batch that are suitablefor fulfilling the particular order, N_suitable, and the total number of poultry items in the particular supply batch, N_total, with the processing speed, P: P_expected = N_suitable I N_total * P. As referred in this last sentence, a poultry item being suitable for fulfilling the particular order may be understood as a poultry item that can be used for fulfilling the order in accordance with the assignment of the particular order to the particular supply batch. The expected time of fulfillment, T_final, may then be approximately given by T_final = T_entry + T_throughput + N_order / P_expected, wherein T_entry indicates the time at which the first poultry item from the supply batch enters the processing process wherein the first poultry item is not necessarily used for the particular order, T_throughput indicates for a poultry item the duration between entry into the processing process and being ready and added to the order, and N_order indicates the number of poultry items that are still to be added to the order for completion of the order.
[0051] In an example, some order is assigned to some supply batch and this supply batch completes this order, in particular, the order is assigned to 300 poultry items in this supply batch that weigh more than 250 gram. The order for example defines 1000 poultry items each weighing more than 200 gram and this supply batch provides for the last 300 poultry items. If we assume that the supply batch has 1500 poultry items out of which 400 weigh more than 250 gram, and that the processing speed is 1 poultry item per second input into the processing process. Note that the supply batch may contain a number of poultry items having a weight between 200 gram and 250 gram. These poultry items would indeed be suitable for fulling the order, however, they cannot be used to fulfill the order in accordance with how the order has been assigned to the supply batch, because the order has been assigned specifically to poultry items in this supply batch that weigh more than 250 gram. The expected number of poultry items input per minute (from this supply batch) that have been assigned to this order may be determined equal to 40011500 * 60 = 16 poultry items per minute. Then, it is expected to take approximately 300 / 14 = 18.75 minutes from the moment that the first poultry item out of the supply batch is input into the processing process, for the order to be completed. The above example in formulas:
[0052] N_order = 300 poultry items
[0053] N_suitable = 400 poultry items
[0054] N_total = 1500 poultry items
[0055] P = 60 poultry items I minute,
[0056] then
[0057]
[0058] = T_entry + T_throughput + 18.75 minutes
[0059] An aspect of this disclosure relates to a method for processing of slaughtered poultry in a meat processing plant. This method comprises performing any of the computer-implemented methods described herein for determining a slaughtered poultry processing plan, and processing the slaughtered poultry in accordance with the determined slaughtered poultry processing plan.
[0060] Herein, processing the slaughtered poultry in accordance with the determined slaughtered poultry processing plan would typically be performed by, for each supply batch that is input into theprocessing process, and for each order that is assigned to poultry items out of the supply batch in question, using the poultry items out of the supply batch in question for at least partially fulfilling the order in question.
[0061] In principle, if at least one poultry item out of a supply batch is used for at least partially fulfilling an order assigned to supply batch in question because the determined slaughtered poultry processing plan defines this, then this may already be understood as processing the slaughtered poultry in accordance with the determined slaughtered poultry processing plan.
[0062] One aspect of this disclosure relates to a computer comprising a computer readable storage medium having computer readable program code embodied therewith, and a processor, preferably a microprocessor, coupled to the computer readable storage medium, wherein responsive to executing the computer readable program code, the processor is configured to perform any of the computer-implemented methods disclosed herein.
[0063] One aspect of this disclosure relates to a computer program or suite of computer programs comprising at least one software code portion or a computer program product storing at least one software code portion, the software code portion, when run on a computer system, being configured for executing any of the computer-implemented methods disclosed herein.
[0064] One aspect of this disclosure relates to a non-transitory computer-readable storage medium storing at least one software code portion, the software code portion, when executed or processed by a computer, is configured to perform any of the computer-implemented methods disclosed herein.
[0065] One aspect of this disclosure relates to a computer program comprising instructions which, when the program is executed by a computer, cause the computer to carry out any of the computer-implemented methods described herein.
[0066] One aspect of this disclosure relates to a computer-readable data carrier having stored thereon any of the computer programs described herein.
[0067] The computer-readable data carrier may be hard disk, for example, or a signal.
[0068] One aspect of this disclosure relates to a computer readable storage medium having computer readable program code embodied therewith, and a processor, preferably a microprocessor, coupled to the computer readable storage medium, wherein responsive to executing the computer readable program code, the processor is configured to perform any of the computer-implemented methods described herein.
[0069] One aspect of this disclosure relates to a computer program or suite of computer programs comprising at least one software code portion or a computer program product storing at least one software code portion, the software code portion, when run on a computer system, being configured for executing any of the computer-implemented methods described herein.
[0070] One aspect of this disclosure relates to a non-transitory computer-readable storage medium storing at least one software code portion, the software code portion, when executed or processed by a computer, is configured to perform any of the computer-implemented methods described herein.
[0071] One aspect of this disclosure relates to a data carrier signal carrying any of the computer programs described herein.Elements and aspects discussed for or in relation with a particular embodiment may be suitably combined with elements and aspects of other embodiments, unless explicitly stated otherwise.
[0072] Embodiments of the present invention will be further illustrated with reference to the attached drawings, which schematically will show embodiments according to the invention. It will be understood that the present invention is not in any way restricted to these specific embodiments.
[0073] BRIEF DESCRIPTION OF THE DRAWINGS
[0074] Aspects of the invention will be explained in greater detail by reference to exemplary embodiments shown in the drawings, in which:
[0075] FIG. 1 schematically illustrates a meat processing plant that may perform a slaughtered poultry processing plan determined with a method according to an embodiment;
[0076] FIG. 2A illustrates a slaughtered poultry processing plan;
[0077] FIG. 2B illustrates a slaughtered poultry processing plan determined with a method according to an embodiment;
[0078] FIG. 3 is a flow chart illustrating a method according to an embodiment that involves determining efficiency scores for various scenarios;
[0079] FIG. 4 illustrates computer according to an embodiment.
[0080] DETAILED DESCRIPTION OF THE DRAWINGS
[0081] In the figures, identical reference numbers indicate identical or similar elements.
[0082] Figure 1 schematically illustrates a meat processing plant that can process slaughtered poultry in accordance with a slaughtered poultry plan as determined by performing the method for determining a slaughtered poultry processing plan according to an embodiment. In the meat processing plant 2, slaughtered poultry 4 is input into a processing process in supply batches 6a, 6b that are processed one after the other. This means that first the entire supply batch 6a is input into the processing process before supply batch 6b is input into the processing process. The process in figure 1 starts at A, and ends at one of B1 , B2, B3, B4. Herein, if a poultry items ends up at B1 , B2, B3 it is added to an order, whereas if a poultry item ends up at B4 (like poultry item 4d), it means that it has not been used for fulfilling an active order and has ended up in what is referred to as “bulk”. In figure 1 , the supply batches 6a, 6b are shown as trucks as each supply batch typically comes from a different supplier, e.g. a different chicken farmer. Typically, the time at which, and the order in which, supply batches arrive at the meat processing plant is given and the methods disclosed herein aim to determine a slaughtered poultry processing plan that, given the times at which the supply batches arrive at the meat processing plant 2, is as efficient as possible in that as many poultry items as possible are used for fulfilling an order.
[0083] A meat processing plant typically has a plurality of orders pending. Each order defines a number of poultry items, such as whole chickens or fillets or thighs or drumsticks, and at least one weight criterion for the number of poultry items, e.g. defines 1000 filets of at least 250 gram. In figure 1 , there are three “active” orders meaning that currently three orders are being fulfilled and each order is fulfilled at a different batching station 12a, 12b, 12c. In the processing process, a poultry itemrouting device 7a routes some poultry items 4a to a processing device 8a, which is for example a cutting device, that processes the poultry items 4a in accordance with the order associated with batching station 12a. Likewise, a routing device 7b routes some poultry items 4b to a processing device 8b that processes the poultry items 4b in accordance with the order associated with batching station 12b. Likewise, a routing device 7c routes some poultry items 4c to a processing device 8c that processes the poultry items 4c in accordance with the order associated with batching station 12c. The devices 8a, 8b, 8c may be similar devices, however, this need not be the case. The method disclosed herein would typically be performed for a plurality of orders that all relate to the same type of poultry item, e.g. all to a breast-type poultry item. If all three active orders in figure 1 would indeed relate to breast-type poultry items, then cutting device 8a may for example cut chicken breasts into pieces, while cutting device 8b cuts chicken breasts into strips, while device 8c keeps the chicken breasts intact but applies some marination to the chicken breasts. In figure 1 , 10a may thus indicate chicken dices, 10b may indicate chicken strips and 10c may indicate marinated chicken breasts.
[0084] In an embodiment, the routing devices may also be implemented after a single processing device 8 (not shown). To illustrate, it may be that all three active orders relate to whole (unmarinated) chicken breasts. Then, a single processing device may be implemented in the processing process that outputs chicken breasts. Then, one or more poultry routing devices may route these chicken breasts to one of the active orders, for example in that they route these chicken breasts to one of the batching stations 12a, 12b, 12c.
[0085] It should be appreciated that once a poultry item, that may be still part of a whole chicken, is input into the processing process at A, it will in principle not overtake another poultry item during the processing process and it will in principle not be overtaken by another poultry item during the process.
[0086] In an embodiment, the meat processing plant 2, in particular a data processing system of the meat processing plant, which may also be referred to as a computer, obtains, for each supply batch that is going to be delivered, supply batch information indicative of a weight distribution of poultry items in the supply batch. Typically, the poultry items 4 that have been input into the processing process are weighed at some point using a weighing system 14. However, it should be appreciated that the supply batch information is typically obtained before the supply batches even arrive at the meat processing plant 2. Preferably, the supply batch information for a supply batch is obtained by determining an expected weight distribution of poultry items in that supply batch based on previously measured weight distributions of previous supply batches from the same supplier. Historical supply batches from the same supplier tend to be quite similar and therefore serve well as input for the estimation of the weight distributions of supply batches from that same suppliers. As explained above, a machine-learning method may be performed in order to construct a mathematical model that can predict, based on relevant input parameters, such as supplier, the expected weight distribution for a supply batch that is going to arrive at the meat processing plant.
[0087] The poultry items from a supply batch are input into the processing process A at random. There is no sorting by weight for example before the poultry items are input into the processing process. However, if an order is assigned to a number of poultry items from the supply batch that for example have some minimum weight, then it is, of course necessary to weigh the poultry items during theprocessing process to identify the poultry items that actually have at least this minimum weight and can therefore be used to fulfill said order.
[0088] Once the slaughtered poultry plan has been determined, the meat processing plant may indeed process the slaughtered poultry in accordance with this plan. This would typically be performed by, for each supply batch that is input into the processing process, and for each order that is assigned to poultry items out of the supply batch in question, using these poultry items out of the supply batch in question for at least partially fulfilling the order in question. This may for example be performed by controlling poultry item routing devices to ensure that each poultry item ends up at the correct order, for example at the correct processing device and at the correct batching station.
[0089] Figures 2A and 2B illustrate how the method described herein may yield a more efficient poultry processing plan and thus enable a meat processing plant to operate more efficiently. Figure 2A shows an assignment of orders to supply batches that involves assigning each order to the supply batch that best corresponds to it or, in other words, that can best fulfill the order. Figure 2B illustrates an assignment of orders to supply batches that is the result of the method for determining a processing plan according to an embodiment. As will be explained below, the poultry processing plan of figure 2B is more efficient than the poultry processing plan of figure 2A.
[0090] Figure 2A shows the supply batches #1 , #2, #3 that will arrive one after the other at the meat processing plant, for example that will arrive at the plant tomorrow. Each supply batch has its own weight distribution as shown. Further, figure 2A shows three orders 14a, 14b, 14c. Order 14a is for 591 poultry items having a minimum weight of w-i.min. Order 14b is for 572 poultry items having a weight between W2,min and W2,max. Order 14c is for 238 poultry items having a weight less than W3,max. Order 14a best corresponds to supply batch #1 because supply batch #1 can completely fulfill order 14a whereas none of the other supply batches can do that. Likewise, order 14b best corresponds to supply batch #2 because supply batch #2 has the most poultry times in it, namely 363 poultry items, that are suitable for fulfilling order 14b. Also, order 14c best corresponds to supply batch #3 because supply batch #3 has the most poultry items in it that are suitable for fulfilling order #3. Hence, in figure 2A, as shown, order 14a is assigned to supply batch #1 , order 14b is assigned to supply batch #2, and order 14c is assigned to supply batch #3. Further, there are also poultry items in supply batch #1 that are not suitable for fulfilling order 14a, yet are suitable for fulfilling order 14b, and therefore order 14b is assigned to these poultry items as well. As can be seen in figure 2A, 182 poultry items have not been assigned to an order, and therefore these poultry items will end up in bulk which constitutes a waste. Further, it can be seen that order 14c has not been completely fulfilled in this plan. Order 14c is namely assigned to only 160 poultry items (of supply batch #3), whereas order 14c is for 238 poultry items in total. Thus, subsequent supply batches would be required to complete order 14c.
[0091] Figure 2B illustrates an assignment for the same supply batches #1 , #2, #3 and for the same orders 14a, 14b, 14c. This assignment, which may be referred to as a poultry processing plan, is the result of performing a method according to an embodiment. Importantly, the orders are assigned to the plurality of orders taking into account not only the weight distributions of the different supply batches, but also the numbers and weight criteria of all orders as opposed to separately finding, for each order, the supply batch that best corresponds to it (as was done for the processing plan shown in figure 2A).Because in the method disclosed herein, the whole of supply batches and orders is considered, and because the method allows for great flexibility in how the orders are assigned to the plurality of supply batches, a more efficient poultry processing plan can be determined as illustrated by figure 2B.
[0092] In figure 2B, order 14a is assigned to poultry items out of supply batch #1 that weigh more than W2, max, while order 14b is assigned to poultry items out of supply batch #1 that weigh less than W2, max. In this way, 299 poultry items out of supply batch #1 will be used to fulfill order 14b and 423 poultry items out of supply batch #1 will be used to fulfill order 14a. Order 14a is also assigned to supply batch #2, namely to poultry items out of supply batch #2 that weigh more than Wb, and to some, not all, poultry items out of supply batch #2 having a weight between waand Wb. Order 14b is also assigned to supply batch #2, namely to poultry items in supply batch #2 that weigh less than waand to some, not all, poultry items out of supply batch #2 having a weight between waand Wb. Herein, wamay be regarded as a threshold value described above in that based on this value the second order 14b has been assigned to poultry items out of supply batch #2 that weigh less than wa. Also, Wb may be regarded as a threshold weight value in that, based on this threshold value, has the first order 14a been assigned to poultry items out of supply batch #2 that weigh more than Wb. Note that neither wanorwb coincides with any of the end points w-i.min orw2,min or W2,max herewith illustrating that such threshold values can be chosen, to some extent, independent of the weight criteria defined by the orders.
[0093] Order 14a is assigned to roughly 20% of all poultry items in the weight range wato Wb and order 14b is assigned to roughly 80% of all poultry items in the weigh range wato Wb. When the processing plan of figure 2B is executed in the meat processing plant, then approximately every fifth poultry item from supply batch #2 that has a weight between waand Wb will have to be routed such that it ends up in order 14a, while the other poultry items from supply batch #2 in this weight range will have to be routed such that they end up in order 14b.
[0094] It should be appreciated that alternatively to assigning multiple orders to the same weight range, a threshold weight value may be determined having a weight value somewhere in the range wato Wb, wherein order 14a is assigned to poultry items from supply batch #2 that weigh more than this threshold weight value and order 14b is assigned to poultry items from supply batch #2 that weigh less then this threshold value. This may for example be performed by performing an interpolation first to obtain a density distribution curve.
[0095] The processing plan as shown in figure 2B is more efficient than the processing plan in figure 2A because there are less poultry items that have not been assigned, namely only 104 and all three orders 14a, 14b, 14c have been completely fulfilled with these three supply batches.
[0096] Figure 3 is a flow chart illustrating a method according to an embodiment. In this embodiment, in step 16, the orders are received each of which defines a number of poultry items and a weight criterion, and in step 18, supply batch information is obtained for each supply batch. Then, in step 20 a scenario is determined. A scenario defines an assignment of the plurality of orders to the supply batches. Then, in step 22, an efficiency score is determined for the scenario that was determined in step 20. The efficiency score indicates how efficient the supply batches are used for fulfilling theplurality of orders. The efficiency score for example indicates a number of total poultry items in the supply batches that are not used for fulfillment of an order.
[0097] The scenarios and its associated efficiency are stored (step 24). Steps 20 and 22 are repeated several times, so that for multiple scenarios the efficiency score is determined and stored. Steps 20 and 22 may be repeated a predetermined number of times. Alternatively, steps 20 and 22 may be repeated until the efficiency score exceeds or is lower than some threshold value.
[0098] In any case, from all scenarios, in step 26, one scenario is selected, typically the scenario that has the best efficiency score. Finally, in step 28, the orders are assigned to the plurality of batches in accordance with the selected scenario thus determining the slaughtered poultry processing plan.
[0099] Figure 4 schematically illustrates a data processing 100, also referred to as a computer, according to an embodiment. The data processing system 100 may for example represent a controller as described herein.
[0100] In data processing system 100, a system bus 102 connects the different components of the data processing system 100. In particular, the system bus 102 depicted in figure 4 connects the Central Processing Unit (CPU) 104, memory elements 106, input devices 108, output devices 110 and communication devices 112 with each other so that they can exchange information. The system bus 102 may be understood to serve both as data bus, address bus and control bus known in the art.
[0101] The CPU 104 is configured to perform steps as per the instructions comprised in a computer program. To illustrate, based on such instructions, the CPU may perform any of the computer-implemented methods described herein. Typically, the CPU 104 is embodied as a microprocessor, which can be implemented on a single metal-oxide-semiconductor integrated circuit chip. The CPU 104 comprises a control unit 114, an arithmetic logical unit (ALU) 116 and a plurality of registers 118.
[0102] The control unit 114 is configured to retrieve instructions from a main memory 120. Typically, the control unit 114 comprises a binary decoder to convert the retrieved instructions into timing and control signals that direct the operation of for example the ALU 116. ALU 116 is configured to perform logical operations, such as additions, subtraction, multiplication, division and Boolean operations, that are required for carrying out the instructions. The registers 118 are small memory elements that can be read and written at relatively high speed. A register may for example store an instruction, a storage address, or any other kind of data. In addition, the CPU may contain hardware caches known in the art (not shown). Preferably the CPU has different levels of caches. These hardware caches may be understood as an intermediate state between the faster registers 119 and the slower main memory 120.
[0103] Memory elements 106 comprise a main memory 120. The main memory 120, also referred to as primary storage in the art, has stored data that is directly accessible to the CPU 104. The CPU 104 may continuously read instructions, i.e. read computer programs, stored in the main memory 120 and execute these instructions. The main memory 120 is typically a random access memory (RAM).
[0104] Memory elements 106 further comprise so-called secondary storage 122, which may be embodied as one or more hard disk drives and / or as one or more solid state drives. Typically, these secondary storage is non-volatile. Further, the memory elements may comprise other storage devices 124, such as removable storage devices, e.g. CD, DVD, USB flash drives, floppy disks, et cetera.Input devices 108 may be understood as devices that are used to provide information to the computer 100, in particular to the CPU 104. Non-limiting examples of input devices are a keyboard, a microphone, a joystick, a mouse, a touch sensitive screen, a weighing system disclosed herein, et cetera. Output devices 110 may be understood as devices that output information out of the computer and / or as devices that are controlled by the computer. Non-limiting examples of output devices 110 are a display, a printer, a headphones, loudspeaker, a poultry item routing device referred to herein, a processing device referred to herein, such as a cutting device, et cetera.
[0105] Communication devices 112 may be understood as devices that allow the computer system to communicate with other computers, such as with a server computer, client computer, or any other type of remote device. Non-limiting examples of communication devices 112 include modems, cable modems, ethernet cards, Bluetooth modules, et cetera.
Claims
CLAIMS1. A computer-implemented method for determining a slaughtered poultry processing plan, whereinthe slaughtered poultry is input into a processing process in supply batches that are processed one after the other, whereinthe supply batches comprise a first supply batch and a second supply batch, the method comprisingfor each supply batch, obtaining supply batch information indicative of a weight distribution of poultry items in the supply batch, andreceiving a plurality of orders, wherein each order out of the plurality of orders defines a number of poultry items, such as whole chickens or fillets or thighs or drumsticks, and at least one weight criterion for the number of poultry items, e.g. defines 1000 filets of at least 250 gram, whereinthe plurality of orders comprises a first order and a second order, andbased on the respective weight distributions of the poultry items in the supply batches, and based on the numbers and weight criteria as defined by the plurality of orders, assigning the plurality of orders to the supply batches thus determining the processing plan, whereinassigning the plurality of orders to the supply batches comprises assigning the first order to the first supply batch and to the second supply batch and assigning the second order to the first supply batch.
2. The method according to the preceding claim, wherein assigning the plurality of orders to the supply batches comprises assigning the second order to the second supply batch.
3. The method according to claim 2, whereinall orders out of the plurality of orders relate to whole poultry birds, or whereinall orders out of the plurality of orders relate to wing-type poultry items, or whereinall orders out of the plurality of orders relate to leg-type poultry items, or whereinall orders out of the plurality of orders relate to breast-type poultry items.
4. The method according to any of the preceding claims, whereinthe first order defines a first number of poultry items and defines a first weight criterion for the first number of poultry items, andthe second order defines a second number of poultry items and defines a second weight criterion for the second number of poultry items, the method comprisingdetermining, based on the respective weight distributions of the poultry items in the supply batches, and based on the numbers and weight criteria as defined by the plurality of orders, a threshold weight value for the first supply batch, whereinassigning the plurality of orders to the supply batches comprises assigning, based on the threshold weight value, the first order to first supply batch’s poultry items having a weight lower than orhigher than the threshold weight value and, preferably, assigning, based on the threshold weight value, the second order to first supply batch’s poultry items having a weight higher than or, respectively, lower than the threshold value.
5. The method according to claim 4, whereinthe first weight criterion is that each poultry item has a weight less than X gram, wherein the threshold weight value is lower than X gram, or whereinthe first weight criterion is that each poultry item has a weight more than X gram, wherein the threshold weight value is higher than X gram, whereinX is a positive real number.
6. The method according to claim 5, whereinthe second weight criterion is that each poultry item has a weight more than Y gram, Y being lower than X gram and the threshold weight value being between X and Y, or, respectively,the second weight criterion is that each poultry item has a weight less than Y gram, Y being higher than X and the threshold weight value being between X gram and Y gram, whereinY is a positive real number.
7. The method according to any of the preceding claims, further comprisingdetermining, based on the respective weight distributions of the poultry items in the supply batches, and based on the numbers and weight criteria as defined by the plurality of orders, a weight value range for a particular supply batch out of the supply batches, whereinassigning the plurality of orders to the supply batches comprises assigning at least two orders out of the plurality of orders to poultry items out of the particular supply batch that have a weight in the weight value range.
8. The method according to any of the preceding claims, further comprisingdetermining, for each scenario out of a plurality of scenarios, an efficiency score that indicates how efficient the supply batches are used for fulfilling the plurality of orders, whereineach scenario defines a different assignment of the plurality of orders to the supply batches, andbased on the determined efficiency scores, selecting a scenario out of the plurality of scenarios, whereinthe step of assigning the plurality of orders to the supply batches is performed in accordance with the assignment as defined by the selected scenario.
9. The method according to claim 8, wherein the efficiency score indicates a number of and / or a total weight of poultry items unassigned to an order out the plurality of orders.1810. The method according to any of the preceding claims, whereinthe supply batch information obtained for each supply batch indicates a time slot during which the supply batch in question is input into the processing process, and whereineach order out of the plurality of orders defines a time of fulfillment indicating a time at which the order in question should be fulfilled and / or defines an expiration date indicating a day until which poultry items in the order in question should remain suitable for consumption, andbased on the time slots as indicated for the supply batches and based on the times of fulfillment indicated by the plurality of orders and / or based on the expiration dates indicated by the plurality of orders, assigning the plurality of orders to the supply batches.
11. The method according to any of the preceding claims, wherein obtaining, for each supply batch, supply batch information comprisesdetermining, for each supply batch, an expected weight distribution of poultry items in the supply batch based on previously measured weight distributions of previous supply batches from the same supplier.
12. The method according to any of the preceding claims, further comprisingfor each order out of the plurality of orders, determining, based on a processing speed indicating a number of poultry items input per unit of time into the processing process, and based on the weight distribution of at least one supply batch to which the order in question is assigned, an expected number of poultry items, that are in the at least one supply batch and have been assigned to the order in question, input per unit of time into the processing process, anddetermining, based on a or the time slot during which the at least one supply batch is input into the processing process, and based on the expected number of poultry items, an expected time of fulfillment of the order in question.
13. A method for processing of slaughtered poultry in a meat processing plant, comprising performing the computer-implemented method according to any of the preceding claims, and processing the slaughtered poultry in accordance with the determined slaughtered poultry processing plan.
14. A computer comprising aa computer readable storage medium having computer readable program code embodied therewith, anda processor, preferably a microprocessor, coupled to the computer readable storage medium, wherein responsive to executing the computer readable program code, the processor is configured to perform the computer-implemented method according to any of the preceding claims 1-12.1915. A computer program or suite of computer programs comprising at least one software code portion or a computer program product storing at least one software code portion, the software code portion, when run on a computer system, being configured for executing the computer-implemented method according to any of the preceding claims 1-12.