Archive

Archive for the ‘O co chodzi’ Category

Grasshopper – Poradnik cz. 1 – Atraktory /średnio zaawansowany/

April 24th, 2011 10 comments

Grasshopper – Poradnik cz. 1 – Atraktory

/średnio zaawansowany/



Grasshopper ? Podstawy cz. 1
Grasshopper ? Podstawy cz. 2
Grasshopper ? Podstawy cz. 3

Temat poradnika

Jeżeli dopiero zaczynasz swoją przygodę z Grasshopper’em – przeczytaj najpierw trzy części podstaw. Linki znajdziesz u góry.
Ćwiczenie opracowane dla Grasshopper built 0.8010. Niemniej jednak wszystko co tu opiszę da się wykonać identycznie nawet w dużo starszych wersjach programu.

     Pierwszą część poradnika dla średnio zaawansowanych poświęcam atraktorom. Znajomość podstaw jest wymagana, stosuję w tym ćwiczeniu wiele skrótów myślowych.

Dlaczego atraktory ?

     Pomijając swoją skomplikowaną definicję encyklopedyczną, atraktory są bardzo łatwym zagadnieniem dla “adeptów” Grasshopper’a. Rządzą się bardzo prostym prawem – “im bliżej tym… im dalej tym… “. W ćwiczeniu nie będzie nawet “zabawy” z listami danych – w tej kwestii użyjemy bardzo prostych komponentów. Mimo to na forum Grasshopper’a pojawiają się jednak co jakiś czas pytania o atraktory, w szczególności o to jak użyć większej ilości punktów “atrakcyjnych” ;) . W naszym ćwiczeniu będziemy mogli zastosować dowolną ilość atraktorów.
Read more…

Grasshopper – Podstawy cz. 3

March 27th, 2011 14 comments

Grasshopper ? Podstawy cz. 3



Grasshopper ? Podstawy cz. 1
Grasshopper ? Podstawy cz. 2
Grasshopper ? Poradnik cz. 1 ? Atraktory /średnio zaawansowany/

Przejdź do spisu treści

Opis wybranych komponentów

Opracowane dla aktualnie najstabilniejszej wersji Grasshopper’a – built 0.8004

Ten tutorial jest ostatnim tutorialem opisującym podstawy znajomości Grasshoppera. Następnę będą już o bardziej skomplikowanych zadaniach jakie możemy rozwiązać za pomocą tego wspaniałego programu.

Read more…

Grasshopper ? Podstawy cz. 2

February 15th, 2011 24 comments

Grasshopper ? Podstawy cz. 2



Grasshopper ? Podstawy cz. 1
Grasshopper ? Podstawy cz. 3
Grasshopper ? Poradnik cz. 1 ? Atraktory /średnio zaawansowany/

Listy danych


     W drugim tutorialu zajmiemy się listami danych. Tak jak pisałem w pierwszym poradniku,
jest to bodajże jedna z najważniejszych rzeczy do opanowania w Grasshopperze (często bagatelizowana w innych poradnikach). Komponenty odpowiedzialne za porządkowanie naszych danych, znajdują się w kategorii komponentów “Sets” (o kategoriach pisałem w pierwszym tutorialu).

W jaki sposób Grasshopper porządkuje dane ?

     W odróżnieniu od innych programów, Grasshopper daje wgląd w to jak sam działa.
Widzimy w jaki sposób porządkuje dane przed użyciem funkcji, a także jak one wyglądają po jej użyciu. Dzięki temu możemy szybciej dostrzec gdzie w naszym projekcie kryje się błąd. Listy danych porządkowane są wg. adresu w postaci “{A;B;C…}” oraz indeksu danej wartości “(i)”. Każda funkcja (komponent), który modyfikuje w jakiś sposób naszą listę danych, zmienia adresy list poprzez dodanie kolejnej liczby. Dla przykładu mając 10 punktów referencyjnych w komponencie “Pt”, ich adres będzie wyrażony jako “{0}”, kolejność wprowadzenia punktów natomiast będzie stanowiła o ich indeksie “(i)”. Zmodyfikowanie punktów np. poprzez “cull pattern” (usuwanie wg. deseniu) wprowadza nam do adresu kolejną liczbę; adres wygląda teraz tak : “{0,0}” .

Zmiana długości adresu po zastosowaniu komponentu

Read more…

Grasshopper ? Podstawy cz. 1

February 3rd, 2011 48 comments
W statystykach odwiedzin widzę, że ten tutorial jest najczęściej odwiedzanym spośród poradników nt. Grasshopper’a. Prosiłbym czytelników, o wpisanie w komentarzach powodu dla którego nie przechodzą do tutoriala 2 3 i 4. Pomoże mi to lepiej dostosować poziom trudności następnych poradników.

Z góry dzięki,
MZ

Grasshopper ? Podstawy cz. 1



Grasshopper ? Podstawy cz. 2
Grasshopper ? Podstawy cz. 3
Grasshopper ? Poradnik cz. 1 ? Atraktory /średnio zaawansowany/

Czym jest grasshopper ?

Grasshopper to plug-in dla Rhino stworzony w celu wprowadzenia ?pod strzechy?
tego programu możliwość projektowania parametrycznego. Wtyczka jest darmowa (w przeciwieństwie do samego Rhino) i jest do pobrania na oficjalnej stronie Grasshopper’a

Więcej na temat samego projektowania parametrycznego (lub inaczej komputacyjnego) znajdziecie w poście kolegi Przemka Jaworskiego


Interface ? czyli do czego służą te wszystkie komponenty ?

Po uprzednim zainstalowaniu Grasshopper’a, włączamy Rhino, wpisujemy w wiersz poleceń komendę ?Grasshopper?. Otwiera się nowe okno ? to podstawowe okno wtyczki. Na obrazku widzimy : po lewej puste ?płótno? (tłumaczenie z angielskiego ?canvas?, dalej będę się posługiwać słowem ?płótno? do określania pola roboczego w Grasshopperze), po prawej pusty projekt w Rhino. Nie będę się rozpisywał na temat samego Rhino i jego funkcji, niemniej jednak jeśli byście chcieli się czegoś dowiedzieć, pytajcie w komentarzach.

GHtut1il1Podstawowe okno wtyczki (po lewej)
GHtut1il1Narzędzia w programie

Read more…

Projektowanie komputacyjne

February 1st, 2010 10 comments

23 października w ramach Szczecińskiego Westivalu, wygłosiliśmy razem z Michałem Piaseckim wykład pod tytułem ‘projektowanie komputacyjne’. Przy okazji publikacji tekstu wykładu w materiałach organizatorów Westivalu, postanowiliśmy także opublikować go online.

 

Projektowanie komputacyjne w architekturze  

 

Projektowanie komputacyjne to zagadnienie, które w ostatnim czasie szybko zyskuje na popularności. Obecnie dobrze zakorzenione w przemyśle samochodowym i lotniczym, powoli zaczyna wkraczać także jako narzędzie do świata architektury. Dlaczego? Ponieważ technologie projektowania wspomaganego komputerowo, oraz przede wszystkim fabrykacji stają się coraz bardziej dostępne i tańsze, a co za tym idzie, wzrasta dostępność produkcji niestandardowych elementów na masową skalę (tzw. ?mass customization?).

Jak pisał Adrian Beukers i Ed van Hinte w swoim eseju ?Lightness? (?Lekkość?), ?W naturze kształt jest tańszy niż materiał?, zwracając uwagę na to, że koszt wytworzenia formy może być dużo niższy, jeśli znajdziemy optymalne rozwiązania strukturalne lub topologiczne opisujące problem projektowy. Nie jest już dzisiaj niczym zaskakującym, że dokonując strukturalnej optymalizacji topologii połączeń w mega-konstrukcjach można zaoszczędzić do 50% materiału.

Projektowanie komputacyjne, poprzez użycie różnych technik takich jak algorytmy genetyczne i sztuczna inteligencja, razem z metodą elementów skończonych, lub innymi technikami optymizacyjnymi, może pomóc zdefiniować problem projektowy w zupełnie inny sposób i znaleźć nową, często zaskakującą odpowiedź. Czy jest to problem czysto geometryczny, tak jak panelizacja podwójnie zakrzywionych powierzchni, czy też strukturalny, jak minimalizacja stresów w przestrzennej kratownicy, z pomocą mogą przyjść programy lub skrypty pisane w różnych językach oraz narzędzia do modelowania parametrycznego, takie jak Generative Components oraz Rhino Grasshopper. Modelowanie parametryczne pozwala na definiowanie hierarchicznych zależności pomiędzy obiektami geometrycznymi zamiast statycznego układu brył w przestrzeni, do którego przyzwyczajone są osoby korzystające z bardziej standardowych narzędzi CAD. Modelowanie parametryczne, które pozwala na szybkie przeglądanie wersji potencjalnych rozwiązań, jest dzisiaj coraz powszechniej stosowane w projektowaniu stadionów, wieżowców, części fasad, dachów jak i niewielkich detali konstrukcyjnych.

Terminologia związana z projektowaniem komputacyjnym podlega ciągłej transformacji, ponieważ dziedzina jest nowa i wciąż szybko się rozwija. Dosyć szeroko przyjęte jest odróżnianie ?projektowania parametrycznego? od ?projektowania generatywnego?:

Projektowanie parametryczne to proces w którym wynikowa forma jest zazwyczaj jedną iteracją (przebiegiem) informacji geometrycznych przez ?drzewo? hierarchicznych zależności pomiędzy elementami. Po wykonaniu takiej iteracji, otrzymujemy parametryczny model, który jest topologicznie statyczny, możemy za to zmieniać jego geometrię (skalować, rozciągać, manipulować parametrami).

 wf_smithsonian_

Projektowanie generatywne to proces w którym forma jest generowana na podstawie wielokrotnych iteracji, zazwyczaj dodawania/odejmowania elementów, lub dzielenia ich na mniejsze pod-elementy. Za narzędzia używane w projektowaniu generatywnym można uznać algorytmy genetyczne, sieci neuronowe, oraz wszystkie algorytmy wykorzystujące procesy symulacji sztucznego życia, takie jak automaty komórkowe, systemy samo-organizujące się, systemy cząsteczek-agentów, oraz pomocniczo systemy bazujące na metodzie elementów skończonych (finite element analysis), takie jak dynamiczna relaksacja.

wzrost fototropicznyProjektowanie komputacyjne w praktyce architektonicznej

Jednymi z pierwszych spektakularnych projektów wykonanych z użyciem projektowania parametrycznego był Swiss Re (tzw. ?ogórek?) w Londynie, autorstwa biura Foster+Partners (2004), Centrum handlowe O2 w Birmingham (Future Systems 2003) oraz Kunsthaus w Graz w Austrii (Peter Cook + Colin Fournier 2003). Technikami projektowania parametrycznego posługuje się dzisiaj wiele znanych biur architektonicznych i inżynierskich, takich jak HOK Sport, Arup, Grimshaw+Partners, Zaha Hadid architects, Frank Gehry czy Aedas.

examples_
 
Również duża ilość projektów generatywnych doczekała się już realizacji. Przykładem może tu być szklane zadaszenie dziedzińca British Museum, gdzie użyto algorytmu dynamicznej relaksacji dla zoptymalizowania sił i wielkości paneli. Innym jest realizowne obecnie zadaszenie stacji metra w Neapolu projektu Rogers Stirk Harbour + Partners. W tym projekcie konstruktorzy – firma Expedition Engineering – postanowili wykorzystać algorytmy genetyczne, żeby zoptymalizować dystrybucję elementów strukturalnych zadaszenia ze względu na ilość światła dziennego penetrującą wnętrze stacji. Optymalizacja z użyciem ewolucji polega na hodowaniu kolejnych generacji potencjalnych rozwiązań w których osobniki stosunkowo dobrze spełniające zadane kryteria przekazują swoje cechy kolejnym. W tym przypadku optymalizowano na przestrzeni 70 generacji, każda po 400 osobników.

rogers_stirk_harbour_neapol_

Obszarem zastosowań algorytmów generatywnych jest również urbanistyka, ponieważ użycie zasad samo-organizacji może pomóc w odnalezieniu układów przestrzennych które są lepsze od tych zaprojektowanych tradycyjnymi metodami na przykład pod względem komunikacyjności lub dystrybucji ze względu na nasłonecznienie. ?Agentom?, które reprezentują bloki zabudowy, można na przykład zadać zadanie znalezienia pozycji i orientacji umożliwiającej najlepsze skorzystanie z dostępnych widoków, oraz dostępu do naturalnego światła. Poprzez lokalne negocjacje na niskim poziomie hierarchii, otrzymujemy globalne (całościowe) rozwiązanie uwzględniające interesy każdego z podmiotów symulacji.

Układ, którego globalny stan jest czymś więcej niż sumą lokalnych stanów wszystkich jego elementów nazywany jest układem emergentnym. Emergencja to zjawisko związane z wykorzystaniem prostych reguł działania na lokalnym poziomie (interakcji pomiędzy pojedycznymi agentami), do stworzenia ?kolektywnej? inteligencji na globalnym poziomie całego stanu układu.

Cyfrowe wspomaganie wytwarzania

Wszystkie powyżej opisane techniki zyskują coraz szersze zastosowanie w architekturze, ponieważ znacząco rozwijają się możliwości cyfrowego wspomagania wytwarzania, czyli tzw. cyfrowej fabrykacji. Projektowanie parametryczne i generatywne pozwala automatycznie dostosować elementy projektu do wybranej technologii fabrykacji. Takie ?dopasowanie? do fabrykacji, staje się poprostu jeszcze jednym kryterium optymalizacji. Najczęstszym przykładem jest tutaj np. podzielenie dowolnej przestrzennej, podwójnie zakrzywionej formy/powierzchni na elementy płaskie (np szklane panele), współdzielące ze sobą krawędzie (bez pomocy generatywnych procesów jest to bardzo trudne lub wręcz niemożliwe). Można też optymalizować obiekty tak, aby zużywały jak najmniej materiału. Technologie cyfrowego wspomagania wytwarzania dzielą się na addytywne, subtraktywne i formatywne.

Technologie addytywne polegeją na nakładaniu i łączeniu kolejnych warstw materiału. Popularna nazwa tych technik to ?druk 3d?. Dzisiaj można drukować na drukarkach proszkowych, nylonowych (drukujących plastikiem), lub nawet takich które układają na sobie warstwy metalu. Nowością (jeszcze niedostępną komercyjnie) jest olbrzymia drukarka budowana przez firmę D-Shape, która może drukować cementem w dużej skali (obszar roboczy to 3x3x3 m). Koszty druku 3d szybko maleją a produceni drukarek zapowiadają technologie, które spowodują, że druk 3d będzie niebawem tak popularny jak druk 2d – używający kartek i atramentu. Byłaby to prawdziwa rewolucja w projektowaniu produktu. W architekturze druk 3d jest na razie wykorzystywany do produkcji modeli.

3d_printing_

 

Technologie subtraktywne to te które polegają na odejmowaniu materiału. Przykładami jest frezowanie CNC i cięcie laserowe. Ograniczenia materiałowe są w tym przypadku niewielkie a skala wykonywanych elementów może sięgać kilkunastu metrów, stąd to te technologie są najczęściej wykorzystywane w architektonicznych realizacjach.

 cnc

 
Technologie formatywne to na przykład użycie robotów do układania elementów konstrukcji. Dobrym przykładem jest tutaj parametryczna ściana winnicy, projektu duetu Gramazio & Kohler, stworzona za pomocą robota firmy KUKA.

kuka
 
Projektowanie komputacyjne może ale nie musi wiązać się z estetyką dominującą obecnie wśród niektórych star-architektów. Jednym z najważniejszych aspektów omówionych technik jest optymalizacja, która zapewnia bardzo dobre wykorzystanie budżetu projektu oraz stworzenie przestrzeni funkcjonującej w odpowiedni sposób. Wzbogacenie polskich pracowni architektonicznych o narzędzia parametryczne i generatywne oraz wprowadzenie tej tematyki na uczelnie jest jednym z warunków, które polska architektura powinna spełnić by pozostać konkurencyjna na rynku międzynarodowym.

 

Przemysław Jaworski (Foster+Partners, SMG) www.projektowanieparametryczne.pl

Michał Piasecki (Bartlett, UCL) www.michalpiasecki.com