Stock feedsupply construction

author: young

Feedsupply is represented as a nutritive value (NV). There is also an input which controls if the animal is in confinement or not.

Animal production is generated for animals following different liveweight profiles throughout the year. There are a number of starting liveweights and for each starting liveweight there are a number of feedsupply patterns. The LW profiles are not continuous for the entirety of the animal’s life, rather the animals are distributed to the starting liveweights at the beginning of each year (prejoining). This is done to reduce model size.

The standard feedsupply options throughout the year are generated from an input of the expected optimum feedsupply and a range either side based on specified nutrition levels. The feedsupply is input for three levels; expected optimum, higher and lower and the standard feedsupply is created by scaling the expected optimum using the range between the higher and lower levels and the input values for nutrition level. For each feed variation period (FVP) the number of nutrition options is determined by the specified nutrition levels. The number of nutrition options each year depends on this number and the number of FVPs. At the start of each FVP each nutrition option up to that point can then split based on the number of specified nutrition levels. For example, the high nutrition feedsupply in the first FVP is followed by all feedsupply levels in the second FVP. See below for a visual description of the feedsupply patterns.

_images/FS_diagram.png

Figure 1: Representation of the nutrition profile options (feedsupply patterns) included in the livestock data generator if there were 1 starting liveweight 2 nutrition levels and 3 feed variation periods.

The standard feedsupply can be generated in two ways:

  1. from inputs in Property.xl and Structural.xl

  2. from a pkl file that is generated from the optimum nutrition in a previous trial with multiple w options.

The spreadsheet inputs for Feedsupply contain a base feedsupply (i_feedoptions_r1pj0) for different animals. The base feed supply used for each animal class in the generator is selected using ia_r1_zig?.

For dams (has not been hooked up for offs) there is possible further adjustment (i_feedsupply_adj_options_r2p) for LSLN (litter size lactation number - b1 axis) and weaning age (a1 axis). Typically this is not used. Instead the user runs AFO with multiple nutrition levels and allows the model to generate the optimal feedsupply which is stored in a pkl file and used for subsequent runs.

Generating the feedsupply from the optimal nutrition pattern selected by the model means that the feedsupply can easily be optimised for different axis that are not included in the spreadsheet inputs (e.g. t axis and z axis). This is carried out in the feedsupply creation experiment (in exp.xl). Depending on the number of w that have been included in the trials it may take several iterations to converge on the optimal feedsupply. The inclusion of confinement feeding may also be optimised and stored in the pkl file. However, optimising the duration of confinement feeding is imprecise because the optimisation occurs at the DVP level and this time-step is likely too long. Therefore, the user needs to test including confinement in a range of feed periods for different stock classes. This is controlled using the input i_confinement_r1p6z.

When using the pkl file as the source of the feedsupply inputs it is possible to control whether the inclusion of confinement is controlled by the previous optimum solution (from the pkl file) or from the input i_confinement_r1p6z. This allows the inclusion of confinement feeding in subsequent trials even if it wasn’t selected in the previous optimum solution. This also allows confinement to be included in the N1 model without forcing it to occur all year.

Differentiating feeding supplement in confinement from supplementary feeding in the paddock by separating both the DV’s for the livestock and a separate feed pool constraint is good for a few reason:

  1. Feeding a given quantity of energy per day in confinement results in better production because less energy is expended grazing.

  2. Confinement feeding should incur a capital cost of the feed lot and the labour requirement should reflect feedlot conditions rather than paddock feeding conditions.

  3. Restricted intake of supplement in confinement that meets the energy requirements of an animal results in slack volume. If the supplement fed in confinement was in the same feed pool as dry residues this slack volume could be used to consume greater quantities of poor quality feed such as dry pasture or stubble.

  4. The confinement pool is not adjusted for effective MEI, which is to allow for the lower efficiency of feeding if feed quality is greater than the quality required to meet the target for the given pool.

  5. Reason 4 should be removed because no supplement is scaled by effective mei (regardless of feed pool) Michael, after you have read this comment you can delete these 2 points

Likely process to calibrate feedsupply: feedsupply can be calibrated prior to an analysis using multiple n slices and once the optimum is identified the model can be set back to N1. This might take multiple iterations using the big model. The feedsupply will need to be generated for each group of trials that have different active sheep axis (ie if the analysis is comparing scanning options then there would need to be a feedsupply for scan=0 and scan=1 because the clustering is different). A further challenge is to optimise when to confinement feed. Optimising the NV in confinement is similar to optimising in the paddock and requires multiple confinement n.

Some comment regarding feedsupply optimisation.

  • In the big model we hypothesis that more FVP will be more valuable than more n.

  • It may be sensible to do some manual smoothing of the fs. This can be done in the excel fs which is used as the starting point.

  • There some fluctuations in profit as the model finds the optimum feedsupply. Part of this is due to the condensing because an animal may choose one feedsupply and then get distributed to a different feedsupply. However if the pattern becomes the std pattern then it transfers 1:1 which means an animal may not get its optimal feedsupply in the following period. Over a couple of runs it seems to sort its self out. Alternative is to REV all the condensed variables but this is not the neatest solution and only works if the condensed weights are sensible.