330 likes | 447 Views
On procedures & operations: a dialogue with some basic programming concepts. SM2220 Generative Art & Literature January 23, 2006 Linda Lai. I. Review. 20 th -C art innovations: generative art & literature review of Week 01 discussion. Openness:
E N D
On procedures & operations:a dialogue with some basic programming concepts SM2220 Generative Art & Literature January 23, 2006 Linda Lai
I. Review
20th-C art innovations: generative art & literaturereview of Week 01 discussion Openness: -Demarcation of art/non-art and the boundary of a work is fluid: stretchable, modifiable, invites participation Emphasis on Concept -a work of art doesn’t have to be about something in the world out there; it can be about thoughts and abstractions -what is actual what is possible what is virtual Dematerialized art -Process-oriented -Set of instructions that govern the process of the making of the work (significance) Role of authorship co-authorship co-creativity
20th-C art innovations: generative art & literaturereview of Week 01 discussion Serialism as our first example Permutation / combination Repetition / variation Mind-mapping based on the collaboration of divergent thinking and lateral thinking Automatism Rule-driven-ness *Execution / the procedures (today’s emphasis)
20th-C art innovations: generative art & literaturereview of Week 01 discussion [#slide 32-33 from week 01] TWO kinds of generative systems in 20th-C art history (Diane Kirkpatrick): • Closed generative systems: -fixed pool of elements -in each work a closed analytic structure is set up which becomes a generator for exploration (2) Organic generative systems: A work begins with creating one word or idea and uses that to generate the next, and the next and so on…(creating generators)
II Processes & Procedures…: Conceptual Structured
Generating a possible / virtual work Shifts– more humanistic input in the creative process ↓ conception ↓ design of rules and procedures
What is Generative Art? Generative Art performs the idea as process. Execution / the procedures Designing the procedures and the set of instructions becomes the core activities
Algorithms: procedures in computing Algorithm is the systematic procedures that computer science adopts to final correct solution to complex problems. Algorithm is a procedure for solving a problem in terms of: 1) the actions to execute 2) the order in which these actions execute
Setting workable procedures… Generative principles ≠ the technical procedures Sorting out solutions for a problem ≠ doing the actual scripting with a certain programming language
Algorithms: actions in order “rise-and-shine algorithm” [source: H.M. Deitel & P.J. Deitel (2005), C++: How to Program 5th edition, p. 121] (1) Get out of bed (2) Take off pajamas (3) Take a shower (4) Get dressed (5) Eat breakfast (6) Drive to work Consider other sequencing possibilities and the qualitative change in narrative meaning, e.g.: (1) – (2) – (4) – (3) – (5) – (6)
Algorithms: actions in order Setting actions in the right order in a computer program is called program control. “Structured programming”: Concerned with sequential execution, that is, the execution of statements one after the other in the order in which they are written.
Actions in order: Structured Programming Böhm and Jacopini (1960s) demonstrated that all programs could be written terms of only three control structures for sequential execution: • Sequence structure: about succession • Selection structure (OR “decision structure”) ifa single selection statement (conditional performance) if…else a double selection statement(conditional performance) switch a multiple selection statement (3) Repetition structure looping statements OR loops (loop-continuation condition) for () while () iteration recursion
III. Recursion? Iteration? preliminaries
Generating a possible / virtual work Shifts– more humanistic input in the creative process ↓ conception ↓ design of rules and procedures
An illustration of Recursion Recursion is one class of algorithms Recursion: the process of solving a large problem by reducing it to one or more sub-problems which are: • Identical in structure to the original problems; and • Simpler to solve
An illustration of Recursion How to collect $1000 in a fundraising event in which coupons are printed at $1 per piece: One way to do it is to find one person who can donate the total amount… [Source: Eric S. Roberts (1986), Thinking Recursively, pp. 1-4]
How to collect $1000 One way to do it is to use an iterative solution:
How to collect $1000: a recursive solution Principle: to break down the problem into identical, sub-problems that are simple to solve Enlist 10 people, each in charge of raising $100. Each person asked 10 volunteers who will raise $10 each. Each volunteer will find 10 others who agree to raise $1.
How to collect $1000: a recursive solution The use of recursion here is a “divide-and-conquer” method. The original problem divides to form several simpler sub-problems, which branch into a set of simpler ones…until the simple cases[the simplest case(s), base case(s)]
More illustrations on the use of Recursion Mondrian-like computer art 1907-1914: Cubism (a modern art movement) flourished in Paris [nature should be represented in terms of its primitive geometrical components, e.g. cylinders, cones, spheres etc.] The Cubist community was dissolved at the outbreak of WWI ideas influenced and shaped the development of abstract art, e.g. works of Piet Mondrian, characterized by rigid patterning of vertical and horizontal lines.
Iteration? Recursion?There’s a Hole in the Bucket There’s a hole in the bucket, dear Liza, dear Liza There’s a hole in the bucket, dear Liza, a hole Then fix it, dear Charlie, dear Charlie Then fix it, dear Charlie, dear Charlie, fix it With what shall I fix it, dear Liza, dear Liza With a straw, dear Charlie, dear Charlie But the straw is too long, dear Liza, dear Liza Then cut it, dear Charlie, dear Charlie With what shall I cut it, dear Liza, dear Liza With a knife, dear Charlie, dear Charlie
Iteration? Recursion?There’s a Hole in the Bucket (cont’d) But the knife is too dull, dear Liza, dear Liza Then sharpen it, dear Charlie, dear Charlie With what shall I sharpen it, dear Liza, dear Liza With a stone, dear Charlie, dear Charlie But the stone is too dry, dear Liza, dear Liza Then wet it, dear Charlie, dear Charlie With what shall I wet it, dear Liza, dear Liza With water, dear Charlie, dear Charlie But how shall I fetch it, dear Liza, dear Liza In a bucket, dear Charlie, dear Charlie There’s a hole in the bucket, dear Liza, dear Liza, There’s a hole in the bucket, dear Liza, a hole
To be continued next week… *Comparing iteration and recursion *Generative Grammar, an introduction