Peter Bohlin, Robin Cooper, Elisabet Engdahl and Staffan Larsson

Information States and Dialogue Move Engines

[Full Text]
[send contribution]
[debate procedure]
[copyright]


Overview of interactions

No Comment(s) Answer(s) Continued discussion
1 16.12.99 Johan Boye
27.1.00 Larsson et al.

2 1.2.00 Joris Hulstijn
3.2.00 Larsson et al.

2 22.2.00 Ingrid Zukerman
29.5.00 Larsson et al.

C1. Johan Boye (16.12.99):

One thing that bothers me about your paper is that you do not clearly state what kinds of dialogue applications your architecture is intented to manage (is it just info-seeking applications as in the example, or do you expect to handle a broader class?). The reader might easily get the impression that your approach is more general (or less general) than it really is.

Another matter I find obscure is the relation between your general architecture and the concrete system GoDiS. By the example in Section 6, one gets the impression that GoDiS has something to do with travel information, but that is not clearly stated anywhere. Or are you saying that GoDiS is an instance of the general framework where the update and selection rules are specified, but the domain is not fixed? Please clarify this issue.

You should also motivate the choice of data structures in your architecture. As it is presented now, you have fixed the "QUD" and "AGENDA" fields to be "stacks", the "PLAN" field to be a "list", and the "BEL" field to be a "set". Though this is not spelled out in your paper, it seems likely to me that this will have operational consequences for every dialogue application which is built on top of this architecture; e.g. the actions on the agenda will always be executed in the opposite order they were put on the agenda; the questions under discussion will be addressed in an order opposite to that they were put on the QUD stack. It is also not clear to me what you mean is the difference between a "list" and a "set"; is it that a list can contain repetitions while a set cannot, or is it that the order of the elements is of importance in a list but not in a set? Or is it both (or neither)?

Considering that you claim your architecture to be "general", it is somewhat surprising that you have already taken a lot of low-level design decisions, especially as they are not very well motivated in the text.

Another somewhat surprising property of your architecture is that there doesn't seem to be any explicit representation of the objects under discussion (a "flight" would be a typical object in your example). I first thought this was the role of the "QUD" field, but after looking at the example in Section 6, I understand that this is not so. In that example, it seems to be implicit that all questions, actions and beliefs concern the same object/flight; your formal language doesn't seem to be able to represent a situation where several flights are under discussion. But this would be a very common situation in your flight-booking scenario; consider the case where the system has suggested two flight alternatives and the user wants to discuss their relative merits.

Some detailed comments:
In two places in the article you refer to "our dialogue" (beginning of Section 5.1 and beginning of Section 5.2). I assume that this is the dialogue mentioned in one of the footnotes. As this example dialogue seems to have been quite influential when you designed your architecture, it would be useful for the reader to have a proper reference to where that dialogue can be found.

In Section 4.2, you say "The semantics (if it deserves the name)...". What do you mean by this? Either the semantics is appropriate for your needs or it isn't. If it isn't, then you should tell the reader what is wrong with the semantics, and how you intend to modify it for a future version.

In the selection algorithm in Section 4.1, one gets the impression that also selection rules can perform updates to internal data structures, although this is not mentioned when selection rules are introduced (in Section 2).

Best regards,
Johan Boye,
CTT and Telia Research


A1. Staffan Larsson et al. (27.1.00):

Johan Boye comments:

I have some questions and comments to the authors of the paper

"Information States and Dialogue Move Engines".

One thing that bothers me about your paper is that you do not clearly state what kinds of dialogue applications your architecture is intented to manage (is it just info-seeking applications as in the example, or do you expect to handle a broader class?). The reader might easily get the impression that your approach is more general (or less general) than it really is.

The authors reply:

When we talk of "general architecture" at the beginning of the paper we are referring to something that is now embodied in a toolkit called TRINDIKIT (http://www.ling.gu.se/research/projects/trindi/trindikit.html). This is intended to provide a general architecture in which it is possible to experiment with various kinds of information state and update rules. For this there is in principle no limit to the kind of dialogue systems that could be implemented using the toolkit. The GoDiS system (available from the TRINDIKIT webpage) is a small sample implementation which was created using the toolkit. It handles a very specific type of information seeking dialogue (flight booking) and at this stage is meant to illustrate ideas that we have about possible information state transitions and is not large enough yet to be something that is practically useful.

Johan Boye comments:

Another matter I find obscure is the relation between your general architecture and the concrete system GoDiS. By the example in Section 6, one gets the impression that GoDiS has something to do with travel information, but that is not clearly stated anywhere. Or are you saying that GoDiS is an instance of the general framework where the update and selection rules are specified, but the domain is not fixed? Please clarify this issue.

The authors reply:

There are various levels of specificity involved here. The toolkit TRINDIKIT specifies a general architecture and a format for update rules, selection rules, information states and modules that can be interfaced with the dialogue move engine (control, interpreter, generator, input and output modules). This allows the implementer to specify a number of modules to make a generic dialogue system that can be combined with different modules to make particular specific instances of dialogue systems. For example, the implementer may decide to use TRINDIKIT to specify, information state type, update rules, selection rules and other modules external to the dialogue move engine (control module, interpreter, generator, input and output modules). The collection of these modules that we have specified for GoDiS form such a generic dialogue system. In order to make a fully instantiated system you in addition need a lexicon, a database and domain knowledge. The idea of that you should be able to substitute different instances of these modules with the same update rules etc and thus obtain different instances of generic GoDiS. We should emphasize, however, that what we have implemented at the moment are very small and in some cases quite trivial intances of such modules to illustrate the design we intend.

Johan Boye comments:

You should also motivate the choice of data structures in your architecture. As it is presented now, you have fixed the "QUD" and "AGENDA" fields to be "stacks", the "PLAN" field to be a "list", and the "BEL" field to be a "set". Though this is not spelled out in your paper, it seems likely to me that this will have operational consequences for every dialogue application which is built on top of this architecture; e.g. the actions on the agenda will always be executed in the opposite order they were put on the agenda; the questions under discussion will be addressed in an order opposite to that they were put on the QUD stack. It is also not clear to me what you mean is the difference between a "list" and a "set"; is it that a list can contain repetitions while a set cannot, or is it that the order of the elements is of importance in a list but not in a set? Or is it both (or neither)?

The authors reply:

We answer the easy question first: A list differs from a set in that the list is ordered. A set cannot contain repetitions, whereas a list can. The datatypes are fully specified in the TRINDIKIT manual (http://www.ling.gu.se/research/projects/trindi/manual10/index.html). We believe this to be standard use of the terminology in computer science.

Concerning the choices of datastructures, we hope that it is clear from the answers we have given above that the general TRINDIKIT architecture does not require the specific choices of datastructures which we are using by way of illustration in GoDiS. Our general strategy has been to use as simple datastructures as possible and make them successively more complicated as the need arises. This is something that is possible given the kind of notational power and modularity provided by TRINDIKIT. A change of datastructures in successive versions of the system does not involve a wholesale reimplementation of the system. What we are presenting in this paper is not quite as simple as what we started with, but still it is absurdly simple in many respects and we have been surprised that it allows us to deal with some fairly sophisticated dialogue phenomena. There are, however, many basic phenomena that it will not deal with yet, e.g. anaphora.

Nevertheless we have some motivation for the specific choices we have made:

- - QUD is a stack. This is meant to reflect the fact that dialogues can be nested; a question q1 can be met by a counterquestion q2, and only (the story goes) when q2 has been answered can q1 be answered. Actually, this is a simplification of Ginzburg's theory where the QUD is a partially ordered set. In the current implementation we do not rely on the fact that the QUD is a stack rather than, say, a set, since there is never more than one question on the QUD. However, we anticipate that the stack structure will be useful when we introduce e.g. clarification subdialogues. We make rather more restricted use of the QUD than Ginzburg suggests. For us it represents questions that are currently being addressed rather than a collection of questions that could be relevant and taken up. It is thus something very local for us and the number of elements is small at most two or three. It does not seem to be the case that dialogues can be deeply nested in the sense that short answers can be given to questions which were introduced several turns ago. Such unresolved questions can, of course, be addressed later in the dialogue but they have to be explicitly taken up again, e.g. with locutions like "So, the answer to your first question is, 'no'" or "Regarding the issue of whether,..." or even "So, no, John didn't finish the report". We would want to take this as an indication that the question is no longer on QUD and has to be reintroduced. We do not currently have a treatment of such cases, but it is possible that in order to deal with this one would, in addition to our local QUD, need a collection of questions introduced in the dialogue that have not yet been resolved. This we assume would be a set rather than a stack since the questions need not be reintroduced in reverse order as required by a stack. The nesting structure associated with the QUD stack is, we think, very shallow.

- - AGENDA is a stack. For the agenda, order matters since recent issues are assumed to be more salient and important than older issues. For example, if on participant has an action on the agenda to ask a question but the other participant asks another question, the action to answer the latter question will be pushed on the agenda. Thus, the latter question will be asked first. The agenda, like QUD, is for us a very local affair representing the one or two things that are to be done next. This is in contrast to the PLAN which contains more long term goals the agent has for the dialogue.

- - PLAN is a list. The plan must be ordered, since some actions need to be performed before others. However, a stack is not sufficient since it does not allow checking membership of non-topmost elements. In GoDiS, answers which do not match a question on QUD are matched against questions in the plan, which requires the membership check not available for stacks. Actually, a partially ordered set might be more useful than a list for the plan, since order does not always matter. However, we have not yet implemented this datastructure or explored its usefulness. In the current version of GoDiS, we actually use what we call a "stackset", which is like a stack but with the additional possibility of membership checking and deletion of non-topmost elements. This is a simpler structure than a list (in terms of the number of available conditions and operations), and is thus to be preferred over lists.

- - BEL is a set. No order is imposed on the beliefs, but membership checking is needed. Sets are also very simple datastructures. And you want a set rather than a multiset (or bag) because there is no point in representing the same belief twice.

It must be stressed that the particular GoDIS information state described in the paper is not in any way implied by the general TRINDIKIT architecture. What the architecture does is to give methods for defining and processing information states; it is up to the system designer to do the rest.

Also, the choice of datatypes should itself be seen as a research issue where the appropriateness of different datastructures for modelling attitudes and discourse units is investigated and explored. This means that the current choice of datastructures for GoDiS may be altered in future versions of the system if there are good reason for it.

Johan Boye comments:

Considering that you claim your architecture to be "general", it is somewhat surprising that you have already taken a lot of low-level design decisions, especially as they are not very well motivated in the text.

The authors reply:

If you refer to the choice of datastructures for the information state, this has been answered above; the architecture leaves this choice open. We hope that our answers above have made this point clear. Obviously it needs to be made more clear in the paper.

Johan Boye comments:

Another somewhat surprising property of your architecture is that there doesn't seem to be any explicit representation of the objects under discussion (a "flight" would be a typical object in your example). I first thought this was the role of the "QUD" field, but after looking at the example in Section 6, I understand that this is not so. In that example, it seems to be implicit that all questions, actions and beliefs concern the same object/flight; your formal language doesn't seem to be able to represent a situation where several flights are under discussion. But this would be a very common situation in your flight-booking scenario; consider the case where the system has suggested two flight alternatives and the user wants to discuss their relative merits.

The authors reply:

It is correct that the current version of GoDiS can only handle one "object under discussion" (nice term!) at a time. Although this is sufficient for simple applications, it should be seen as a temporary simplification. Handling several objects is on the (long) list of things we would like GoDiS to be able to handle. Of course, if one were to introduce a proper semantic representation (e.g. DRT) in place of the simple expressions like "destination=Paris" we would be in a much better position to do this. But we wanted to emphasize that there are issues concerning conversational dynamics, e.g. how information flows from plan to agenda to QUD, that is independent of more traditional semantic issues such as the identification of individuals, anaphora etc. Of course, in the end you have to get everything working together, or at least as much as you need for a given application. But we want to take as modular approach to this as possible so that you can keep a handle on the various bits and pieces.

Johan Boye comments:

Some detailed comments:

In two places in the article you refer to "our dialogue" (beginning of Section 5.1 and beginning of Section 5.2). I assume that this is the dialogue mentioned in one of the footnotes. As this example dialogue seems to have been quite influential when you designed your architecture, it would be useful for the reader to have a proper reference to where that dialogue can be found.

The authors reply:

The dialogue is available at http://www.ling.gu.se/SLSA/dialog.html.

Johan Boye comments:

In Section 4.2, you say "The semantics (if it deserves the name)...". What do you mean by this? Either the semantics is appropriate for your needs or it isn't. If it isn't, then you should tell the reader what is wrong with the semantics, and how you intend to modify it for a future version.

The authors reply:

The comment was intended to disarm any criticism from semanticists that we're not doing "proper" semantics since we only deal with feature-value pairs. So far this kind of semantics has been sufficient for the simple needs of GoDiS, but it is clearly insufficient as a general semantics for natural language. We have not put a lot of effort on semantics (or syntax) in GoDiS; rather, the focus has been on information states, update rules, and dialogue moves. In the future, we hope to be able to plug in available parsers etc. to GoDiS. See the discussion concerning objects under discussion and DRT above.

Johan Boye comments:

In the selection algorithm in Section 4.1, one gets the impression that also selection rules can perform updates to internal data structures, although this is not mentioned when selection rules are introduced (in Section 2).

The authors reply:

The idea was that selection rules specify a move to be performed, but they are also allowed to update the information state if necessary. In later versions of the TRINDIKIT, all rules are update rules (i.e. they can only update the information state). In this new approach, selections rules are update rules which modify the data structure specifying the next move(s).


C2. Joris Hulstijn (1.2.00):

I have a comment for the discussion of Boylin et al, and especially on their reply to comments by Boye. It concerns the notion of QUD from Ginzburg's work and the way it has been applied in the Trindi architecture.

1. With regard to the definition of QUD as a stack:
There are two ways to think of QUD: (1) as a datastructure that can be used in a dialogue manager, (2) as a structure in a semantics of dialogue. Both are valid and useful points of view. Ideally (1) should mimic (2) as best as practically possible.

From the reply I take it that Bolin et al follow the datastructure view. Then it makes sense to make QUD a stack, because it can handle the initiative-response structure of typical exchanges like question-answer, or proposal-acceptance, etc. Such exchanges of the take the shape of a 'dialogue grammar'. However, in that case QUD partly overlaps in function with the Agenda data-structure.

If you treat it as a semantics that can handle some (technical) kind of relevance, Ginzburg's partial order makes more sense. In that case QUD should be closed under all kinds of aspects that influence relevance (questions related to current goal, questions related to topic, ...).

2. With regard to `objects under discussion':
An object under discussion is generally called a topic (or focus of attention or backward looking centre). Various people, most notably Jan van Kuppevelt (1995) have tried to combine question-based notions of topic with more general notions (e.g. Reichman 1985). Often one assumes for each topic a 'topic space' of possible attributes and possible sub-topics. These can be used in anaphora resolution for example.

If an object is introduced as a new topic, usually questions as to its attributes and questions about its sub-topics will become relevant too. So a semantic QUD ought to be 'closed under' such topic-related questions. To get rid of some redundancy, in simple task domains you can do away with the topic structure and only model the questions structure, or vice versa. For an information-seeking system, it makes sense to have questions at the heart of the dialogue manager.

Van Kuppevelt (1995) "Discourse Structure, Topicality and Questioning", L&P(31), 109-149

Reichman (1985), "Getting Computers to Talk like You and Me" MIT Press, Cambridge Mass.

Best Regards,
Joris Hulstijn,
University of Twente


C3. Staffan Larsson et al. (3.2.00):

We would like to thank Joris for some useful and interesting discussion.

Joris Hulstijn comments:

1. with regard to the definition of QUD as a stack There are two ways to think of QUD: (1) as a datastructure that can be used in a dialogue manager, (2) as a structure in a semantics of dialogue. Both are valid and useful points of view. Ideally (1) should mimic (2) as best as practically possible.

The authors reply:

You are right that there are two rather different notions of QUD at issue. However, we would not have drawn the distinction the way you are. We are indeed taking a simplified view of Ginzburg's idea so that it can be applied to simple implemented systems, so in that sense we are interested in defining QUD as a datastructure which will be used in dialogue management. However, we think it would be a mistake to separate semantics on the one hand from dialogue management on the other. A lot of what Ginzburg is talking about in his semantic approach is a theoretical approach to aspects of dialogue management and that is a large part of the interest in it. What we see as the main distinction between the QUD that we have used and Ginzburg's original notion is that ours is a local QUD. It represents the precise questions that are currently under discussion, i.e. that are so to speak up front and have been explicitly introduced into the dialogue. Ginzburg's original notion, as you say, was much more of a "global" QUD representing questions that arise from what has been said. We suspect that both notions of QUD will ultimately be necessary, though perhaps our plan does some of the work of a global QUD.

Joris Hulstijn comments:

From the reply I take it that Boylin et al follow the datastructure view. Then it makes sense to make QUD a stack, because it can handle the initiative-response structure of typical exchanges like question-answer, or proposal-acceptance, etc. Such exchanges of the take the shape of a 'dialogue grammar'. However, in that case QUD partly overlaps in function with the Agenda data-structure.

The authors reply:

Having opted for a local QUD the issue then arises as to what kind of data structure to use. Our original choice of a stack as opposed to a partial order was, well, simply because you have to work harder to implement a partial order and it's not something you would want to do if you can get away with a stack. But given what we have seen so far (and remember we don't have a large coverage dialogue system here) it seems that you are absolutely right -- a local QUD can be regarded as a stack. It is also the case that there is a tight coupling between the Agenda and the QUD. Popping agenda items often (particularly in the kind of information seeking dialogues we have been looking at) gives rise to new questions on the QUD. (e.g. if you raise a question, you may assume that that question is under discussion). New questions on the QUD give rise to new agenda items. (e.g. if your dialogue partner raises a question then that creates an obligation (agenda item) for you to respond.) We think that you need both Agenda and QUD in order to be able to handle grounding phenomena. e.g. the fact that you have raised a question (and popped the Agenda), does not necessarily mean that you are licensed to put the question on QUD (which represents your view of shared information). On a cautious view of grounding the question only gets pushed onto QUD once confirmation has been received from the other dialogue participant.

Joris Hulstijn comments:

If you treat it as a semantics that can handle some (technical) kind of relevance, Ginzburg's partial order makes more sense. In that case QUD should be closed under all kinds of aspects that influence relevance (questions related to current goal, questions related to topic, ...).

The authors reply:

Yes, it seems clear that a stack structure would be inappropriate for a global QUD.

Joris Hulstijn comments:

2. With regard to `objects under discussion'
An object under discussion is generally called a topic (or focus of attention or backward looking centre). Various people, most notably Jan van Kuppevelt (1995) have tried to combine question-based notions of topic with more general notions (e.g. Reichman 1985). Often one assumes for each topic a 'topic space' of possible attributes and possible sub-topics. These can be used in anaphora resolution for example.

The authors reply:

Right, nothing we have said in the paper has any bearing on this. We hope, of course, that what we have done is not inconsistent with adding a treatment along these lines. We will see.

Joris Hulstijn comments:

If an object is introduced as a new topic, usually questions as to its attributes and questions about its sub-topics will become relevant too. So a semantic QUD ought to be 'closed under' such topic-related questions. To get rid of some redundancy, in simple task domains you can do away with the topic structure and only model the questions structure, or vice versa. For an information-seeking system, it makes sense to have questions at the heart of the dialogue manager.

The authors reply:

Yes, and here would probably be the motivation for having a global QUD in addition to a local QUD. However, it seems that some of the work of this is done by our notion of plan and plan accommodation. That is, the agent has dialogue plans, largely a list of relevant questions that need to be raised, in what we have at the moment, and such plans get pulled into the agent's dialogue information state when certain issues are raised. See the discussion of the example "Flights to Paris" in the paper. We need to think carefully about the relationship between this and the more general notions you are raising.

C1. Ingrid Zukerman (22.2.00):

Having read the paper and the discussion, I have some further comments. As I indicated in my comments to Aretoulaki and Ludwig, I come from a slightly different background, so I hope my comments make sense.

In general, I have trouble with some of what I have read, in the sense that new approaches for dialogue are being presented, but then the examples being handled can be handled by existing/simpler techniques (see my comments to Aretoulaki and Ludwig). The need for a new approach should be motivated by showing that existing approaches cannot handle a particular phenomenon, but this is not done here. Clearly, existing approaches haven't solved the dialogue problem. However, in this case, it should be easy to come up with examples that are not being handled by existing approaches and should be handled by the new approach. For instance, a case in point is the idea of AGENDAS and PLANS to handle short-term and long-term dialogue goals respectively. This is a nice idea, but I believe that some of the problems handled by this approach are addressed by the PRS architecture. A summary of this architecture appears in PRS Summary. I am not an expert on this architecture, but I think the issue deserves to be looked at.

In your reply to the first comment (by Johan Boye) you say that the general architecture is in TRINDIKIT and that the GoDiS system was designed to illustrate possible information state transitions. This should be clarified in the paper. Specifically, what are the dialogue features GoDiS is testing. Further, it would be good to separate the general TRINDIKIT features from the specific design decisions made for GoDiS to study specific phenomena. In this context, I didn't find your answer ``[GoDiS] is meant to illustrate ideas that we have about possible information state transitions'' illuminating. Could you please be more specific?

Another comment that ties together the last two comments is as follows. The idea of accommodation is neat. However, in light of the examples covered, it is not clear that it is required. The example covered in the paper, ``flight to Paris'', could be easily handled with a semantic parser, and with slots that should be filled with subsequent information provided by the user (and queried about). [Raskutti and Zukerman 1997] describes one inference-based approach for handling this problem. So, like before, it is not clear what problems are being addressed by the general TRINDIKIT architecture, the specific GoDiS implementation, and why are new approaches necessary.

Additional (more detailed) comments

References
Raskutti, B. and Zukerman, I. (1997), Generating Queries and Replies during Information-seeking Interactions. International Journal of Human Computer Studies 47(6), 689-734.
<-- Answer -->

C1. Bohlin et al (29.5.00):

First we would like to thank Ingrid for her comments, and we hope our (belated) answers are useful.

Ingrid Zukermans comments:

Having read the paper and the discussion, I have some further comments. As I indicated in my comments to Aretoulaki and Ludwig, I come from a slightly different background, so I hope my comments make sense.

In general, I have trouble with some of what I have read, in the sense that new approaches for dialogue are being presented, but then the examples being handled can be handled by existing/simpler techniques (see my comments to Aretoulaki and Ludwig). The need for a new approach should be motivated by showing that existing approaches cannot handle a particular phenomenon, but this is not done here. Clearly, existing approaches haven't solved the dialogue problem. However, in this case, it should be easy to come up with examples that are not being handled by existing approaches and should be handled by the new approach. For instance, a case in point is the idea of AGENDAS and PLANS to handle short-term and long-term dialogue goals respectively. This is a nice idea, but I believe that some of the problems handled by this approach are addressed by the PRS architecture. A summary of this architecture appears in PRS Summary. I am not an expert on this architecture, but I think the issue deserves to be looked at.

The authors reply:

Judging from a quick look, PRS (Procedural Reasoning System) seems to be a fairly classical planning system. General planning and inference systems represent one end of the complexity spectrum for dialogue system design; at the other end we have simple slot-filling or finite-state systems used in most practical dialogue system applications today. One of the ideas with the TRINDI architecture is to make it possible to explore the rest of the spectrum. The idea is to avoid the complexity problems that come with general reasoning and planning, but still be able to diaplay complex and natural behaviour.

When the paper was written, our research had not focussed on agendas and plans, but rather on grounding and accommodation. Lately, however, we have been experimenting with translating menu-driven interfaces to dialogue systems by converting menu structures into dialogue plans. This requires a more complex plan representation, with conditionals and embedded subplans. While the dialogue plan in the paper was very simple and very much like a slot-and-filler frame, the menu-derived plans go beyond what can be done with frames as standardly conceived. This shows, in our view, that the dialogue plan approach is more general than the frame-filling approach, while still not being too computationally complex.

Ingrid Zukermans comments:

In your reply to the first comment (by Johan Boye) you say that the general architecture is in TRINDIKIT and that the GoDiS system was designed to illustrate possible information state transitions. This should be clarified in the paper. Specifically, what are the dialogue features GoDiS is testing. Further, it would be good to separate the general TRINDIKIT features from the specific design decisions made for GoDiS to study specific phenomena. In this context, I didn't find your answer ``[GoDiS] is meant to illustrate ideas that we have about possible information state transitions'' illuminating. Could you please be more specific?

The authors reply:

In the paper, chapter 2 is about the general architecture. Chapter 3 describes the particular type of information state used in GoDiS, and chapter 4 describes the rest of the GoDiS system. Chapter 5 describes a certain type of dialogue behaviour/feature (question and task accommodation) that we have implemented in GoDiS in the form of information state transition rules (u-rules). In this way, GoDiS illustrates possible information state transitions.

It would perhaps have been a good idea to make chapter 2 into a subsection of chapter 3, to make the difference between TRINDIKIT and GoDiS clearer.

Ingrid Zukermans comments:

Another comment that ties together the last two comments is as follows. The idea of accommodation is neat. However, in light of the examples covered, it is not clear that it is required. The example covered in the paper, ``flight to Paris'', could be easily handled with a semantic parser, and with slots that should be filled with subsequent information provided by the user (and queried about). [Raskutti and Zukerman 1997] describes one inference-based approach for handling this problem. So, like before, it is not clear what problems are being addressed by the general TRINDIKIT architecture, the specific GoDiS implementation, and why are new approaches necessary.

The authors reply:

To answer the last question first, the accommodation problem is adressed by GoDiS, and not by the TRINDIKIT architecture.

The solution you suggest seems to be functionally equivalent, provided that it also handles the case where no frame has yet been found (task accommodation). The "slots" correspond to questions, and a set of slots (a frame) corresponds to a plan. Finding the appropriate frame and loading it would amount to task accommodation. Finding the appropriate slot and inserting the user's answer would amount to question accommodation and integration of the answer; however, there would be no separate act of accommodation. One of the main arguments for question accommodation is that it makes it possible to give a single general rule for integrating answers. This rule would require a matching Question Under Discussion; if no such question exists it will be provided by the question accommodation rule, and integration of the answer can proceed as usual.

The point is not that the mechanisms we describe cannot be implemented in any other architecture. Rather, we argue that the TRINDI approach provides natural and intuitive means for implementing dialogue behaviours. Specifically, the mechanism of question accommodation (in its current simple form) only required adding one or two simple update rules. Also, these update rules are domain-independent.

Without having studied your solution in detail it's hard for us to say anything about the relative merits of our theories, but as above we could argue that general inference may not be the ultimate solution because of complexity problems. Also, simple slot-filling strategies are too simple, and we argue that dialogue plans coupled with mechanisms for question and task accommodation operate on a level of complexity which is just right for information-seeking dialogue.

It is, of course, possible to control inference to make it more effective, but only at the cost of generality. Functionally, however, constrained inference (as used by e.g. Sadek) and information state update strategies have much in common - the main difference lies in the way they are conceived. Constrained inference starts from being able to do anything, and then imposing limits; infomation state update rules start from not being able to do anything, and then adding capabilities. We feel that the latter strategy is more natural and theoretically sound, though this can of course be disputed.

Additional (more detailed) questions In page 2 (.ps version), you distinguish between the roles performed by update and selection rules, but in the following paragraph you state that selection rules also update the DIS, like update rules (+ selecting a dialogue move). In the discussion, you then say that selection rules update the data structure specifying the next move. What happened to the DIS updating they used to do? Who is doing it now? And if they still do DIS updating, why can't this be done by update rules?

The authors reply:

At the time when we wrote thew paper, we made a distinction between update rules (which update the DIS) and selection rules (which specify next moves and (optionally) updates the DIS). In the discussion we refer to the later version, where selection rules are a subset of update rules. Selection rules modify the DIS (or rather, the TIS as it is now called) by adding moves to the next_moves set. The next_moves variable is a part of the TIS, so to update next_moves is to update the TIS.

Comments:

How are the rules activated? Are their effects order-independent i.e., is it possible that RuleA can be applied before RuleB but not after it If so, how is this problem addressed

The authors reply:

The order in which rules are activated is determined by the update algorithm. Originally, we used the simple algorithm descirbed in the paper (basically, pick the first rule whose preconditions are true and apply it; repeat this until no more rules apply). In the current version, the update algorithm is more complex; rules are divided into classes and the algorithm specifies which class(es) can be activated at any given stage of execution. The algorithms are specified using traditional imperative constructs (repeat, if-then, etc).

Comments:

I am not entirely clear about the entries in the rules in (2) and (3), in particular about the differences between them. I think a walk-through of these rules would be appropriate.

The authors reply:

OK, here goes:

U-RULE: integrateLatestMove(answer(usr))
PRE:	valRec( SHARED.LM, answer(usr, A) )	P1
	fstRec( SHARED.QUD, Q )			P2
	relevant_answer( Q, A )			P3
EFF:	popRec( SHARED.QUD )			E1
	reduce( Q, A, P )			E2
	addRec( SHARED.BEL, P )			E3
Here's a paraphrase: If the latest move was a user answer with content A (P1), and the first question on QUD is Q (P2), and A is a relevant answer to Q, THEN pop Q off the QUD (E1), preform beta-reduction on Q and A to yield the resulting proposition P (E2), and add P to the shared beliefs (E3). For a more concrete paraphrase, A could be "paris", Q "X^(to=X)" and P = Q(A) = "to(paris)".

A shorter paraphrase: if the user just answered a question on QUD, pop the question off QUD and add the new fact to shared beliefs.

The second rule is the same, except for two things: since the system knows which question it was answering, it is not necessary to check for question-answer relevance; the system only answeres questions which are topmost on QUD. A second complicating factor is that the rule in (3) also assumes that the system's move has not yet been grounded - it is stored in PRIVATE.TMP.LM rather than SHARED.LM. In later versions, optimistic grounding of system moves is handled by a separate rule, thus simplifying the integration of system moves.

Comments:

You advocate an optimistic approach to grounding whereby anything said by the system is assumed accepted by the user. Is this a GoDiS shortcut, or is it part of the general architecture? If the latter, then it precludes the modeling of misunderstandings.

The authors reply:

The optimistic approach to grounding is a part of GoDiS; the TRINDI architecture itself says nothing about grounding. We believe that dialogue participants are able to switch between optimistic and cautios grounding strategies; however, we have chosen to use only the optimistic approach in the current GoDiS version. It is true that we cannot model misinderstandings with this simple strategy; however, we are able to handle basic grounding behaviour. We hope to explore this issue further in future research.

Comments:

In page 4 (.ps version), second column, you talk about ``the accommodation rules described above''. Which rules? I thought (2) and (3) are update rules. Further, you talk about ``improving the conversational behaviour of the system by adding some new rules''. Could you please give some examples

The authors reply:

You're right, this is an error. It should say ``the accommodation rules described *below*''.

The idea is that we have start out from a basic system for information-seeking dialogue. By adding a couple of additional rules (the two accommodation rules, which are a type/class of update rules) we improve the conversational behaviour so that the user can give information in any desired order, and does not have to explicitly explain her errand.

Comments:

One of your answers to Boye's questions confused me a bit. You wrote ``[QUD] represents questions that are currently being addressed, rather than a collection of questions that could be relevant and taken up.'' Actually, I understood that they were the second thing, since during accommodation you are trying to match the input to answers to possible questions.

The authors reply:

The set of "questions that are currently being addressed" is subsumed by the set of questions that could be relevant. During accommodation we first try to match against the QUD, but if this fails we match against against all possible questions in all possible plans - these are "the set of questions that could be relevant".

Comments:

In the example, how is the next action determined? (asking the user where s/he wants to travel from) i.e., how does the system decide which parameter to query next? (one approach to solve this problem is described in [Raskutti and Zukerman 1997]).

The authors reply:

Currently, the system simply picks the next action of the plan stackset and puts it on the agenda, provided nothing unexpected happens (such as the user asking a question, in which case the action to respond to that question is put on the agenda). So the plan provides a default ordering of questions. This is another area of possible future research, so thanks for the reference, we will check it out. <-- footer -->


Additional questions and answers will be added here.
To contribute, please click [send contribution] above and send your question or comment as an E-mail message.
For additional details, please click [debate procedure] above.
This debate is moderated by the guest editors.