I just ran Life-Cycle Model 16 and did not get that error. [My guess would be that you need to ‘clear all’ before running it, and error was because you already had a FnsToEvaluate in the workspace.]
When you run codes VFI Toolkit figures out which inputs are parameters, and tries to find them in the parameter structure (called ‘Params’ in all my codes). So, e.g., if the FnsToEvaluate.Income has inputs (h,aprime,a,z1,z2,phi,theta), then the toolkit looks at n_d, n_a, and n_z to figure out how many of these inputs are the state space (imagine n_d=21, n_a=101, and n_z=[5,5], then the first input should be d, the second will be aprime, the third will be a, the fourth and fifth should be the two z’s) and then the inputs after these are assumed to be parameters (so here the sixth and seventh should be parameters, that is phi and theta).
The error “z FAILED TO FIND PARAMETER” is telling you that VFI Toolkit read the function inputs, and one of the inputs is called “z”, and that it looked in the parameter structure but didn’t find this parameter.
The cause of the error is typically one of two things: (i) you forgot to create that parameter in the structure, (ii) VFI Toolkit has identified z as a parameter when it is part of the state space, the reason will either be that you have the first few inputs to one of the FnsToEvaluate wrong (or, while unlikely, it could be that you have one of n_d, n_a, n_z incorrect).
When I see this error, I first look at Params to make sure the parameter is there, and then I look at the ordering of inputs to the FnsToEvaluate (or the ReturnFn, etc., depends what you were doing when the error occured).
[Note: in your case, because z is the name of the exogenous shock, the cause of the error is going to be (ii), that the inputs to the FnsToEvaluate do not match the size of the state space.]