Home » AGH 2022/23 » Historia sztuki generatywnej z wykorzystaniem narzędzi informatycznych i nie tylko. Harold Cohen i inni.

Tagi

Wyróżnione posty

Zobacz też

Statystyki

  • 117
  • 643
  • 25 021
  • 7 313
  • 39

Historia sztuki generatywnej z wykorzystaniem narzędzi informatycznych i nie tylko. Harold Cohen i inni.

Spread the love

Sztuka generatywna, jako podzbiór sztuki, polega na wykorzystaniu systemów generujących, które z pomocą artysty tworzą potencjalnie wiele dzieł sztuki. Kluczową częścią definicji jest oddanie kontroli systemowi generującemu, który często opiera się na procesach losowych lub matematycznych. Sztuka generatywna może być tworzona za pomocą różnych narzędzi, takich jak maszyny rysujące, procesy stochastyczne, procesy fizyczne, operacje losowe czy nawet żywe organizmy. Warto również wspomnieć o artystach, którzy zasłużyli się w dziedzinie sztuki generatywnej. Harold Cohen, twórca programu AARON czy Manfred Mohr, który w latach 60. i 70. eksperymentował z komputerami, aby tworzyć abstrakcyjne obrazy. Jego dzieła charakteryzują się geometrycznymi kształtami, precyzją i symetrią. Obaj artyści przyczynili się do rozwoju sztuki generatywnej i eksploracji granic pomiędzy matematyką a sztuką. W dzisiejszych czasach każdy może stać się artystą sztuki generatywnej, korzystając z dostępnych narzędzi, takich jak Dall-e 2 czy model Midjourney.

 

Sztuka Generatywna

Zacznijmy od zdefiniowania co to jest sztuka generatywna. Jest to o tyle trudne, że sama sztuka nie jest dobrze zdefiniowana i jej postrzeganie zmieniało się w czasie. Do XVII wieku sztuką nazywano każdą umiejętność, dziś moglibyśmy powiedzieć, że sztuka jest sposobem wyrażenia się artysty i przekazania swojej wizji, emocji, idei, czy doświadczeń. Sztukę generatywną możemy rozumieć jako podzbiór sztuki w której potencjalnie wiele dzieł może zostać stworzonych za pomocą systemu generującego, z którym autor może eksperymentować, ustawiając różne parametry. 

 

Philip Galanter proponuje następującą definicję sztuki generatywnej:

“Generative art refers to any art practice where the artist uses a system, such as a set of natural language rules, a computer program, a machine, or other procedural invention, which is set into motion with some degree of autonomy contributing to or resulting in a completed work of art”.

 

Kluczową częścią tej definicji jest to, że artysta inicjalizuje system generujący i oddaje mu kontrolę. Autonomia może brać się z losowości zaszytej wewnątrz systemu. Stwarza to jednak dodatkowe pytania. Jak bardzo musi być skomplikowana maszyna, aby zaliczyć można ją było do sztuki generatywnej? Czy wiadro wypełnione farbą, przedziurawione, a następnie puszczone w ruch wahadłowy z rotacją jest maszyną? Czy powstały obraz z wylanej farby jest sztuką generatywną w ujęciu tej definicji? Pójdźmy dodatkowo o krok dalej. Wiemy, że program komputerowy nie jest niczym innym niż zbiorem instrukcji które wykonuje maszyna. Nic nas jednak nie powstrzymuje od wykonania tych instrukcji samemu. Czy w takim razie, mając pewien algorytm tworzenia wiersza oraz ten algorytm został by ręcznie wykonany przez człowieka, czy taki wiersz można by nazwać sztuką generatywną?

 

Działy sztuki generatywnej

W swojej pracy pt. “What is Generative Art? Complexity Theory as a Context for Art Theory” Philip Galanter mówi o rodzajach sztuki generatywnej oraz problemach z definicją tego działu sztuki. Każdy artysta, jak i również odbiorca sztuki może mieć własny pogląd na definicję sztuki generatywnej oraz może być on mocno ograniczony przez niewystarczająco poszerzone horyzonty. Jeżeli artysta patrzy na sztukę generatywną tylko przez pryzmat swojej pracy to nigdy nie będzie mieć całkowitego poglądu na cały dział sztuki.

 

Sztukę generatywną można podzielić na:

  • Muzykę elektroniczną i algorytmiczną kompozycję
  • Grafikę komputerową i animacje
  • The Demo Scene i VJ Culture
  • Industrial Design and Architecture

 

W naszym blogu skupimy się głównie na grafice komputerowej jako, że jest to obszar, który w ostatnich latach przyciąga uwagę i stwarza wiele kontrowersji.

Zacznijmy od przedstawienia kilku osób które przyczyniły się do rozwoju sztuki generatywnej.

Prekursorzy sztuki generatywnej

Harold Cohen i AARON

Harold Cohen jest jednym z pierwszych twórców systemów sztucznej inteligencji zdolnej do rysowania obrazów. Historia zaczyna się w 1968 roku, kiedy Cohen już jako znany artysta zaczął pracę jako wykładowca na University of California San Diego na wydziale sztuk pięknych i jeden ze studentów zapoznał go z uczelnianym laboratorium komputerowym i językiem Fortran. 

 

Cohen zaintrygowany, rozpoczął inwestygację aplikacji sztucznej inteligencji w sztuce. Cohen zauważył, że proces tworzenia sztuki to seria decyzji bazujących na wiedzy artysty o aktualnym stanie dzieła. Skoro zatem tworzenie sztuki to seria decyzji, to można ją uchwycić jako program komputerowy z użyciem wyrażeniem if-else kontrolujących podejmowane decyzje. W ówczesnym świecie, przetwarzanie obrazów ograniczało się do zastosowaniu zdefiniowanych transformacji na obrazie. Cohen wyobrażał sobie maszynę zdolną produkować sztukę:

 

“equipped with an archival memory, running a self-modifying program not once, but hundreds or even thousands of times, and modifying future performance on the basis of past performance”.

 

Pętla feedbacku była tutaj kluczowym pomysłem, zgodnym z tym jak ludzie tworzyli dzieła (i jak uczą się nowoczesne sieci neuronowe).

Swoje rozważania wcielił w kontrolowaną przez komputer maszynę do rysowania – “Turtle” – która poruszała się po płótnie i zostawiała ślady. Przelał w program zbiór zasad i reguł, oparte na jego wiedzy jako malarza. AARON miał wiedzę na temat wszystkich jego poprzednich pozycji i w połączeniu z zasadami, wiedział co ma zrobić dalej. Aby zapewnić procesowi rysowania autonomiczność, był wyposażony w generator liczb losowych przez co obrazy nigdy nie były takie same. Program Cohena nazwany AARON został pokazany w wielu muzeach i wystawach, gdzie na żywo tworzył dzieła.

Harold Cohen’s “Turtle” drawing machine, 1980

Widownie zdawały się natomiast być bardziej zachwycone rysującym narzędziem, niż dziełami, które tworzyło. Gdy maszyna się zatrzymywała ludzie uznali, że maszyna “myśli” co zrobić w następnym kroku i byli bardzo rozczarowani gdy Cohen wyjaśnił, że maszyna po prostu liczy w które miejsce ma się przenieść aby kontynuować rysowanie.

 

Warto zauważyć, że mimo iż program miał swego rodzaju autonomię to pętlą feedbacku był sam Cohen, który oceniał obrazy i odpowiednio modyfikował zestaw reguł i w ten sposób program rysował coraz lepsze obrazy. AARON zatem był niejako uzależniony od Cohena i od jego twórczości. Cohen pracował z/nad AARONem przez całe swoje życie. 

 

Dziś pomysł Cohena, że ludzki proces tworzenia dzieła można zasymulować jako serię reguł wydaje się być naiwny. Niemniej jednak jego intuicja odnośnie pętli feedbacku zdaje się być trafiona patrząc na sposób uczenia się współczesnych narzędzi AI tworzących obrazy (GANy, CANy).

 

Oto kilka jego prac:

Harold Cohen: Untitled, 198

Harold Cohen: AARON with Decorative Panel, 1992

 

Link do galerii na której można przejrzeć inne prace

When the Machine Made Art by Grant D. Taylor s.128

What is Generative Art? by Philip Galanter

Manfred Mohr

Manfred Mohr to niemiecki artysta, uważany za pioniera w dziedzinie sztuki cyfrowej. Urodzony 8 czerwca 1938 roku w Pforzheim w Niemczech, Mohr rozpoczął swoją karierę jako malarz akcjonista i muzyk jazzowy. W 1969 roku zaczął używać komputera do tworzenia sztuki algorytmicznej, która stała się głównym tematem jego pracy. Mieszkał w Barcelonie w 1962 roku oraz w Paryżu w latach 1963-1983, gdzie współzałożył seminarium “Art et Informatique” na Uniwersytecie Vincennes.

 

Wczesne dzieła komputerowe Mohra są algorytmiczne i opierają się na jego wcześniejszych rysunkach, z silnym naciskiem na rytm i powtarzalność. W 1971 roku miał swoją pierwszą indywidualną wystawę w ARC – Musée d’Art Moderne de la Ville de Paris, która stała się historycznie znana jako pierwsza solowa wystawa w muzeum prac całkowicie obliczonych i narysowanych przez cyfrowy komputer. W 1990 roku otrzymał Prix Ars Electronica (Golden Nica) na festiwalu Ars Electronica w Linzu w Austrii.

 

Mohr otrzymał wiele nagród, w tym w 2013 roku Distinguished Artist Award for Lifetime Achievement in Digital Art od ACM SIGGRAPH, nagrodę Digital Art Award Cologne/Berlin (ddaa) w 2006 roku oraz Golden Nica z Ars Electronica w Linzu w 1990 roku. W 1994 roku ukazała się pierwsza kompleksowa monografia jego pracy, opublikowana przez Waser-Verlag w Zurychu.

 

Twórczość Mohra cechuje jego wykorzystanie sztuki algorytmicznej do tworzenia prac geometrycznych i abstrakcyjnych. Jego prace odzwierciedlają jego zainteresowania matematyką, programowaniem komputerowym oraz badaniem związku między technologią a sztuką.

 

Przykładem algorytmu który Mohr wykorzystał do generowania grafik jest Cubic Disarray, który może być przedstawiony w następujących krokach:

 

Krok 1: Podział na bloki Najpierw obraz jest dzielony na sześcienne bloki o określonej wielkości. Bloki te są zwykle wybierane w sposób losowy, aby uzyskać bardziej interesujący efekt.

Krok 2: Przesunięcie bloków Następnie każdy blok jest przesuwany w losowym kierunku o pewną odległość. Odległość ta również jest losowa, ale zazwyczaj jest to wartość niewielka w porównaniu do rozmiaru bloku.

Krok 3: Nakładanie na siebie Po przesunięciu bloków, każdy blok jest nakładany na inny blok. W ten sposób powstaje efekt “cubic disarray”, w którym obraz wydaje się być złożony z przesuniętych i nakładających się na siebie bloków.

Krok 4: Dalsze modyfikacje W celu uzyskania bardziej interesującego efektu, można dodać dodatkowe modyfikacje, takie jak zmiana kolorów lub filtrów.

 

A tutaj przykład implementacji w Pythonie:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
from PIL import Image
import random

def cubic_disarray(img_path, block_size=1000, distortion=300, rotation=20):
    # Wczytaj obraz
    img = Image.open(img_path)

    # Określ rozmiar obrazu
    width, height = img.size

    # Podziel obraz na bloki
    x_blocks = width // block_size
    y_blocks = height // block_size
    print("x_blocks:", x_blocks)
    print("y_blocks:", y_blocks)

    # Przesuń bloki
    for y in range(y_blocks):
        for x in range(x_blocks):
            # Określ losowy kierunek i odległość
            dist = random.randint(-distortion, distortion)
            direction = random.choice(["x", "y"])
            angle = random.randint(-rotation, rotation)

            # Przesuń blok w wybranym kierunku
            if direction == "x":
                box = (x*block_size + dist, y*block_size, (x+1)*block_size + dist, (y+1)*block_size)
            else:
                box = (x*block_size, y*block_size + dist, (x+1)*block_size, (y+1)*block_size + dist)

            # Wytnij blok i wklej go w nowe miejsce
            block = img.crop(box)
            block = block.rotate(angle)
            new_box = (x*block_size, y*block_size, (x+1)*block_size, (y+1)*block_size)
            img.paste(block, new_box)


    # Zapisz nowy obraz
    img.save("cubic_disarray.jpg")

# Wywołaj funkcję z przykładowym obrazem
cubic_disarray("example.jpg", block_size=100, distortion=30)

 

Poniżej możemy zobaczyć przykład wykonania powyższego algorytmu:

 

Przykłady prac:

Manfred Mohr, P-159-N/R801, 1974

Powyższa grafika znajduje się pod linkiem: https://www.artsy.net/artwork/manfred-mohr-p-159-n-slash-r801

Piece “P-777_D” (2002/04). LCD Screen and PC

 

Inne metody tworzenia sztuki generatywnej

Spróbujmy spojrzeć na sztukę generatywną w ujęciu sztuki, która powstaje w wyniku procesów losowych lub reguł określonych przez artystę, nie musi być ograniczona wyłącznie do tworzenia za pomocą komputera.

 

Jednym z pomysłów jest wykorzystanie maszyn rysujących, które dzięki mechanizmom mogą tworzyć skomplikowane wzory i kształty. Mogą być one zaprogramowane do wykonywania określonych ruchów lub sterowane przez artystę za pomocą przełączników lub dźwigni. W ten sposób był właśnie stworzony Turtle Cohena.

 

Kolejnym sposobem jest wykorzystanie procesów stochastycznych, czyli procesów matematycznych, które generują losowe wzory lub kształty na podstawie określonych reguł lub parametrów. Przykładami takich procesów są losowy spacer, szum Perlin’a czy L-systemy. Pomimo tego, że do uzyskania sensownych wyników musimy wykorzystać komputer to fundamentalnie jest to proces bazujący na czystej matematyce.

 

Innym sposobem jest wykorzystanie procesów fizycznych, takich jak wiatr, woda czy ogień, aby stworzyć sztukę generatywną. Artysta może na przykład ustawić płótno przed wentylatorem i pozwolić, by wiatr tworzył wzory na farbie, bądź wykorzystać grawitację aby pozwolić farbie spływać po płótnie tworząc unikalne wzory.

 

Niektórzy artyści wykorzystują operacje losowe do określenia kompozycji swojego dzieła. Na przykład, mogą rzucić kostką, aby określić położenie elementów na płótnie. Jest to często wykorzystywane do tworzenia map dla kampanii DnD. Można określić przedział liczb na kostce D20 a następnie rzucić kilkadziesiąt kości na mapę. W zależności od liczb w danym miejscu powstają wioski, lasy, rzeki, jaskinie itp.

 

Inni artyści wykorzystują żywe organizmy, takie jak rośliny czy bakterie, do tworzenia sztuki generatywnej. Na przykład, artysta może wykorzystać hodowlę bakterii, aby stworzyć wzór na szalkach Petriego, bądź wykorzystać gatunek grzybów do stworzenia pajęczych sieci na obrazie.

Współczesne narzędzia

Żyjemy w czasach w których każdy z nas może zostać artystą sztuki generatywnej. OpenAI opublikowało dostępne dla każdego narzędzie Dall-e 2, Midjourney opublikowało własny, potężny model za pomocą którego, za drobną opłatą dającą komercyjne prawa, każdy może stworzyć dzieła sztuki na poziomie wieloletnich artystów digital arts.

 

DALL-E 2

DALL-E 2 to model sztucznej inteligencji, który może generować fotorealistyczne obrazy na podstawie tekstowych sugestii (prompt eng. podpowiedź, sugestia), a także manipulować istniejącymi obrazami. Proces ten obejmuje trzy kroki: kodowanie tekstu, kodowanie obrazu i dekodowanie obrazu. Tekst jest najpierw wprowadzany do enkodera tekstu, który przyporządkowuje ją do przestrzeni reprezentacji. Model prior mapuje kodowanie tekstu na kodowanie obrazu, które zawiera semantyczną informację o sugestii. W końcu dekoder obrazu stochastycznie generuje obraz na podstawie kodowania obrazu.

 

Aby połączyć semantykę tekstową i wizualną, DALL-E 2 używa innego modelu OpenAI o nazwie CLIP, który uczy się, jak powiązany jest dany fragment tekstu z obrazem. Celem szkoleniowym CLIP jest maksymalizacja podobieństwa kosinusowego między poprawnymi kodowanymi parami obrazu/napisu i minimalizacja podobieństwa kosinusowego między niepoprawnymi parami. Model prior w DALL-E 2 mapuje kodowanie tekstów opisów obrazów na odpowiadające im kodowanie obrazu. Model używa zmodyfikowanej wersji GLIDE do generowania obrazów, który uczy się odwracać proces kodowania obrazu, aby stochastycznie dekodować osadzenia obrazów CLIP.

 

DALL-E 2 demonstruje moc Modeli Dyfuzyjnych w uczeniu głębokim, podkreślając wagę wykorzystywania języka naturalnego jako środka szkolenia najnowocześniejszych modeli Deep Learning. Transformery są również potwierdzone jako niezwykle wydajne dla modeli szkolonych na zbiorach danych o skali internetowej, ze względu na ich imponującą zdolność do równoległego przetwarzania. Podsumowując, DALL-E 2 to potężny model AI, który ma duży potencjał do zastosowań w sztuce generatywnej, projektowaniu i innych dziedzinach.

 

Przykłady generowanych obrazów i ich podpowiedzi

napoleon cat landscape with mountain, forest, grass field and river in the middle in digital art style with a sunrise cup of coffee with a colorful portal to another universe

Midjourney

Midjourney to niezależne laboratorium badawcze, które pracuje nad modelem sztucznej inteligencji o tej samej nazwie, który tworzy obrazy na podstawie opisów tekstowych, podobnie jak DALL-E i Stable Diffusion firmy OpenAI. Spekuluje się, że technologia ta opiera się na Stable Diffusion. Narzędzie jest obecnie w otwartej becie, która rozpoczęła się 12 lipca 2022 r. Zespół Midjourney jest kierowany przez Davida Holza, współzałożyciela Leap Motion. Holz powiedział The Register w sierpniu 2022 r., że firma jest już rentowna. Użytkownicy tworzą sztukę z Midjourney, używając poleceń bota Discord.

 

Firma pracuje nad doskonaleniem swoich algorytmów, wypuszczając nowe wersje co kilka miesięcy. Wersja 2 ich algorytmu została uruchomiona w kwietniu 2022 roku, a wersja 3 w lipcu. 10 listopada 2022 r. użytkownikom udostępniona została alpha iteracja wersji 4.

 

Midjourney jest obecnie dostępne tylko poprzez bota Discord na oficjalnym serwerze Discord, poprzez bezpośrednie wiadomości do bota lub poprzez zaproszenie bota na serwer innej strony. Aby wygenerować obrazy, użytkownicy używają polecenia /imagine i wpisują opis. Następnie bot zwraca zestaw czterech obrazów. Użytkownicy mogą wybrać, które obrazy chcą ulepszyć. Midjourney pracuje także nad interfejsem internetowym.

 

Założyciel Midjourney, David Holz, mówi, że widzi artystów jako klientów, nie konkurentów Midjourney. Holz powiedział w wywiadzie dla The Register, że artyści korzystają z Midjourney do szybkiego prototypowania koncepcji artystycznych, które pokazują klientom, zanim sami rozpoczną pracę. Ponieważ zestaw treningowy Midjourney może obejmować dzieła artystów chronione prawami autorskimi, niektórzy artyści oskarżyli Midjourney o obniżanie wartości oryginalnych dzieł twórczych. Warunki korzystania z Midjourney zawierają politykę DMCA takedown, która umożliwia artystom żądanie usunięcia swojej pracy ze zbioru, jeśli uważają, że występuje naruszenie praw autorskich.

napoleon cat landscape with mountain, forest, grass field and river in the middle in digital art style with a sunrise cup of coffee with a colorful portal to another universe

Podsumowanie

Sztuka generatywna to fascynujący podzbiór sztuki, który wykorzystuje zaawansowane narzędzia generujące, aby tworzyć potencjalnie nieograniczoną ilość dzieł sztuki. Dzisiaj, dzięki coraz bardziej dostępnym narzędziom i oprogramowaniu, każdy może spróbować swoich sił w sztuce generatywnej i eksperymentować z procesami twórczymi.

 

Bibliografia

Galanter, P. (2003). What is generative art. Complexity theory as a context for art theory.

Taylor, G. D. (2014). When the Machine Made Art: The Troubled History of Computer Art.

Timeline: Manfred Mohr –  50 plus Years, 1969 to present, of Creating Computer Generated Art by Writing Algorithms. (n.d.). http://www.emohr.com/ManfredMohr_50YearCelebration_TimeLine.html

O’Connor, R. (2023, January 7). How DALL-E 2 Actually Works. News, Tutorials, AI Research. https://www.assemblyai.com/blog/how-dall-e-2-actually-works/

Hughes, A. (2023, February 7). Midjourney: The gothic AI image generator challenging the art industry.BBC Science Focus. https://www.sciencefocus.com/future-technology/midjourney/


Leave a comment

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Najnowsze komentarze

  1. Ciekawe jest porównanie tradycyjnej terapii z nowymi rozwiązaniami opartymi na modelach językowych. Warto zauważyć, że mimo obiecujących wyników, istnieją ważne…