In complex dynamic worlds, reactive behaviour alone is inadequate for dealing with the diverse and unpredictable situations which may occur. To overcome this inadequacy, an agent in a dynamic world must exhibit goal directed behaviour, which is acquired through the execution of plans. However, completely specified plans are unsuitable in dynamic worlds for several reasons, and in particular the view that plans may be considered as executable programs is not suitable. We argue that an agent working in such situations must explicitly incorporate resource based abstractions in its plan representation. But, while executing such plans, a plan executor must, at any point during execution, be capable of recognising the current state of the word in order to execute an action in the plan. Since this task is difficult while an abstract action is executed, we suggest that plans be made progressively abstract into the future. We demonstrate that when an agent employsuch a strategy, it faces the problem of how to generate its own abstractions in order to keep the plan simple and easy to maintain in a dynamic world. We present a methodology as to how an agent can generate simple abstractions in a small fire world, and we evaluate the performance of the agent in its ability to achieve its goals when the world changes unpredictably.