The human language faculty is a bidirectional system, i.e. it can be used by processes of approximately equal computational complexity to understand and to generate utterances of a language. We assume the general framework of optimality theory and treat the language faculty as a constraint-based system where the very same constraints are uses both in comprehension and in generation. In the simplest case comprehension and generation can be modelled by unidirectional optimization: finding an optimal interpretations for a given speech input in the case of comprehension; producing an optimal expression for a given message in case of generation. In the simplest case, the speaker and the listener roles are strictly separated. However, there are linguistic observations which indicate that the listener&#8217;s and the speaker&#8217;s perspectives are integrated to some extent. Bidirectional optimization is an explicit proposal for doing the integration.
In this article we propose a general architecture of the language faculty and discuss the precise extent to which speakers are listener-oriented and/or listeners are speaker-oriented. Interestingly, this extent does not seem to vary with regard to the different subsystems considered: the sensorimotor system, the system of grammar proper and the conceptual-intentional system (pragmatics). Though the experimental evidence is not very strong at the moment it seems in online processing the speaker takes the hearer into account but not <i>vice versa</i>. Besides the online (actual processing) view of bidirectionality we discuss bidirectional optimization as an offline phenomenon taking place during language acquisition, and giving raise to fossilization phenomena.