This paper presents a situated agent for design optimization. A situated agent captures, learns from and re-uses the interactions which it has with its external environment, forming the basis for experience based knowledge building in an agent. An agent is developed for design modeling, reformulation and algorithm selection – a class of tasks in design optimization traditionally performed by humans based on their experience, and hard to automate.