Copycat is a
model of
analogy making and human
cognition
Cognition refers to "the mental action or process of acquiring knowledge and understanding through thought, experience, and the senses". It encompasses all aspects of intellectual functions and processes such as: perception, attention, thought, ...
based on the concept of the
parallel terraced scan, developed in 1988 by
Douglas Hofstadter
Douglas Richard Hofstadter (born February 15, 1945) is an American scholar of cognitive science, physics, and comparative literature whose research includes concepts such as the sense of self in relation to the external world, consciousness, an ...
,
Melanie Mitchell, and others at th
Center for Research on Concepts and Cognition Indiana University Bloomington.
The original Copycat was written in
Common Lisp
Common Lisp (CL) is a dialect of the Lisp programming language, published in ANSI standard document ''ANSI INCITS 226-1994 (S20018)'' (formerly ''X3.226-1994 (R1999)''). The Common Lisp HyperSpec, a hyperlinked HTML version, has been derived fro ...
and is
bitrotten (as it relies on now-outdated graphics libraries for Lucid Common Lisp); however, Java and Python ports exist. The latest version in 2018 is
Python3 portby Lucas Saldyt and J. Alan Brogan.
Description
Copycat produces answers to such problems as "abc is to abd as ijk is to what?" (abc:abd :: ijk:?). Hofstadter and Mitchell consider analogy making as the core of high-level cognition, or ''high-level perception'', as Hofstadter calls it, basic to recognition and categorization.
High-level perception
emerges from the spreading activity of many independent processes, called ''codelets'', running in parallel, competing or cooperating. They create and destroy temporary perceptual constructs, probabilistically trying out variations to eventually produce an answer. The codelets rely on an associative network, ''slipnet'', built on pre-programmed concepts and their associations (a
long-term memory). The changing activation levels of the concepts make a conceptual overlap with neighboring concepts.
Copycat's architecture is tripartite, consisting of a ''slipnet'', a ''working area'' (also called
workspace, similar to
blackboard systems), and the ''coderack'' (with the codelets). The slipnet is a network composed of nodes, which represent permanent concepts, and weighted links, which are relations, between them. It differs from
traditional semantic networks, since the effective weight associated with a particular link may vary through time according to the activation level of specific concepts (nodes). The codelets build structures in the working area and modify activations in the slipnet accordingly (bottom-up processes), and the current state of slipnet determines probabilistically which codelets must be run (top-down influences).
Comparison to other cognitive architectures
Copycat differs considerably in many respects from other
cognitive architectures such as
ACT-R,
Soar,
DUAL
Dual or Duals may refer to:
Paired/two things
* Dual (mathematics), a notion of paired concepts that mirror one another
** Dual (category theory), a formalization of mathematical duality
*** see more cases in :Duality theories
* Dual (grammatical ...
,
Psi, or
subsumption architectures.
Copycat is Hofstadter's most popular model. Other models presented by Hofstadter et al. are similar in architecture, but different in the so-called microdomain, their application, e.g. Letter Spirit, etc.
Since the 1995 book ''
Fluid Concepts and Creative Analogies'' describing the work of the Fluid Analogies Research Group (FARG) book, work on Copycat-like models has continued: as of 2008 the latest models are Phaeaco (a
Bongard problem solver), SeqSee (number sequence extrapolation), George (geometric exploration), and Musicat (a melodic expectation model). The architecture is known as the "FARGitecture" and current implementations use a variety of modern languages including C# and Java. A future FARG goal is to build a single generic FARGitecture software framework to facilitate experimentation.
See also
*
Artificial consciousness
Artificial consciousness (AC), also known as machine consciousness (MC) or synthetic consciousness (; ), is a field related to artificial intelligence and cognitive robotics. The aim of the theory of artificial consciousness is to "Define that wh ...
*
LIDA (cognitive architecture)
*
Semantic pointer architecture
References
Further reading
* (1993)
*
External links
A short description of CopycatGithub repository of copycat implementation (and other FARG projects)The Copycat Project: A Model of Mental Fluidity and Analogy-Making(pdf)
A Python version of Copycat by J. Alan Brogan, 2012A Python version of Copycat by Joseph Hager, 2017* Abhijit Mahabal's Seqsee code i
Perland i
Python*
ttp://ericpnichols.com/musicat/ Eric Nichols' Musicat dissertationThe Letter Spirit page at the Center for Research on Concepts and Cognition{{Douglas Hofstadter
Cognitive architecture
Common Lisp (programming language) software