%\documentclass[11pt]{report}
%\begin{document}

\section{AVENUE Translation Engine}

Rule-based translation is done in AVENUE through a custom-built translation
engine using an integrated transfer approach with analysis, transfer, and
generation stages.  In the AVENUE engine, as in the early METAL
system (Hutchins 1992), each analysis rule is also coupled with a
corresponding transfer action.  While this leads
to some duplication of effort during analysis, since a particular
analysis could possibly be transferred in several different ways, it
it reduces search at transfer time and permits transfer-rule learnability,
and credit (or blame) assignment for correct (or incorrect) translations
becomes more deterministic.

\begin{figure}[h]
\caption{\label{rule1}  Sample Transfer Rules}
\small
\parbox[t]{5.7cm}{
; Rule to handle non-auxiliary verb\\
; question transfer from Chinese to\\
; English\\
\{S,3\}\\
S::S : [NP VP MA] -$>$ [V NP VP "?"]\\
(\\
; Constituent alignments\\
  (X1::Y2)\\
  (X2::Y3)\\
; Analysis unification equations\\
  ((x0 subj) == x1)\\
  ((x0 subj case) = nom)\\
  (x0 = x2)\\
  ((x0 act) = quest)\\
; Transfer Equations\\
  (y0 = x0)\\
  ((y0 act) =c quest)\\
; Generation equations\\
  ((y1 form) = do)\\
  ((y1 agr) = (y2 agr))\\
  (y2 == (y0 subj))\\
  (y3 = y0)     \\
)
}
\hfill
\parbox[t]{5.5cm}{
; Sample lexical transfer rules
 AUX::AUX $|$: [zuo4] -$>$ [do]\\
 (\\
 (x1::y1)\\
 \\
 ((y0 form) = do)\\
 ((y0 agr) = (*or* 1sg 2sg pl))\\
 ((y0 tense) = present)\\
 )\\
 \\
 AUX::AUX $|$: [zuo4] -$>$ [does]\\
 (\\
 (x1::y1)\\
 ((y0 form) = do)\\
 ((y0 agr) = 3sg)\\
 ((y0 tense) = present)\\
 )\\
}
\end{figure}

The transfer rule formalism is able to handle a variety of common
translation divergences, including head-switching, thematic changes
such as an object in one language being expressed as a subject in the
target language, structural changes such as having an NP become a PP
in another language, and lexical gaps where one target word replaces
an entire source phrase (Trujillo, 1999).  Though the transfer engine does
not currently have a component for deep semantic analysis or discourse
processing, leaving some ambiguities unresolvable, it is already
sufficient for many types of translation.

Translation starts with a bottom-up unification-based chart parser
that produces an ambiguity-packed representation of the source language
input.  Rules are currently applied in the order the appear when read
in, but work is underway to order the rule application by the
complexity of the rule and the specificity of its constraint
equations.  Analysis builds both a syntactic constituent structure and
an associated feature structure.  For example, in the structural
transfer rule in Figure \ref{rule1}, which handles the transfer of
some types of interrogative sentences from Mandarin to English, the feature
structure for the S constituent (represented by x0) is built by
setting the value of 'subj' to the NP's feature structure (referenced
as x1), setting the subject's case to nominative, its speech act (act)
to quest for question, and finishing by copying over the feature
structure of the VP (x2).

Transfer is done from the top down, starting at the top node in the
chart created during parsing.  Transfer rules explicitly state the
alignment of source and target constituents through equations such as
(X1::Y2) and (X2::Y3) in the example rule, which says that the first
source constituent maps to the second target constituent, and the
second source constituent maps to the third target constituent.  Not
all source constituents need map to the target (such as the Chinese
question particle MA at X3 in this rule which is deleted during
transfer).  Target constituents that are not aligned to a source
constituent will be created based upon the feature structure assigned
to them in the transfer and generation equations.  During transfer,
the engine uses these alignments to reorder constituents to fit the
target language grammar.  Features may also be passed from source to
target, such as the (y0 = x0) equation in the example which copies the
entire source sentence feature structure to the target. More pinpoint
feather transfers (such as transferring only number or tense) are also
supported.

During generation, the target side feature structures are built and
target constituent agreement constraints are checked.  In the example
rule, the first constituent V (Y1) has its form set to `do', which is
used later to choose the correct verb to insert.  To enforce that the
form of 'do' must agree with the subject NP at Y2, the ((y1 agr) = (y2
agr)) is used. 

Once a selected transfer rule is applied, transfer and generation
continues by recursively running applicable transfer rules on the
sub-constituents of the rule until the lexical level is reached.
Lexical transfer rules then apply to select the appropriate
translation.  In the example, the auxiliary 'do' is inserted at the
start of the sentence.  The appropriate form of 'do' is selected based
upon the agreement constraint between the subject NP and initial V in
the sentence rule and the agreement features in the individual lexical
rules.

%\end{document}

