We present a distributed, adaptive resource allocation approach for multiagent systems called ARAMS. ARAMS allows a collection of agents to adaptively allocate CPU resource among themselves to handle dynamic events encountered in a noisy and uncertain environment in real-time manner. Each event encountered may incur a CPU shortage crisis in an agent. ARAMS is aimed to reduce the occurrence and amount of shortage crises of each agent as well as the entire system as a whole. The underlying problem-solving strategy of ARAMS is the integration of a monitor-reactive cycle and a goal-directed coalition formation model. The monitor-reactive cycle requires the agent to monitor the crisis and attempt to fix it on its own. The goal-directed coalition formation allows the agent to ask for help from other agents rationally once it has the resources to do so. Agents also learn how to form better coalitions faster from their past experience. We conducted a series of experiments and the experimental results show that our approach to CPU resource allocation is able to learn and adapt coherently, reacting to and planning for CPU shortages.