Apparatus and method for charging a battery, wherein a target voltage is applied to a battery. During charging, the applied voltage is periodically increased and decreased a predetermined amount to modify the applied voltage by a small step in either direction. The charging input is measured as the current flow to the battery at each of the applied levels, and the target charging voltage is adjusted in the direction of the improved charge acceptance as indicated by the differentials of the input current flow at the increased and decreased levels. By repeating the process, the charging voltage is continually moved in the direction of an optimized charge acceptance level. Alternatively, a target current is applied and increased and decreased by a small step and adjusted in the direction of the improved charge acceptance, which corresponds to the differentials of the resulting voltages at the increased and decreased levels.