nd B) daylight autonomy for a single room. A and B are therefore the conflicting objectives, and are connected to the O of octopus component. The geometry iterated is that of a window, on one of the rooms' facades.
I have a grasshopper definition that iterates the window by changing:
1. Window height
2. Window sill height
3. Window width
4. Window position from one side of the wall
1,2,3,4 are therefore the genes. A combination of these genes is a complete window, which is the chromoshome, that i will from now on call solution. All genes are connected to the G of octopus component.
Now regarding the octopus settings, i have these questions so that i can properly calibrate the settings (mutarion rate, crossover rate etc):
1.In the beginning of the octopus simulation, how many are the random solutions generated? (By random i mean totally random, not resulting solutions from mutation or crossover of previous solutions, i am talking about the very first generation). Is this number connected to the population size? Is it 6? How is it defined by octopus? Can somebody control it?
2.The first generation finishes when the number of "individuals to be evaluated" is reached. Then octopus jumps to the second generation. To do so, it keeps a specific number of solutions of the first generation, the so called elite. What is the number of these elite? Is it elitism x population size?
3.The SPEA2 original paper describes step wise the algorithm loop. During the loop, a number of solutions is stored in the elite domain, and from that domain, a number of solutions is used for mating. There are therefore two numbers, one that defines the number of solutions to enter the elite domain, and one that defines the number of solutions to be inserted in the mating pool. In octopus i only see elitism as a setting, which i am guessing is what defines the number of solutions to enter the elite domain. Is that true? How do i define the number of solutions to be copied in the mating pool, where mutation and crossover will occur? This number should be called tournament size, but i can't seem to find it..
4.Why is it that DURING one generation, the number of "individuals to be evaluated" can decrease? Is it because octopus finds out that there are no more possible solutions? (i am using discrete values for the genes)
5.The gene of window width, represented by a grasshopper slider, has 4 possible values: 0,1,2,3. Assuming that the mutation rate is 0.5. Does this mean that mutation of the gene can happen to an extent of 0.5 x 4 = 2? Meaning that the slider position can change for 0 to 2 or from 3 to 1 etc?
6.The mutation probability is dictating whether or not a gene will be mutated, or whether or not the whole solution will be mutated? So for instance, with a mutation probability of 0.5, does it mean that 2 out of the 4 genes are going to be mutated, or 2 out of 4 solutions is going to be mutated. If its the second case, then how is mutation divided between the different genes? Meaning, which of the 4 genes is going to get mutated? Is it random? Is it for all 4 genes?
7.Crossover can occur between 2 subsequent solutions. Crossover rate dictates whether or not crossover will take place? If so, then, assuming that it was chosen for crossover to take place between 2 solutions, which of the genes are going to be exchanged. I mean how many, out of the 4 genes (height, sill height, width, position). Is it random?
8.After clarifying the previous 7 questions, i can run a simulation. Then, is there an indicative number that i can be monitoring, to see that no more generations are required? I know that a good pareto has to be short, with a lot of solutions and with a uniform distribution. But is there a specific number output somewhere, that can inform me that a good pareto has more or less been generated? If there is such indicator...
Thank you all,
i hope this can help others as well,
Iason
…
de in Italy: gli architetti Arturo Tedeschi, computational designer e autore del bestseller “Parametric Architecture with Grasshopper” e Maurizio Degni, i fashion designer Flavia Migani, Simone Bruno e Chiara Cola ed infine dello shoe designer Alessio Spinelli, vincitore del concorso Who’s On Next 2011 nella categoria Accessori.
Frutto della loro energia e sinergia emozionale è un’opera corale che fonde le singole discipline nel rispetto delle loro identità, generando un innovativo manifesto espressivo e produttivo basato sull’integrazione dei tradizionali strumenti di disegno con processi parametrici elaborati al computer, oramai potente sistema d’indagine e sperimentazione formale per ogni disciplina artistica.
L’installazione, composta da quattro abiti completi e due calzature collocati all’interno di una scultura parametrica in costante dialogo con lo spazio espositivo, è il punto d’incontro tra decenni di ricerca teorica e una nuova consapevolezza progettuale. Il contributo musicale di Davide Severi, la documentazione dell’intero processo creativo e i video firmati da Francesco Ricci Lotteringi si offrono allo spettatore coinvolgendolo in un apprendimento multidisciplinare.
__
In the evocative setting of the Cloister of Bramante, from July 7th to 10th, a new project created by Double comes to life: NU:S.
An extraordinary and engaging installation, which examines the contamination between Fashion and Architecture and attempts to break the mold of the Roman art scene taking advantage of the important creative contribution of young and talented members of Made in Italy: the architects Arturo Tedeschi (computational designer and author of the bestselling "Parametric Architecture with Grasshopper ") and Maurizio Degni; the fashion designers Chiara Cola, Simone Bruno, Flavia Migani, and Alessio Spinelli (shoe designer winner of the 2011 Who's On Next in Accessories category). The concept and the creative direction are the undertaking of Antonella Buono. The result is a harmonious work that merges the individual disciplines while respecting their identities creating an innovative expressive manifesto, thanks to the use of a revolutionary architectural language: the parametricism .
Parametricism is a paradigm which utilises digital models generated through new techniques of computer programming, which today can be considered as equally powerful systems of investigation and formal experimentation, as are considered conventional drawing tools.
The installation, which is the culmination of decades of theoretical research and a new planing knowledge, consists of four dresses, complete with accessories, which are located within a parametric framework in constant dialogue with the exhibition space, involving the audience in a multidisciplinary learning process.
The installation soundtrack was composed by Davide Severi, a talented musician with a substantial knowledge of reinassance music and strong digital music background.
…
ional form into a new innovated one respecting each one identity, focusing on customized and multifunctional units using adaptive design strategy.A competitive workshop for participants to have the ability to win a competition, how to deal with its requirements and submission specifications also how to work in a group at a deadline submission under pressure and reaching the maximum level of qualifications.The workshop will provide the participants with a knowledge through lectures talking about imagination thinking, design strategies, presentation new techniques and others reflecting these knowledge into a real project using parametric tooling techniques with presentation skills to facilitate participants to do their design.For Detailed Program: niitstudio.com/Recode.pdfEligibility:- Current architecture, interior and product design students or professionals.- Basic knowledge of Photoshop and 3D modelling.- Bringing own laptop.Software- Rhino: Nurbs / Modeling / T-Spline.- Grasshopper: Forming / List arrangement / Simulations .- Photoshop: Photomontage / Post production / layout composition.TutorsNIITStudio Design TeamDuration7 Days / 56 hoursFeesProfessionals: 1500 LEStudents: 1200 LENiiters*: 900 LE//Limited SeatsRegistration : http://goo.gl/forms/NECYhniZzWWebsite : www.NIITStudio.comE-mail : info@niitstudio.comMob: +2 010 027 254 57 | +2 012 825 225 44Niiters*: Previous participants of NIITStudio's workshops…
azione parametrica e generativa attraverso Grasshopper, plug-in di programmazione visuale per Rhinoceros 3D (uno dei più diffusi modellatori NURBS per l‘architettura e il design). Il workshop mira a gestire e sviluppare il rapporto tra informazione e geometria lavorando sui sistemi ad involucro in condizioni specifiche.La discretizzazione di superfici (pannellizazione Nurbs o Mesh), la modellazione delle geometrie attraverso informazioni (siano esse provenienti da analisi ambientali, mappe o database) e l’estrazione e la gestione di queste informazioni, richiede la comprensione di strutture di dati al fine di gestire completamente processo che va dalla progettazione alla costruzione.I partecipanti impareranno come costruire e sviluppare strutture di dati parametrici per informare geometrie ‘data-driven’ e come estrarre le informazioni rilevanti da tali modelli per il processo di costruzione.
Modulo 2 – Il workshop, volto a promuovere le nuove tecnologie digitali di supporto alla progettazione e alla fabbricazione, esplorerà l’integrazione tra design e prototipazione tramite processi di stampa 3d di materiale ceramico al fine di comprenderne allo stesso tempo sia il comportamento del materiale che i vincoli e le opportunità offerte dall’utilizzo di tali tecnologie.Infatti utilizzando grasshopper ed una macchina a controllo numerico i partecipanti apprenderanno le modalità per la generazione parametrica dei modelli e la creazione del codice per la loro prototipazione (Gcode creato direttamente in Grasshopper). Il workshop darà quindi ai partecipanti la possibilità di testare direttamente i loro elaborati digitali stampandoli in modo da comprendere come le informazioni articolate tramite tali strumenti di design producano specifici effetti sia morfologici che estetici.…
used of 180 being for the northern hemisphere and 0 for the southern hemisphere.For the optimal tilt, to my knowledge, they are mostly based on correcting location's latitude through a single formula.TOF component is more sophisticated. It essentially replicates the Solmetric's Annual Insolation Lookup tool.What it does is that it creates a grid of points. Each point represents the calculated annual insolation on the surface (PV module, SWH collector, facade, any kind of surface) for a single tilt and azimuth angle.Each point is then elevated according to the annual insolation values. The mesh is created from that grid of points. The portion of the mesh which is the highest, represents the optimal tilt and azimuth angles. So the higher your "precision_" input is, the more points in a mesh you'll have - thus the more precise final optimal tilt and azimuth will be.For the diffuse component of the annual incident solar radiation for each point the Perez 1990 modified model is used. Direct is from classical cosine law, and Ground reflected component from Liu and Jordan (1963).So TOF component calculates the optimal tilt and azimuth based on annual incident solar radiation, not AC energy....…
y part of existing files, you typically mark the old component as [Obsolete]* and write an entirely new component which has the changes. This allows you to open old files and have them work in the same way as before, by loading the obsolete component instead of the current one. You can then choose to add an automatic upgrader which is a class which knows how to replace an obsolete component with an updated version in situ. You can load all upgraders via the Solution->Upgrade Components... menu.
An upgrader is a class which implements the IGH_UpgradeObject interface. There's also a GH_UpgradeUtil class which provides some useful static methods for doing common upgrade stuff. For example, here's the upgrader for the [Polygon Centre] component:
public class Upgrade_PolygonCenterComponent : IGH_UpgradeObject { public Guid UpgradeFrom { get { return new Guid("{7BD7B551-CA79-4f01-B95A-7E9AB876F24D}"); } } public Guid UpgradeTo { get { return new Guid("{87E7F480-14DC-4478-B1E6-2B8B035D9EDC}"); } } public DateTime Version { get { return new DateTime(2011, 12, 7, 16, 30, 00); } } public IGH_DocumentObject Upgrade(IGH_DocumentObject target, GH_Document document) { IGH_Component component = target as IGH_Component; if (component == null) { return null; }
IGH_Component upgradedComponent = GH_UpgradeUtil.SwapComponents(component, UpgradeTo); Grasshopper.Kernel.Parameters.Param_Point extraParameter = new Grasshopper.Kernel.Parameters.Param_Point(); extraParameter.Name = "Center(E)"; extraParameter.NickName = "Ce"; extraParameter.Description = "Average of polyline edges"; upgradedComponent.Params.RegisterOutputParam(extraParameter);
return upgradedComponent; } }
* This can be done either by adding the string "OBSOLETE" to the component class name, or by adding the [Obsolete] attribute to the component. Do note you have to change the exposure to Hidden, otherwise the obsolete component will still show up on the panels.…
Added by David Rutten at 9:36am on October 21, 2017
ame Rate, Stop Watch, and Is Key Pressed. You can read more about all the new tools here.
A lot of additional work has gone into the Arduino Code Generator and the new Firefly Code Editor (which can be invoked by double-clicking on the Code Generator component). Many new functions have been added to the function library for the Code Generator (including almost all of the latest Firefly components). In addition, the Code Editor has gone through a major overhaul to add many more features. There are still plenty of other features that have to be added to the Code Editor to make it a fully functional IDE, but the current changes are a big step in the right direction.
Today also marks the first release of the Firefly Kinect related components. Microsoft has placed certain restrictions on applications that want to use their official SDK, and as such this version will only work with Rhino 5.0 beta 32-bit version. In addition, you must have Windows 7 installed on your machine. Because of these restrictions, I have decided to release the Firefly Kinect build as a separate download. There are installation instructions included in the download file with step-by-step instructions on how to get up and running with the Kinect for Grasshopper. Currently, there is only one component, the Skeleton Tracker which will track up to two people moving in front of the sensor. Videos of the Skeleton Tracker in action can be seen here and here. I intend to add more functionality and new Kinect related components in the near future. Suggestions are always welcome. And, because this is the first release, please let me know if you find any bugs or problems with the component (hopefully there wont be many of these, but please be patient).
You can download the latest version of Firefly (1.0063) and the beta release of Firefly Kinect either of these two sources:
http://www.fireflyexperiments.com/download/
http://www.food4rhino.com/project/firefly
…
IME. DO NOT COMPOUND HAVING A LATE PROJECT WITH ALSO MISSING CLASS.
Readings/Discussion:
Digital Pin-Up
Class Dropbox Resources:
https://www.dropbox.com/sh/mv8ugl1pqu3x8vf/AADa0gbxpyKI_6VI8uYtZdap...
Exercise:
Kangaroo
Galapagos
Links:
The Bad Cafe
http://www.archdaily.com/796873/the-bad-cafe-nudes
50 Digital Joints
http://www.archdaily.com/797107/50-downloadable-digital-joints-for-woodworking
Fun DC Stuff This Week
http://dcist.com/2016/10/16_of_our_favorite_events_in_dc_thi.php
Lean Urbanism
http://leanurbanism.org/
Augmented Reality
http://www.archdaily.com/796616/limelight-projects-psychedelic-augmented-reality-lightshow-onto-the-romanian-parliament-building
Photovoltaic Facade
http://www.archdaily.com/796704/60-storey-tower-maximizes-energy-capture-with-photovoltaic-facade
New Office Pods
http://www.archdaily.com/796317/mit-and-google-team-up-to-create-transformable-office-pods…
ink you shared back then is not valid anymore.
I would really appreciate it. Thank you,
Helena
---------------------------------------------------------------------------------------------
Permalink Reply by Mostapha Sadeghipour Roudsari on November 30, 2015 at 6:35pm
Hi Caludio and Tatos,
For Daylight modeling you can use Radiance's image-mapping. I published a paper recently that discusses the process (http://www.simaud.org/2015/program.php#a-new-approach-to-modeling-f...). They haven't send it online but I can email you the paper if you're interested to read it in details.
Permalink Reply by Mostapha Sadeghipour Roudsari on November 30, 2015 at 7:44pm
Here is the link to the paper: https://copy.com/okY7JzPoVjbF6LrL
…
cribes a set of machine movements in X, Y and Z (Z being Pen Up and Pen Down) directions. It very closely related to G-code in this way - just slightly more simple than G-code overall.
For tool selection you use the Select Pen - SPx - command, x is the number of the pen you are using. As I'm using a vinyl cutter without a pen/tool changer I just use SP1 in the file header/ini of the cutter.
Without knowing the full spec of your machine it is hard to say for certain BUT all of my experience with CNC machines - of all sizes and spec levels - the actual control files are pretty much the same. Very simple text based HPGL or G-code text files run all motion control - even on things like 7 axis robot arms etc. For plotting I'd expect you'd be able to get a usable HPGL/PLT file without a lot of work - its just a matter of matching the file to what the machine is expecting.
To answer your question about getting the file to the printer its maybe best to explain it this way: there are two parts to this project1/ Create the correctly formatted text/hpgl/plt file ready to send to the printer2/ Send the file to printer
For part 1/ the procedure is:
Select the curves you want to printConvert the curves into a set of pointsFormat these points into HPGL Save this HPGL as a text file
For 2/ we need a way to stream the text file to a printer port
To do this I've used an old dos command line technique that allows allow you to 'copy' a text file to a printer LPT or COM port:
copy /b c:\spool\ini.plt LPT1
Type the above into a DOS command line and it will send a text file called ini.plt to the printer on LPT1 port. As you'll see in my attached code I use os.system calls in my python code to send files when needed.
So your original code was doing some strange things with the conversion from curves to points. Lines/Polylines were OK - with the code just using the line end points. For curves and polycurves the code code was exploding these into segments and then dividing into set of points. However this led to two issues: - curves that started off as closed polycurves would end up being plotted as open curve segments - which is not very good for a cut file and not very smooth for a plot file.- the division of the curves to points was by distance - and if this wasn't an exact division of the length of the curve the end point would not match up with the next line - again not ideal for a cutting file which needs to be a closed curve.
To solve the above I changed to using rs.ConvertCurveToPolyline - with the tolerance set to match the HPGL resolution of 0.025mm - this converts all curves needed to plot to polylines, leaves everything closed and ends points line up perfectly.
I had one other problem with my setup - I ran into a file size/curve number/plotting points upper limit. A small number of curves would cut/plot fine, however at a certain number in one file the print driver would throw an error and the plotter would not even start plotting the file. I could not work out where is the system this limit was being imposed. The current working version of my code is attached - it gets around this file size limit by creating a separate print file for each curve required and sending them to the plotter in sequence. Not as completely tidy as I'd like as it flashes up a cmd window on every loop - but plots/cuts are perfect.
The final 'nice touch' for the project is I've created a custom tool bar button to run the script - all I have to do to cut a file is hit the button on the tool bar, select the curves and hit enter = SO EASY!
I've attached my latest code, a sample HPGL file to plot a rectangle, and a screen shot of setting up the custom toolbar button.
Cheers
DK…