Copycat is a computational model that is capable of generating solutions to letter-string analogy problems. For example, given the mapping abc is to abd, the system is told to be a "copycat" and modify a target string such as ijk in the same way. Although the domain in which Copycat works seems rather restricted, it is surprisingly subtle. For example, in the simple problem just stated, there are at least three solutions that both Copycat and human subjects produce, though some may seem to be "smart Alec" responses (using literal, rather than adapted transformations). These solutions are:
· ijl (replace the rightmost letter by its successor)
· ijd (replace the rightmost letter by d)
· and ijk (replace c with d).
Exercise 1. To give you a feel for the domain in which Copycat works, write down all the possible solutions that you can think of for the following problems (give at least 3). To assist you, the number of solutions that both Copycat and human subjects have in common to each of the problems is given in parentheses
According to Hofstadter, the formation of analogy relies on two main mental processes; representation formation and mapping.
Mapping is the process by which objects in each of the domains are equated with each other because they are perceived as "playing the same role." For example, an analogy can be drawn between an atom and the solar system because the major constituents can be equated with each other due to the similarity in the roles that they take (i.e. the electrons revolve around the nucleus in a similar fashion to how planets revolve around the sun). In order to perceive such objects as playing "the same role", some kind of mental representation has to be formed that specifies what role each of the objects are playing in relation to the others. For example, in the problem abc : abd, ijk : ?, a solution such as "ijl" would require a mapping between the letter c and the letter k. However to make such a correspondence, the objects have to be perceived to be playing the same role in both situations (which requires forming a representation that identifies both letters as being the rightmost letter in the string, for example).
Exercise 2. For TWO of your solutions to the problem abc : abd, kji : ?, write down the main mappings that you made in formulating a solution (i.e. what letter does the letter "c" correspond with in the target string "kji"), and suggest how these letters are "playing the same role." This may give you insight into the sorts of representations that you have used in formulating a solution.
One of the important aspects to note about the mapping process is that sometimes the objects that are equated do not play the same role in all respects. For example, in the problem abc : abd, kji : ?, a possible solution would be lji. This solution requires a mapping between the letters c and k, which differ in the position in the string that they take (i.e. c is the rightmost letter, whereas k is the leftmost letter). The equating of these spatial positions is a result of the perception that abc is a group of successive letters to the right, whereas the string kji is a group of successive letters to the left. As the string abc can be equated with kji based on the property that they are both strings of successive letters, the concept right in the string abc needs to be equated with the concept left in the string kji, allowing the letter c (which is at the rightmost position) to be mapped to the letter k (which is at the leftmost position). This is an example of a conceptual slippage occurring within this domain, and is an integral part of the mapping process.
Some of the conceptual slippages that you made in formulating the solutions to the previous letter-string analogies can be brought into clear light by restricting the concepts that you used to the ones understood by Copycat, and seeing how the initial transformation rule (i.e. the rule that describes the transformation abc : abd) must be modified to fit the target string. For example, in the problem abc : abd, iijjkk : ?, a possible solution is the string iijjll. According to Copycat, an initial transformation rule which may describe abc : abd, is the rule "replace the rightmost letter by its successor", whereas the transformation iijjkk : iijjll is described as "replace the rightmost group of letters by their successor." This modification of the initial rule requires the conceptual slippage letter <-> group which is brought on by the mapping between c and kk.
In Copycat, both the initial and modified rule are in the form "replace x by y", where x is a description of the letter or groups of letters that are to be modified (such as "the letter c", "the leftmost letter" or "the rightmost letter"), and y is a description of the transformation (such as "the letter d", "its successor", "its predecessor").
Exercise 3. Using the descriptions given above, write down the rule explaining the initial transformation, and the modified rule for each of the solutions given below to the problem abc : abd, kji : ?. From the differences noted between these rules, write down the conceptual slippages that have occurred (if any), and give a brief explanation as to why these may have occurred.
In forming a solution to letter-string analogy problems, Copycat, like human subjects, forms representations of the letter strings that denote the role that each letter or group of letters is playing (e.g., "c" in "abc" is the rightmost letter in a group of successive letter). These representations are used to generate mappings between objects across the strings. The conceptual slippages that occur in these mappings are noted and are used in modifying the initial rule, in generating an answer from the target string.
The mechanisms that Copycat employs in forming a solution are based on the premise that high-level perception emerges as an outcome of a multitude of small and independent processes that work locally, and in parallel. That is, there is no central executive telling the system what to do next. You can think of this as being similar to the formation of a termites’ mound. That is, no single termite has a pattern of what the mound should look like, but rather the structure “emerges” from the activities of thousands of termites that are working in parallel.
The Copycat model consists of four main components that interact heavily:
Excercise 4. Load
Copycat from the Web, using any Java enabled browser. The URL is:
When loaded the interface will look something like this:
The copycat interface is comprised of 9 main windows, four of which correspond the main constituents of the model (namely the Workspace(2), the Slipnet(3), the Coderack(9), and the Temperature(5)). The other 5 windows are used to perform functions on the model. There is a pull-down menu bar (1), which allows users to perform tasks such as loading Copycat's responses to previous trials and lesioning part of the model. There is a main control window (4), which allows users to play, pause, stop or single-step through a particular problem. There is a tool bar (6) which allows users to clamp or activate particular concepts in the Slipnet. And there is a Graph function (7), that allows users to graph such variables as the Temperature and the activation of concepts in the Slipnet over time. The bin (8) is primarily used to remove elements from the graph.
Exercise 5. Copycat is initialized with the problem abc : abd, ijk : ?. Press the play button in the main control window, and watch Copycat solve the analogy. While watching, you should note the following:
Copycat is not a deterministic system, and is able to come up with several answers to the same problem, over a number of runs. Once Copycat has formulated a solution, you can reset the workspace in able to run the problem again by pressing the stop button.
Excercise 6. You can load Copycat's responses for previously run problems by going to the "File" pull-down menu, and selecting the item "Load Group Run." For each of the following problems, load the solutions by typing the string given in parentheses as the filename (once you have selected the "Load Group Run" item).
When you have typed in the filename, press OK, and wait a few moments while the data is loaded from the Web. When loaded, Copycat will display its responses over 1000 trials, in the form of a bar graph.
Write down Copycat's responses for the following problems, in order of frequency of response:
For ONE of the responses that you didn’t find, describe the solution that Copycat gave.
The fact that Copycat is able to mimic human responses in its domain (of which, some require a fair bit of insight), suggests that it is feasible that high-level perception in humans may be driven by the same kinds of mechanisms. Understanding how coherent representations can “emerge” from a system with the absence of a central executive may give us insight into the nature of the human mind in general. For example, through introspection it seems that our behaviour is governed by our consciousness. However, when we try to comprehend how this consciousness comes about, it is often tempting to resort to beliefs that lie beyond scientific verification (such as the belief that it is our "soul" telling us what to do). An alternative way of explaining this phenomenon, is that our behaviour, along with consciousness itself, is an emergent property of the human brain that it is driven by the activities of billions of independent agents (i.e. our neurons) that work locally and in parallel.
By the end of this part of the tutorial you should know: