File Information
File: 05-lr/acl_arc_1_sum/cleansed_text/xml_by_section/metho/88/a88-1025_metho.xml
Size: 26,728 bytes
Last Modified: 2025-10-06 14:12:05
<?xml version="1.0" standalone="yes"?> <Paper uid="A88-1025"> <Title>AUTOMATICALLY GENERATING NATURAL LANGUAGE REPORTS IN AN OFFICE ENVIRONMENT</Title> <Section position="4" start_page="0" end_page="178" type="metho"> <SectionTitle> 2. OVERVIEW OF THE SYSTEM </SectionTitle> <Paragraph position="0"> The system consists of three main modules as shown in figure 1. They are * an augmented production system for domain knowledge representation, * a text planner module (strategic component), * a text generation module (tactical component). The system of processes is modeled in terms of a production system with an&quot; explicit control struc- null ture for rule sequencing; this representation is due to \[Zisman 78\]. The execution of these rules builds a history network of events and processes. This network is modeled loosely on the notion of intervals proposed in \[Allen 83,Allen 84\].</Paragraph> <Paragraph position="1"> The creation of a report in natural language entails that the actual description be easy to understand. The report must omit inessential information, be cogent, and give the user a sense of temporal structure. Towards this end, planning at the representational level is required of the system. Processes can be looked at as being composed of sub-processes; clearly the description of the history must be able to account for this compositional structure.</Paragraph> <Paragraph position="2"> The text generator used in this project is MUMBLE \[McDonald 83\], \[McDonald 85\], which is a collection of morphology and grammar modules driven by user created objects cMled realization specifications containing information about the high-level specifics of the text.</Paragraph> </Section> <Section position="5" start_page="178" end_page="179" type="metho"> <SectionTitle> 3. REPRESENTATION OF DOMAIN KNOWLEDGE </SectionTitle> <Paragraph position="0"> The domain described above has been modeled using a production system whose rules are sequenced by imposing a Petri net structure on them. The decision to employ a production system has been influenced by the event-driven nature of the processes in the domain allowing declarative encoding of relevant knowledge.</Paragraph> <Paragraph position="1"> In the domain under consideration, there are several concurrent, independent processes. All activities in the domain can be viewed as constituting a single process -- the overall process of journal editing. The overall process comprises a collection of time-ordered atomic actions and/or subprocesses. In addition to several atomic actions, the journal editing process contaJns three subprocesses: referee review processes -one for each referee designated by the editor. In turn, each referee review process contains a number of atomic actions. Communication and coordination is required among these processes. Additionally, communication is also necessary among the atomic actions constituting these processes for achieving proper temporal ordering.</Paragraph> <Paragraph position="2"> In our implementation, the system of actions and processes is represented as a set of production rules.</Paragraph> <Paragraph position="3"> Since in a pure production system, it is difficult to achieve substantial interrule communication, a more acceptable control structure can be devised where the current state of the system in conjunction with the history of prior rule execution determines what needs to be done next. Such a control structure, first proposed in the context of an augmented Petri net model in \[Zisman 78\], has been adopted in our system. In our implementation, a state in the Petri net represents a state of the journal secretary (since our representation is from the viewpoint of the secretary). A transition between two states denotes an interaction between an external agent (such as the author, the editor or one of the referees) and the secretary. Each interaction is represented by a production rule which resides on a transition in the augmented Petri net.</Paragraph> <Paragraph position="4"> The Petri net structure of the rules is implemented by maintaining a list of active rules as suggested in \[Zisman 78\]. States in the Petri net structure are not explicitly represented in the implementation. The set of active rules (in other words, the set of enabled transitions) at a given point in time determines the current state of the system. When a transition is enabled, its firing is determined by the rule residing at the transition. All rules at all enabled transitions constitute the active rule set. In summary, the production system models individual actions, whereas the execution of the Petri net models the dynamic relationships among the various processes.</Paragraph> <Paragraph position="5"> In the augmented Petri net representation of our domain, the system (representing the editor's secretary) Several interactions can take place between the secretary and the various external agents. These are illustrated in figures 2 and 3 which show the augmented Petri net representation of our domain from the point of view of the secretary. There are two networks --</Paragraph> </Section> <Section position="6" start_page="179" end_page="179" type="metho"> <SectionTitle> I END I </SectionTitle> <Paragraph position="0"> no response in two weeks .m> send letter to ~ send reminder referee requesting /I services~ f wait for ~A alternate f w s!t for ~ referee to J- name recoived~ oollor ./ referee returns card, can't review M> request editor for alternate roferee name referee returns c4ud, c4tn review mi weir one month for report no report in one month view process one corresponding to the overall journal editing process and the other corresponding to a generic referee review process. Some of the rules in the production system are shown in figure 4.</Paragraph> </Section> <Section position="7" start_page="179" end_page="180" type="metho"> <SectionTitle> 4. THE NETWORK OF INTERVALS: HIS- TORICAL KNOWLEDGE </SectionTitle> <Paragraph position="0"> The production system described in the previous section models the domain knowledge. In order to generate a report about a particular paper, the production system must build an historical record of event instances as they take place over time. The representation must adequately capture temporal relationships among events, and also minimize the amount of computation necessary in order to achieve reasonable levels of efficiency.</Paragraph> <Paragraph position="1"> Most generally accepted approaches to modeling time such as the state space approach \[Fikes 71\] and situation calculus \[McCarthy 69\] are inadequate for the representation of concurrency, and are based on the notion of time points with accompanying semantic difficulties. \[Allen 83,Allen 84\] propose a model of time based on intervals. The model allows for representing the relationships between temporal intervals in a hierarchical manner using a constraint propagation technique. It also facilitates structuring knowledge in a way convenient for typical reasoning tasks, and also is intuitively more appealing due to the observation that notwithstanding the instantaneous appearance of * Rule-l: If a paper is received, * acknowledge the author of its receipt, and * request the editor to designate names of referees.</Paragraph> <Paragraph position="2"> * Rule-5: If the author withdraws the paper, instantiate termination procedure.</Paragraph> <Paragraph position="3"> * Rule-6: If the editor does not respond within two weeks, send him a reminder letter.</Paragraph> <Paragraph position="4"> many real-world events, they can be decomposed recursively for closer examination, if desired.</Paragraph> <Paragraph position="5"> Intervals in our system axe of two types -- simple intervals (designated henceforth as intervals) and reference intervals. Intuitively, an interval corresponds to the time between two successive interactions between agents in the system. In contrast, a reference interval corresponds to the time during which a whole series of interactions take place (i.e the temporal duration of a process or sub-process). Reference intervals, based on the suggestion in \[Allen 83\], allow us to conveniently group together clusters of simple intervals. Each interval is identified further by a description of some of the events which occurred during the two interactions whereas each reference interval is identified by the intervals which comprise it.</Paragraph> <Paragraph position="6"> An interval (or reference interval) is said to be instantiated if it becomes part of the history network. In particular, every instantiated interval has slots which contain its starting event, its ending event and a link to its predecessor interval in the history network. In addition to the starting and ending events, an interval may also contain side events that neither start nor end the interval but which occur in the domain process as a matter of course between the starting and ending events and do not have any further consequences.</Paragraph> <Paragraph position="7"> An interval is, designated open flit has been started by some event but which is yet to be completed by another event. A completed interval is called a closed interval. Since the representation is from the journal secretary's point of view, it can be seen that interactions are almost always initiated by agents other than the secretary but are terminated by some action taken by the secretary. Thus, in our representation, an instantiated open interval has as its starting event, an action performed by the secretary, whereas input from the external agents determines the ending event of some hitherto open interval.</Paragraph> <Paragraph position="8"> In effect, the relationships among intervals are maintained in the network where nodes represent individual intervals, and each art's label indicates the possible relationships between the two intervals represented by its end nodes. Since the network built by our production system is historic in nature, there is no temporal uncertainty, and therefore, each arc has only one label which indicates strict temporal precedence among the intervals.</Paragraph> <Paragraph position="9"> Although our system is basically input-driven at the user-system interface, there are many situations where the script of the domain process demands some temporal deadlines or monitors. For instance, in the event that the editor fails to respond (by way of input) to the request for names of reviewers, the system has to generate, perforce, another request as a reminder. To enable the system to faithfully retrieve such timeout activity from the network, we employ demons to explicitly monitor open intervals pending response. On timeout, the system simply creates another open interval with the same starting event as the previous one timed out by its associated demon.</Paragraph> <Paragraph position="10"> It is often the case that processes (sub-processes) are generic in nature; i.e. they can be repeatedly instantiated for different agents. For example, our domain calls for a certain sequence of interactions between the secretary and a referee. This sequence defines a generic process and our system needs to keep track of three such processes, one for each referee assigned to review a paper. The second type of interval in our system, the reference interval which corresponds to processes and sub-processes, help the text planner combine multiple instances of events into succinct specifications without having to repeat descriptions for each individual instance. It is also desirable in an application like ours to annotate the text describing a process with summaries or paraphrases of key sub-processes that occur naturally in the domain. Since it is clear that an open reference interval captures our intuitions about an on-going process, the planner can generate appropriate temporal cues from the interval representation to determine text parameters like tense and aspect for a papraphrase.</Paragraph> <Paragraph position="11"> An instance of the network configuration built up by the production system is shown in figure 5. However, not all details are shown in the figure.</Paragraph> </Section> <Section position="8" start_page="180" end_page="182" type="metho"> <SectionTitle> 5. TEXT PLANNING </SectionTitle> <Paragraph position="0"> Our computational goal, as stated earlier, was to describe or report on a set of processes in a compact manner, without disturbing the temporal nature of the process description. The text planning module thus needs to ensure that the text plan is ordered in time and that multiple event instances in processes be encapsulated, if possible, into concise descriptions.</Paragraph> <Paragraph position="1"> The former requirement entails that the events we set out to describe be ordered in time. From the description of the system network in the previous section, we notice that most of the sequencing is avoided by simply working one's way backward along the predecessor links in an interval data structure. However, the conciseness requirement forces the planner, at some points, to combine information which is common to more than one interaction sequence (sub-process) without ruining the nature of the then current plan.</Paragraph> <Paragraph position="2"> Our representation of reference intervals associated with ordinary intervals gives the extra information necessary to guide the planner in such cases.</Paragraph> <Paragraph position="3"> Briefly, the planner goes through three phases: it determines the content of the overall plan by way of a controlled search over the network of intervals and then produces a sequence of specifications for the actual text generator in the order in which they are to be realized into text along with information regarding discourse focus. Since our intention is to provide as informed a description (report) of the system's activity as possible, we have chosen to restrict the content of a report to the interactions occurring from the time the previous request was issued to the time of the current request. In this respect, the interval data structure provides us with some useful information pertaining to what happened just before the previous report was requested and what is ezpected to occur just after the current one. This information is contained in the open intervals at the time of the previous request, and at the present moment respectively. The current version of the system does not utilize the expectation information contained in the intervals - the report could be extended appropriately to reflect it in future. In fact, the same information could be used to detect and report the occurrence of unexpected events occurring in the system.</Paragraph> <Paragraph position="4"> The first phase, then, combines a search over the required part of the interval network starting from the intervals that are currently open with an ordering over the events which occurred in the intervals in the search space. Since reports can be generated at any pont in time during the life of a paper, and one can ask for repeated reports at later times, only events that have not been reported in an earlier report need to be included in it. However, to ensure that the current report establishes a relationship with the immediately preceding report, one or more events that have been reported earlier may be included. This will be clear from the example presented later. The ordering ra~aks events tagged with their associated intervals (called &quot;situations&quot;) temporally, while simultaneously ensuring that similar events corresponding to different instances of the same generic process axe clubbed together. It should be noted that during this phase when similar events with one or more different participants are combined together for the purposes of generation, the system's decision need not be totally based on temporal sequentiality. Combinations may be performed for similar events although they occurred widely separated on a linear time scale. For example, suppose a referee sends his review quite early (say, at a time tl), whereas a second referee does so with considerable amount of delay (at a time t2), and several other things happen during the interval (tl,t2). While reporting, the system will combine the two reviewing events into a single sentence such as The two referees A and B sent their ret6ews by date tl, and report the events that took place in the interval (tl, t2) either before this sentence or after it depending on other considerations.</Paragraph> <Paragraph position="5"> The second phase processes this stream of ranked situations to create the appropriate specifications for the text generator. This includes information about the sentence content (derived directly from the event in the situation) along with various features of the sentence like tense and indications to conjoin noun phrases etc. For the present, our tense assignment is rather naive and only relies on the network to provide temporal indicators based on the relationship of the time at which an event occurred in the context of the overall time interval covered by the plan.</Paragraph> <Paragraph position="6"> Thus we only assign present, present perfect, past and past perfect tenses to sentences. A more sophisticated tense assignment, perhaps along the lines of \[Matthiesen 84\], would be necessary for future extensions of this project.</Paragraph> <Paragraph position="7"> Thus, during the first two phases, temporal relationships and event similarities are used to order the events into an appropriate sequence for presentation. However, in order to determine how exactly each sentence is going to be constructed, during the third phase, the planner annotates the text specifications with information regarding discourse focus. Generating the actual text involves several decisions such as choice of sentence structure, and sentential subject, etc. Assuming, each sentence is of the svo 1 form, focus considerations can be used to choose between active and passive voices, and to decide which case slot's (e.g., directobject, indirect-object, source, destination, etc.) filler to be used to fill the position of the sententiai subject. Choice of subjects for generated sentences can be done considering the movement of focus of discourse from sentence to sentence as in the TEXT system \[McKeown 85\] following the analysis of Sidner \[Sidner 83\]. Focus information also facilitates pronominalization decisions. There are two types of loci: global and immediate. Global focus is constant, but the immediate focus may vary from sentence to sentence. It is updated using techniques similar to those used by McKeown. To track immediate focus, we keep track of three variables as done by McKeown: CF -current focus, PFL -- potential focus list, and FSpast immediate focus or focus stack. CF is that focus of the current sentence whose initial value is the global focus. PFL consists of the items referred to in the current sentence. FS is updated each time the focus changes. When the text changes to a member of the PFL, the old focus is pushed onto the stack. When conversation returns to an item previously discussed, the stack is popped to yield that item. The focus rules used are as follows (in order): shift focus to a member of previous PFL, i.e. CF(new sentence) E PFL(last sentence), maintain the same focus, i.e., CF(new sentence) --- CF(last sentence), and return to a previous focus, i.e., CF(new sentence) E FS.</Paragraph> <Paragraph position="8"> In summary, the text planner traverses, orders and translates the intervals desired to be reported into a stream of specifications which can be realized directly by the text generator.</Paragraph> </Section> <Section position="9" start_page="182" end_page="183" type="metho"> <SectionTitle> 6. THE TACTICAL COMPONENT </SectionTitle> <Paragraph position="0"> The tactical component used by the system to generate actual text is MUMBLE \[McDonald 83,McDonald 85\].</Paragraph> <Paragraph position="1"> The decision to employ MUMBLE was primarily influenced by its success in generating a large variety of grammatical constructs in several text generation applications as reported in \[Kaxlin 85\],\[McDonald 83\],\[McDonald 85\],\[Rubinoff 86\], the flexibility in the design of its input as well a~ its ready availability. Its design is based on the assumption that division between planning the content of speech and its verbalization is unambiguously defined. This partitioning of the generative decisions into levels marks one aspect of difference between MUMBLE and Appelt's generation system \[Appelt 83\] which emphasizes the homogeneity of various decisional procedures. 2 The input to MUMBLE consists of realization specifications (r-specs) representing the system's communicative goal, and produced by the planner (or the strategic component). Given the input r-spec, MUMBLE assigns (or, attaches) it to an appropriate position in an incipient surface structure tree. A depth-first traversal of the tree accompanied by recursive phrasal realization of unprocessed embedded elements results in the production of well-defined English text.</Paragraph> <Paragraph position="2"> It must be stressed at this point that the tactical component plays a strong supporting role to the strategic component in the pursuit of coherence in the generated text. One method for enhancing coherence is by appropriate lexical substitution for referring expressions allowing previously generated sentences to exert influence on the realization of the current sentence. The system keeps track of the objects which have been referred to so far and how this reference has 2It is relevant to note at this point that Hovy, in his proposed approach to generation \[Hovy 85\], assumes a well-defined boundary between planning and actual generation, but allows the generational component to seek advice from the planner at limited decision points.</Paragraph> <Paragraph position="3"> been made. This along with focus information enables the system to refer to objects by incomplete descriptions and to introduce pronominalization. This avoids unnecessary repetition leading to succinctness in the text. More importantly, it enables the hearer to distinguish new information from old so that comprehension is not hampered. Otherwise, it may lead to misunderstanding on the part of the hearer; examples of this phenomenon can be seen in \[Granville 84\].</Paragraph> <Paragraph position="4"> Incomplete description of referring noun phrases in our system include usage of phrases such as &quot;the author&quot; or &quot;the paper&quot; in subsequent references instead of the complete phrases &quot;the author D.D. McDonald&quot; or &quot;the paper entitled 'Generation Using MUM-BLE'&quot; which are used for introduction. Additionally, when a person introduced earlier by name is referred to subsequently at a point where pronominalization is deemed inappropriate, the person is referred to by his/her name. Similarly a group of people may be introduced by a phrase such as &quot;the three referees, viz., B.L. Webber, A.K. Joshi and T. Finin&quot;. Subsequently, the first time one of these persons is referred to alone, we refer to him/her by name. If the same per-son is referred to again, only then pronominalization is resorted to provided it does not lead to ambiguity.</Paragraph> <Paragraph position="5"> Incomplete description also enables us to use phrases such as &quot;on the same day&quot;, &quot;yesterday&quot;, and &quot;today&quot; instead of always producing the complete phrase such as &quot;on January 18, 1986&quot; at all times. Also note that, the first time the system specifies a date, it specifies the year. However, in subsequent specifications, the year is not mentioned unless it is different from that of the immediately preceding date mentioned.</Paragraph> <Paragraph position="6"> Adapting MUMBLE to our system required substantial additional extensions for handling of cardinal numbers, proper names, various tenses, etc. A number of new structures had to be added to support the desired features in the final text. Some of these are simple, others complex. Some are general while others are domain specific. At this point, we feel that it is pertinent to corroborate the observations in \[Karlin 85\] that it is difficult to create new structures that capture language generalizations due to the total absence of constraints on their nature.</Paragraph> <Paragraph position="7"> Finally, we conclude this section by presenting examples of text produced by the system (assuming that the secretary is producing the report). The whole system has been designed such that we can perform simulation of events such as arrival of the paper, arrival of the reviews by the secretary. At any point during this simulation, the system may be asked to generate a report. Below, we reproduce two such reports -- the first one was produced at an arbitray point during the life of the paper. The second one was produced for the same paper after the paper was processed completely.</Paragraph> <Paragraph position="8"> I received the paper entitled &quot;Generation Using MUMBLE&quot; from the author D.M.</Paragraph> <Paragraph position="9"> McDonald on January 1, 1986. He was informed of the receipt of the paper on the same day. I requested the names of three referees for the paper from the editor A.K. Joshi on the same day. He sent the names, viz., T. Finin, N. Badler and B.</Paragraph> <Paragraph position="10"> Webber a week later. I have sent a post.</Paragraph> <Paragraph position="11"> card inquiring availability to review the paper to each of them today.</Paragraph> <Paragraph position="12"> Assuming we continue the simulation performed to the end and ask the system to produce a report again, the system generates the following text.</Paragraph> <Paragraph position="13"> I had sent a postcard inquiring availability to review the paper entitled &quot;Generation Using MUMBLE&quot; to each of the re\]crees, T. Finin, N. Badler, and B. Webber on January 15, 1986. Each sent a letter expressing ability to review the paper to me by January 30. I sent a copy of the paper to each of them. Each sent a review of the paper to me by February 15. I requested the editor to make a decision regarding publication of the paper on the same day. He sent a positive decision regarding publication of the paper to me yesterday. I informed the author of the decision yesterday.</Paragraph> </Section> class="xml-element"></Paper>