Natural Language Generation

What is it? Natural language generation is concerned with constructing computational systems that automatically generate texts of all kinds based on some non-linguistic input (such as a database) and some communicative goals. This requires both linguistic knowledge—ranging from morphology to text structure—and computational knowledge, for making the entire thing actually work. Natural language generation, or NLG, is therefore of both theoretical and practical interest.
Introductions

A short one-page introduction is offered by the Assocation for Computational Linguistics special interest group on generation (SIGGEN) here.

I have written a rather more extensive introduction to NLG and the state of the art which can be found here. This will be extended over time to take in more examples, as well as pointers to external sites and further information. The bibliographical references to further work and reading are extensive.

Systems

An almost complete list of natural language generation systems can be found here.

I have been developing and supporting the multilingual generation system and grammar development environment KPML since 1994. For more information on usage, coverage and availability, see the KPML website.

John Bateman, February 2004