We now have grounds to characterise how the creative process operates in bricolage program- ming. For this we employ the Creative Systems Framework (CSF;§6.2), introducing its terms as we go.
Within the CSF, a creative search has three key aspects: the conceptual sear space it- self, traversal of the space and evaluation of concepts found in the space. In other words, creativity requires somewhere to search, a manner of searching, and a means to judge what is found. However, creative behaviour may make use of introspection, self-modification and need boundaries to be broken. at is, the constraints of search space, traversal and evaluation are not fixed, but are examined, challenged and modified by the creative agent following (and defined by) them. e CSF characterises particular kinds ofaberrationfrom a conceptual space, and approaches to addressing them.
Using the terminology of G¨ardenfors (2000), the search spaces of the CSF are themselves concepts, defining regions in a universal space defined by quality dimensions. Transforma- tional creativity then is a geometrical transformation of these regions, motivated by a process of searching through and beyond them. is means that a creative agent may creatively push beyond the boundaries of the search as we will see. While acknowledging that creative search may operate over linguistic search spaces, we focus on geometric spaces grounded in percep- tion. is follows our focus on artistic bricolage described in§6.3, but for an approach unifying
C 6: C
linguistic and geometric spaces see Forth et al. (2010).
We may now clarify the bricolage programming process introduced in §6.3.1 within the CSF. As shown in Figure 6.3, the search space defines the programmer’s concept, being their current artistic focus structured by learnt techniques and conventions. e traversal strategy is the process of aempting to generate part of the concept by encoding it as an algorithm, which is then interpreted by the computer. Finally, evaluation is a perceptual process in reaction to the output.
Algorithm
InterpretPercept
Elaborate EncodeConcept
Observe ReactOutput
Evaluation
Traversal
Sear
space
Figure 6.3:e process of action and reaction in bricolage programming from Figure 6.2, showing the three components of the Creative Systems Framework, namely sear space, traversal strategy and evaluation.
In§6.3, we alluded to the extended mind hypothesis (Clark, 2008), claiming that bricolage programming takes part of the human creative process outside of the mind and into the com- puter. e above makes clear what we claim is being externalised: part of the traversal strat- egy. e programmer’s concept motivates a development of the traversal strategy, encoded as a computer program, but the programmer does not necessarily have the cognitive ability to fully evaluate it. at task is taken on by the interpreter running on a computer system, meaning that traversal encompasses both encoding by the human and interpretation by the computer.
e traversal strategy is structured by the techniques and conventions employed to convert concepts into operational algorithms. ese may includedesign paerns, a standardised set ofways of buildingthat have become established around imperative programming languages. Each design paern identifies a kind of problem, and describes a generalised structure towards
C 6: C a solution.1
e creative process is constrained by the programmer’s concept of what is a valid end result. is is shaped by the programmer’s current artistic focus, being the perceptual qualities they are currently interested in, perhaps congruent with a cultural theme such as a musical genre or artistic movement. Artists oen speak of self-imposed constraints as providing cre- atively fertile ground. In terms of a creative search such constraints form theboundaryof a search space. It is possible for a search to traverse beyond that boundary, thus findinginvalid concept instances, a scenario calledaberration(Wiggins, 2006a,§5.2.2). In such instancestrans- formational creativitycan be triggered. For example, if an invalid yet (according to evaluation rules) valued instance is found, then the concept should be enlarged to include the instance. An invalid concept instance which is not valued indicates that our traversal strategy is flawed and should be modified to avoid such instances in the future. A single traversal operation may result in both valid and invalid instances being found, indicating that both the traversal rules and the definition of the concept should be modified.
e artist in our earlier case study was working within the concept of bezier curves, but when curve endpoints happened to join, they perceived some things outside that concept – a squiggle and some hair. ey made a value judgement, and decided to change their concept in response, which we consider as a case of transformational creativity. ey then made edits to their source code (the traversal strategy), in order to try to generate output which evoked perceptual experiences closer to their concept. is may seem a minor case of transformational creativity, but indeed we contend that much creativity is quite ordinary human behaviour; humans apply creativity at all levels of life.
Our case study shows where a programmer may set themselves up for being surprised by the results. is is not only due to the use of pseudo-random numbers, aer all noise is rarely a source of surprise; in information theoretic terms noise has maximal information content, but in practice the lack of form quickly results in fatigue or aention shi. It is rather due to the linguistic abstraction of an idea that consists of fragments of perceptual symbols. In other words, because the traversal strategy of a programmer includes external notation and computation, they are likely to be less successful in writing soware that meets their precon- ceptions, or in other words more successful in being surprised by the results. A creative process that includes external computation will follow a less predictable path as a result. Nonetheless the process as a whole has the focus of a concept, and is guided by value in relation to a rich perceptual framework, and so while unpredictable, this influence is far from random, being meaningful interplay between language and perceptual experience. e human concepts and 1is structural heuristic approach to problem solving is inspired by work in the field of urban design (Alexander et al., 1977).
C 6: C
algorithm are continually transformed in respect to one another, and to perceptual affect, in creative feedback.
According to our embodied view, not only is perception crucial in evaluating output within bricolage programming, but also in structuring the space in which programs are conceptualised. Indeed if the embodied view of conceptual metaphor theory (§2.2.6) holds in general, the same would apply to all creative endeavour. From this we find a message for the field of compu- tational creativity: a prerequisite for an artificial creative agent is in acquiring computational models of perception sufficient to both evaluate its own works and structure its conceptual sys- tem. Only then will the agent have a basis for guiding changes to its own conceptual system and generative traversal strategy, able to modify itself to find artefacts that it was not pro- grammed to find, and place value judgements on them. Such an agent would need to adapt to human culture in order to interact with shiing cultural norms, keeping its conceptual system and resultant creative process coherent within that culture. For now however this is wishful thinking, and we must accept generative computer programs which extend human creativity, but are not creative agents in their own right.