Free will is a perception, an event in the conscious mind. We correctly experience ourselves as being an agent who decides, or chooses. As such, we are responsible for our choices. It is the experience of agency that we are referring to when we say we have free will.
Perceptually, we live in the past. A conscious perception is essentially a model, or representation, of an event in reality that is constructed by the mind/brain before it finds its way into consciousness. Basically, it takes time for a perception to get its act together, to get ready to enter consciousness. Imagine sitting in a dark room, when a small light is suddenly turned on in front of you. It takes time for the light to reach your eyes, it takes time for your retina to become excited about its light-hearted visitor, it takes time for the resulting neuronal signal to reach the back of your brain and to radiate out from there. It takes time for your mind to assign meaning to the information it has taken in. Because all of these processes precede conscious experience, our conscious perception is a perception of what used to be, the past.
We have both a conscious and unconscious mind.
Thus, there are different kinds of mental events: those we are aware of, and those we are not. Unconscious mental events work behind the scenes as they participate in the model construction process that precedes conscious awareness. If our perceptions are invariably perceptions of the past, then our perception of agency will be of agency in the past. In other words, we make our choices before we are consciously aware of making our choices; perception is downstream of the event. Does that detract from the voluntariness of our choices? Not at all. It simply means our unconscious aspect is faster — and sometimes may make choices we do not consciously understand. Have you ever asked yourself, “What was I thinking?” or “Why in the hell did I do that?” We might think of consciousness as being something like an echo; it’s what happens when the unconscious mind becomes aware of itself, when it detects it’s own behavior. Having the option of reviewing its scripts in consciousness prior to implementation gives us the chance to edit/improve them… to our evolutionary advantage.