Over the past several decades, ecologists have come to understand that population dynamics are strongly affected by adaptive behavior, especially how individuals make tradeoffs between eating and avoiding being eaten. Unfortunately, this understanding means that the classical theory of population dynamics, based on differential equations at the population level, is not really useful. Instead, the most appealing approach is now "individual-based" models, simulation models that represent each individual and how it behaves. Unfortunately again, it turns out that the classical theory of behavioral ecology is also not useful: this theory uses optimization to predict how an individual makes tradeoff decisions in a world unaffected by its own behavior. But in an individual-based population model, the world is strongly affected by the behavior of all the individuals in the population. How do we model a population of individuals that all make tradeoff decisions, when the options and payoffs available to each individual depends on the behavior of all the other individuals? We have explored one solution, which is to model individual decisions as approximations, based explicitly on simple predictions, that produce good but not optimal behavior and are updated routinely as the world changes. I will explain this approach, compare it to traditional optimization, and illustrate the kinds of complex and realistic dynamics that can emerge from population models using it.