The following data sets and macro variables contain the input data that are used in this example:
data cow_data;
do age = 0 to 11;
init_num_cows = 10;
if age < 2 then do;
acres_needed = 2/3;
annual_loss = 0.05;
bullock_yield = 0;
heifer_yield = 0;
milk_revenue = 0;
grain_req = 0;
sugar_beet_req = 0;
labour_req = 10;
other_costs = 50;
end;
else do;
acres_needed = 1;
annual_loss = 0.02;
bullock_yield = 1.1/2;
heifer_yield = 1.1/2;
milk_revenue = 370;
grain_req = 0.6;
sugar_beet_req = 0.7;
labour_req = 42;
other_costs = 100;
end;
output;
end;
run;
data grain_data;
input group $ acres yield;
datalines;
group1 20 1.1
group2 30 0.9
group3 20 0.8
group4 10 0.65
;
%let num_years = 5;
%let num_acres = 200;
%let bullock_revenue = 30;
%let heifer_revenue = 40;
%let dairy_cow_selling_age = 12;
%let dairy_cow_selling_revenue = 120;
%let max_num_cows = 130;
%let sugar_beet_yield = 1.5;
%let grain_cost = 90;
%let grain_revenue = 75;
%let grain_labour_req = 4;
%let grain_other_costs = 15;
%let sugar_beet_cost = 70;
%let sugar_beet_revenue = 58;
%let sugar_beet_labour_req = 14;
%let sugar_beet_other_costs = 10;
%let nominal_labour_cost = 4000;
%let nominal_labour_hours = 5500;
%let excess_labour_cost = 1.2;
%let capital_outlay_unit = 200;
%let num_loan_years = 10;
%let annual_interest_rate = 0.15;
%let max_decrease_ratio = 0.50;
%let max_increase_ratio = 0.75;