ROALD aims to extend the range of stories which a program such as TALE-SPIN can produce. This is achieved by separating the process of planning the actions of the characters, from that of planning the narrator's intentions. The narrator controls the outcome of the simulation of the story characters' behaviour in two ways: first during the simulation, by blocking any undesired action and second, after the simulation, in the way it decides to report the outcome of the simulation.
Finally, we attempt to present a methodology for the use of ROALD as a creative writing tool. We present a way of using knowledge of existing stories as the seed for the development of new ones.
Meehan's(1976) and de Beaugrande and Colby's(1979) work could be viewed as a hypothesis which states:
A story is an account of goal directed behaviour of a set of characters - their interactions with each other and with the world. Story writing is simulating a world in which characters follow a goal directed life, presenting the trace of the simulation to
the readers.
The readers can be expected to be interested in these stories as they are concerned with problem solving and purposeful inter-action themselves. They like to find out about such situations and find these stories interesting. The hypothesis advocated in this dissertation accepts the above as a relevant but not fully satisfactory. Here we consider purposeful interaction of a different kind, one between the writer and the reader. Story writing is taken to be similar to other forms of verbal communication, i.e. it is the generation of a speech act (Searle, 1969). The writer achieves some perlocutionary effect by using a speech act which has the illocutionary force, e.g. it could be a warning, a complaint, a piece of advice, a straightforward recounting of events etc. The intended perlocutionary effects making the reader act, feel, think in certain ways.
We do not claim that this extra level of communicative interaction is sufficient to account for all stories, just that it would account for a larger class of stories than those accounted for by de Beaugrande and Colby(1979). The role of culture, politics, financial rewards etc. is left for other studies.
The verbal communication in a story is taken to be similar to what Koestler(1969) calls a tale: 'The tale represents certain events, by means of auditory and visual signs... The audience may be physically present, or an imaginary one; the narrator may address himself to a single person or to his god alone.'
What sort of problems should we give our characters? What would be the reasons for choosing a certain character rather than another one?
Even though the program we present in Chapter Eight expects a plot produced by its user, the production of such a plot is viewed within our model to be motivated by higher level goals. These abstract motives may be similar to Speech Acts (Searle, 1969) which are turned into detailed specifications of states of affairs and episodical information needed by ROALD. Figure 1 shows an intermediate level of detail, where a complaint has been turned into goals of a system which could generate the necessary inputs to ROALD.
BECAUSE one is not satisfied,
OR one believes something/somebody is wrong
OR one is suffering
ETC.
WITH a view that the reader might
acknowledge the complaint,
agree with the writer,
engage in action to change that state of affairs,
ETC.
WHILE the writer might want to
present the desired state of affairs,
OR show a possible way of changing that state of affairs
ETC.
Figure 1. An example of a possible motive behind a plot.
We anticipate that if ROALD were one day to become independent of the user and write stories by itself it would need motives similar to the above example. Obviously there can be alternative models to ROALD which would require no clear motive, producing soap operas.
The writer needs to have a model of the reader, and consider possible effects the story and its text can have on the reader. One use of this model would be to make sure of the ease of comprehension of the story from its text.
In the way the narrator reports the events, he has some control over how the reader constructs the events in the story. This is goal directed behaviour on the part of the writer where puzzling, mystifying and misleading the reader are possible intentions. In order to address these issues, we need to study the model of the reader the writer has. Here I propose a very simple one.
It has been suggested (Galloway, 1979) that the reader chooses a script as a hypothesis as to what is going on in the story. If this is correct, the narrator can exploit his knowledge of what scripts are generally available to the reader, in order to create certain effects.
The detective or mystery fiction has a basic rule of playing fair with the reader, recounting what happened and nothing more. However, the narrator leads the reader to choose scripts (pattern labels) which may not be the right ones.
The events in the simulated world need not be presented to the reader as they occur. In this dissertation we argue that stories have both content and shape, roughly corresponding to semantics and syntax.
The distinction between characters' actions and what the narrator tells, is the distinction which Russian Formalists (Flower, 1977) have noted between the 'fabula' (events as they would have unfolded in some world), and 'suzhet' (the same events, rearranged for telling). Our visual analogy is in defence of the argument that the way events in a story are reported sequentially to the reader provides a major source of creativity for story writers.
The Schankian approach deals almost exclusively with the content. Meehan's program is a good example of a content producer with no explicit consideration of the shape. However, as the stories are simple, the shape mirrors the content. It is only when we attempt to reduce the verbosity of TALE-SPIN's stories that we may notice the necessity for the explicit (and independent) representation of the shape.
On the other hand, the story grammar approach (Rumelhart, 1975, Pemberton, 1984) seems to deal exclusively with the shape of the stories through their grammars at the expense of an independent representation of the content. Again, as the stories analysed are simple the content mirrors the shape. However, in more complicated cases where there is more than one active character (or when the genre, in the case of detective mystery stories demands), the differences between the two becomes evident. The creation of discrepancy between events happening in the world of the story, and the way they are presented to the reader is, in itself, a creative act which we shall call 'narration'.
The 'discrepancy' between the events and their reporting can be a matter of temporal re-arrangement or just relating the choice of the level of detail at which to describe some event. Flower(1977) covers these issues in the context of literary criticism.
Presenting a series of events to the reader in an interesting way, is just one of the things the writer does. He also has to make up those events and work out plausible reasons behind them. In what follows, an attempt is made to give a complete system for a story writer. This system consists of five processes ( world-maker, plot-maker, simulator, narrator and the text-generator). Figure 6 shows the way these processes interact, each generating the story at a different level.
Figure 2 shows the five components of ROALD and the ways in which they interact with each other. The world-maker produces a 'representation of a fictional world' based on the plot to be used by the simulator. The plot-maker guides the simulator through the 'plot' and the plans of the character. The simulator produces a 'network of events' which is then turned into a sequential 'presentation plan' by the narrator. The text generator finally produces the surface level text.
Figure 2. The five components of ROALD.
ROALD simulates a world in which, by virtue of the goal directed behaviour of the characters, various events happen. The first step is the production of the representation of a 'made up' world. In addition the world-maker creates a partial knowledge of this world for each of the characters of the story. These worlds may be representations of part, or the whole, of the real world, as the writer perceives it, or may be fantasies. The representation of the world is in the form of a set of simple propositions, whilst the characters are provided with their own representations of the world (including characters' beliefs about themselves, and about others) and planning systems in order for their plans to be generated independently. The world making process need not be fully done in the beginning, but can be done on demand from the simulator as it progresses.
The characters finding themselves in a world are not necessarily be motivated to initiate events which provide the story writer with events to report to the readers. They therefore need also to be provided with some motivating goals. In order for the planning system to be able to plan actions of each character, we also specify what each character is capable of. For example, one character may be able to swim or drive a car while others may not.
Finally, we need to specify characteristics of each character so that we know if they would consider, for example, theft as a means of attaining an object of their desire or if they would attempt to bargain for it. As many events in the stories involve interaction between two characters, we also need to specify the quality of the relationship between the characters.
In contrast to TALE-SPIN the intended actions of a character in ROALD are not the same as the events in the story. The plans of all characters are submitted to the simulator (Figure 3) for execution. This distinction between planning and execution is non-existent within TALE-SPIN and is the main reason why the outcome of the simulation cannot be manipulated in ways similar to those described earlier in this chapter. Furthermore, the separation of planning and execution enables the simulator to have its own goals, which could mean leading the events of the world in a different direction from those which a particular character would like.
Figure 3. ROALD at work.
The simulator therefore introduces any necessary props, distractions, accidents etc. in order to lead the world through a history given to it as superior gaol (for example a moral, or the skeleton structure of an old story). We shall call such a means of control a 'plot'. The term 'plot' referred to in this context means a partial specification of a series of states of affairs which the world of the story must encompass. We shall further specify that a plot needs to have at least a starting state of affairs (the prince and princess together), a middle state (the princess captured by the villain), and a final state (the princess rescued by the prince).
Figure 4. attempts to present a visualisation of the progress of a world in time. The actions of the two characters are shown as two lines within a cylinder which is meant to represent the world going from situation ts, through situation tm to the situation tf.
Figure 4. Controlling the simulation.
This notion of a plot is similar to that used by Pemberton(1984) and ascribed to Aristotle's 'beginning, middle, end' principle. The plot is also intended to capture Schank's(1982) and Dehn's(1981) notion of previously remembered stories. In our case we argue that only a skeleton (beginning/middle/end) form of the structure of an older story is sufficient where most of the work is done afresh by the simulator. This idea of an abstract 'skeleton' form as opposed to 'fill in templates', is a well device in literary criticism (cf Flower, 1977). In contrast, Schank(1982) and Dehn(1981) would probably consider the major part to be played by the structure and the data provided by the simulator filling in the empty 'slots'.
The way the simulator manages to allow plausible behaviour of the characters while itself following an independent goal is an interesting problem. The simulator may need to carry a separate plan of its own along with those of the characters. Some authors may develop heuristic 'short cuts' as their stock in trade. Roald Dahl is most famous for his style of changing the course of events at the final moment in his Tales of the Unexpected. These tales are produced in a masterly fashion such that while the ending is unexpected it is still plausible. In Chapter Eight we show how a simple version of 'sting in the tail' strategy can be built. This current primitive generates a straightforward goal based simulation of characters to a successful conclusion, then mutilates it to get an 'interesting' story.
This method was chosen for its computational simplicity. However, it shows that one particular author's style, in this case Dahl's is open to a computational representation. ROALD could include many diverse story planning strategies.
The characters in an environment need to change their plans occasionally to deal with any accidents and backfirings which may occur. Re-planning is also a good way of dealing with the actions and requests of other characters in the world. Obviously there are architectural options on how the system could let the actors see the results of their actions and allow them to re-plan. The most straightforward scheme would be to allow each actor the execution of a portion of his plan which could be done on the stroke of an imaginary clock. The characters could see the results of that portion of activity and re-plan if necessary.
This would involve a time consuming process of computation at such a minute level of detail which could make the system too slow. A second option would be to let most of the characters' planning systems sleep whilst things are going OK and only awake them when the need arises. When possible the simulator could move many strokes of the clock at a time. As Schank(1979) has pointed out, not all goals and plans of all actors in a story need to be monitored while comprehending a story. Such attention to detail could cause a combinatorial explosion of inferencing for a story understander. Instead, Schank(1979) argues that only unusual things are interesting. It is therefore reasonable to assume that for similar reasons a story writer would not be bothered to pay attention to such detail which could be inferred by the reader from the context or convention.
For the above reasons we believe that a story writer need not pay full attention to the detail unless absolutely necessary. Accordingly we the actions which the characters can perform should be represented in a hierarchical fashion. In this way the simulator may report a complex, but unimportant, series of events as only the achievement of the overall aim, whilst expanding on details which form the body of some other action. Furthermore, in addition to general planning capabilities described in Chapter Seven, some more packaged plans should exist which would achieve some reoccurring sub-goals. Each of these plans should give several ways of arriving at the same end point:
e.g. 'to get something from somebody' either 'bargain', or 'steal'.
When the simulator reaches a state which satisfies the definition of 'end' in the plot it can stop. However, unlike TALE-SPIN where this stage marks the end of the story writing process, we are only half way through. The result of our simulation would be a tangled web of different events, some of which have taken place simultaneously on the time axis, further not all events have taken similar numbers of strokes of the clock. In other words, the outcome is similar to the everyday life of most of us. We shall call the output of the simulator the 'network of events'. Each node of such a network represents the firing of the action of a particular character or one of the simulator's own (tricks up the sleeve) actions. Although nodes of the network would be of different time sizes, in the spirit of Mandler's(1978) work we propose that they should contain the following four parts:
The very first node of such a network would be a special one at which a comprehensive description of the state of the world ('the initial situation' in Pemberton's terminology) is given. The remainder of the nodes can describe the changes (additions, extra information etc.) to the preceding nodes, until the terminating state ('the final situation') is reached.
This network of events is two-dimensional as some events happen at chronologically equivalent points. However, the text of stories needs to be sequential. It is the job of the 'narrator' to produce a flattened version of the network. As we have argued earlier, the way such a process works could itself be subject to goal directed behaviour. The issues relating to the design of an 'ideal' text generation system are dealt with in more detail in the next chapter.
The text is a sequence of cues with which the reader can reconstruct what has happened on in the world of the story. The writer therefore needs to have a model of a potential reader (himself acting as the reader), and to consider the possible effects the story can have on the reader. One use of such a model would be ease of comprehension. On the other hand some genres might involve exploitation of this model for temporarily misleading the reader about what actually has happened in the story.
The author needs to make sure that his creation would satisfy some accepted measures of well-formedness. While the process of generation in our model is reasonably relaxed, we believe that this should be followed by a rigorous process of validation of the results. It is the combination of these sorts of generation and validation which offers a powerful mechanism for creative writing. Most models of story writing seem to ignore the fact that before becoming story writers, people develop a skilful taste in reading. It seems obvious that people would use their comprehension capabilities for evaluating the outcome of their own generation process.
The problem of computational story comprehension is beyond the scope of this dissertation. However what is clear is that a greater body of knowledge exists in that area than in generation. Most of these systems (e.g. Schank and Abelson, 1972) rely on using the content representation for their comprehension task. An experiment using a story grammar approach to comprehension would be a nice complement to these efforts.
In this chapter we have presented a general model of story writing and in chapter eight we shall present a more specific manifestation of it in the form of a computer program. However, models do not generate things: at best they describe a process or an entity. How can a user write a story with ROALD? How can one make these stories interesting?
As we noted earlier some authors are motivated to produce stories through some moral conviction. For example many British novels written in the past decade are veiled complaints against the cruelty of policies of the Thacher years. Others try to prove that with hard work anybody can become rich, famous or what-so-ever he wants.
Having got a 'bee in our bonnet' how do we go about hiding it in a plausible story? First of all we need a universe, a set of rules governing general relationships of objects. In ROALD we offer a naive version of reality. We use a straightforward way of making our universe so the user could possibly produce alternative universes if he wanted to, assuming he is willing to learn a little bit about Prolog.
The second requirement is a specific world of characters, their belongings and other significant props. These can be one of ROALD's off-the-shelf worlds or a tailor made one. But where did the off-the-shelf ones came from? What sources of inspiration are there for the user in building his own world?
Earlier we implied that since writers are also readers they will use their knowledge of the stories they have read in producing new stories. Most of the alternative approaches to story writing differ primarily in the way they suggest that 'old' stories impact the process of the generation of the 'new' ones.
In our approach we suggest taking existing texts and trying to work out the a set of relations representing the world in which they have happened. Basically we suggest the user 'dissects' the text into its 'untold' assumptions and represents these in form of simple triplet relations. These relations are then used within our model along with a plot to produce a story. The plot could be the plot of the original story or one of ROALD's off-the-shelf plots.
In 1979, I conducted an informal experiment on the Jack and Jill story. The purpose here was to help me understand what people expect from a story. While most questions primarily concern the characters, others were primarily interested in the issues concerned with the author.
The purpose of mentioning this experiment is to indicate that the idea of finding complex underlying structures underlying simple stories can be easily done by most people if they put their mind to it. The difficulty of an author is to represent these in a coherent way and then generate stories from them in a plausible way.
ROALD's plots can also be dissected texts. However, the notion of a plot in ROALD is very simple. It is a simple description of the 'beginning', the 'middle' and the 'end'. Any connection between these and any elaboration of the story is produced by ROALD's own simulator and not from the original text.
Having got ROALD to reproduce the text which we started from we can then move on to produce variations of it. However, our variations are not simple filling of slots. We are tinkering with individual representation units which are put together into a story by a general system. Therefore any simple change may produce results far different from that which we started from.
It should also be said that in return for the generality of expression gained in ROALD we have also lost any guarantee that the results of tinkerings with the world would lead to an interesting or even coherent story.
With ROALD we are proposing a 'generate and test' strategy. The strategy is currently dependent on the user to perform the 'test' part of the cycle. However, we have given some indication that at least the syntactic part of this task, the detection of 'correct' story forms could be done with the assistance of a story grammar such as that of Pemberton(1984). The semantic component can be performed by a computational story understanding system.
A general approach to creativity based on the ideas presented above is presented in Chapter Nine.
In order to show by example how ROALD could be used to produce stories which are currently beyond the implemented part of ROALD we shall present a hypothetical scenario.
One of the early experiments with the program involved testing its capabilities with the farmer, grain, fox and chicken problem. This problem, involving the safe transportation of the goods, using a boat which could only hold one item was the standard test for planning systems in use at Sussex. During this same period I was also working on another experiment for the discovery of propositional content of simple stories. The idea was that by finding an exhaustive set of questions which people asked about a story, one could work out the propositional content of that story.
These two parallel developments indicated to me that a new story could be produced by combining the Jack and Jill story world with that of the farmer. The idea was to substitute two agents, Jack and Jill, instead of the farmer. As each of these two could then independently plan their actions in a world they shared, we could test some of the capabilities of the planning system which the original farmer problem could not.
This led to the following initial state of affairs in the world:
fact (Jack, is-at, leftbank) fact (Jill, is-at, leftbank) fact (boat, is-at, leftbank) fact (fox, is-at, leftbank) fact (chicken, is-at, leftbank) fact (grain, is-at, leftbank) etc.
The first plot I used was simple. I decided to arrange for Jack and Jill to split up and each to take their favourite object with them to a different bank of the river as shown in Figure 14. Jill's goal is to be with the bag of grain on the opposite bank to Jack. Jack's goal is to be with the chicken on the opposite bank to Jill.
Jill's goal
Jack's goal
Figure 14. Jack and Jill's goals.
I decided that obviously each character should be able to sail the boat and the resulting story was straightforward: 'Jack and Jill didn't want to live together any longer so Jill picked up the bag of grain and sailed to the other side of the river.' This exercise was meant simply to test the planning program. However, I had failed even to do this as with the absence of the boat Jack did not get the opportunity to do much. I therefore added the capability of swimming to Jack's repertoire of actions. I was then searching for another change which would get the system to do a bit more.
At the same time as I was doing these programming experiments, I had to counsel a friend against his sense of revenge. I decided to try and turn this into a plot for a story as in Figure 15. The starting point has Jack, Jill, chicken and the bag of grain all on the left bank of the river. The mid point has Jack and chicken on one bank and Jill and the grain on the other. The end point has Jack and Jill on the opposite sides of the river without the bag of grain.
Starting point
Mid point
End point
Figure 15. A visual representation of a plot.
In order to achieve the moral 'you lose out in the long run if you try to harm others', I needed to change Jack's goal to that in Figure 16. Jack now wants to have both the chicken and the bag of grain on his side of the river.
Figure 16. Jack's new goal.
This experiment led to the following story which, although produced by me, could well have been produced with a computational version of ROALD.
Jack and Jill didn't want to live together any longer so Jill picked up the bag of grain they had and sailed to the other side of the river. Jack, not being satisfied with being left with the chicken, decided to follow her and retrieve the grain. He swam across the river and sailed back with the grain just to notice that the neighbourhood fox had eaten his chicken.
Figure 17. Jack and Jill story.
Jack and jill, whom you remember used to go up the hill together, grow up and got married. They lived by a river so as not to climb the hill any longer. Well, things didn't work out and after a while they could not stand the sight of each other and split up.
Their belongings consisted of a bag of grain, a chicken, and you could say, the fox who lived near by. Jack wanted to keep the chicken and jill wanted to keep the grain. So Jill took the grain and sailed to the other bank of the river and started living on her own.
But Jack wasn't happy with this. He didn't want Jill to have what she wanted. He swam across the river and stole the bag of grain and sailed back in the boat. In the meantime, the fox had eaten Jack's chicken.
Figure 18. The revised Jack and Jill story.
In this paper we have presented a model of story writing which attempts to address some of the shortcomings of the other models surveyed earlier. Similar to Lebowitz's UNIVERSE, the model acknowledges the importance of world-making. Like Meehan's TALE- SPIN it acknowledges the need for simulating the purposeful behaviour of characters in stories. Like Klein and others it acknowledges the role which the structure of previously learned stories plays in the generation of new ones. Where we depart from others is in our attempt to combine a structure-driven method (via our use of the plot) with a data-driven simulation. We have presented a model which clearly distinguishes between the 'shape' and 'content' of stories.
We have shown how old stories can be used as the bases for generating new, significantly different from the originals. The idea is that one could take a desired result, find general processes which could generate that result and then tinker with the processes to get new results.