How does a goal seeking structure progress with a resource constraint.

This model will demonstrate the effect of a resource constraint on the standard goal seeking structure.

We begin with a project with [

**Project Days Work**] = 60 and [**Workers**] = 8. The question is, how long will it take to complete this project with the [**Workers**] available?
Here we use [

**Days Work Completed**], initially 0, to compare with [**Project Days Work**] to determine [**Work Remaining**].
And [

**Work Remaining**] limited by [**Workers**] available determines the [**Work**], where [**Work**] =**IfThenElse([Work Remaining] > [Workers],[Workers], [Work Remaining])**
Initially we run the model with [

**Simulation Length**] = 10 days with a [**Time Step**] = 1 day. This may or may not be appropriate.
This seems to make sense except for the 8th day. If you look at the

**Tabular Display**it shows that on the last day [**Work Remaining**] = 4 which should only take half a day to complete. It appears we employed half the [**Workers**] for a full day and the rest were just hanging around watching. The source of the problem is that the [**Time Step**] = 1 is too large. We have a transition in the model that only takes half a day. Lets change to [**Time Step**] = 0.5 and Run Simulation again.
Was this what was expected? This should have made the graph reach 60 at time 7.5 days. If you look at the

**Tabular Display**it shows that we never actually finish this project. Sounds like most projects doesn't it? So there must be a problem in our logic somewhere.
The problems is in the formula for [

**Work**] = IfThenElse([**Work Remaining**] > [**Workers**], [**Workers**], [**Work Remaining**]). If the [**Work Remaining**] isn't > [**Workers**] then the model uses [**Work Remaining**] though because [**Step Size**] = 0.5 it only takes half of that, and half of the remaining next time, etc., etc. And we never get done. The formula should be [**Work**] = IfThenElse([**Work Remaining**] > 0, [**Workers**], STOP()).
Apparently this still isn't it since the model says we quit work before finishing. Didn't we have this problem trying to walk to Grandma's House? Yes, the model tests before it updates so we need to change ">" to ">=" in the definition for [

**Work**].
This seems to be just right. The [

**Step Size**] works with the logic showing one more time that development is not about trial and error but about trial and learning.
Modify the settings using the sliders and then

**Run Simulation**for each setting to get a better feel for the model.