Once that reward value is learned, your brain expects the behavior to give you the same amount of reward the next time you do it, based on how rewarding it was in the past. The problem is that your brain expects the value to be the same as in the past (eating cake = eating cake) even if the context is different (eating cake when hungry = eating cake when full).