At Charles River, we use natural language understanding and natural language generation to strengthen the connection between humans and computers. We develop software that reads text documents and maps them to semantic representations for automated reasoning, and we incorporate natural language processing into a wide variety of applications, including intuitive interfaces for interacting with robots and unmanned vehicles, tools for analyzing propaganda, and automated methods to predict cyberattacks.