workshop ıı MUSTAFA EL-SAYED
DAHYUN KIM CHENLONG GU ASEEM AHMED MELIS KUCUKTUNC OGULCAN SULUCAY
“Incremental optimization of volume, through uniform and resolved the distribution of density-based voxel types without sacrificing the stability of the system.�
TABLE OF CONTENTs CELLULAR AUTOMATA
1
CONCEPT
5
GEOMETRY
21
NEW RULE SET
37
cellular automata As an initial study, derived from the John Conway’s Game of Life, we used four different seed images and various rule sets modified from the Game of Life. The rule sets we used are created by slightly modifying the rates of the survival, born, and death rules in the Game of Life. Using the seed images and the rule sets, we observed the patterns of the vertical growths of the Game of Life. Throughout the whole experiments, in order to observe the influence of the rule sets on the configuration of the vertical growth, the seed images which sets up the initial state of the voxels and the height of the vertical growth are set in a control group as fixed factors affecting the results. Having discovered the patterns of the vertical growth, we began to see the fully grown voxel aggregation as a structural body and introduced several concepts that are crucial to the structural stability such as density, clusterization, connectivity, geometries, and gradient. In this booklet, the concepts are individually explained, followed by catalogues using different seed images and the rule sets we developed using these concepts. While trying to optimize the potential structural stability in the voxel aggregation, we also embarked on physical experimentations using Unity’s physical simulation. Using the concepts, the previous rule sets are modified and developed to identify the structural failures that should be avoided. By modifying the neighbouring relationships we tried to achieve the overarching influence on the whole voxel structure and optimized the structure’s potential capability in terms of flexibility and rigidity.
1
NUMBER OF ALIVE NEIGHBOUR VOXELS
A
BORN: 3 SURVIVE: 2,3 DIE: <2, >3
B
BORN: 3 SURVIVE: 3,4 DIE: <3, >4
C
BORN: 2,3 SURVIVE: 2,3 DIE: <2, >3
D
BORN: 3, 4 SURVIVE: 3,4 DIE: <3, >4
E
BORN: 3, 4 SURVIVE: 2, 3 DIE: <2, >3
DIE 2
SURVIVE
GET BORN
current voxel
neighbour voxels
AGGREGATION seed ımage: 32*32 tıme end : 80
RULE A
RULE B
RULE C
RULE D
RULE E
4
concept
density After the 3D aggregation, â&#x20AC;&#x2DC;densityâ&#x20AC;&#x2122; of the alive voxels are calculated, by counting the number of its alive neighbours in x, y and z coordination. The range between the minimum and maximum alive neighbours number is subdivided into four to assign certain color to the voxel accordingly.
dividing voxel into 4 color groups according to their number of neigbourhood
relatively lower density
relatively higher density
number of neÄąghbours
minimum density = 0 6
maximum density = 26 minimum density
maximum density
density catalog RULE A VERTICAL SECTION
frame: 20
frame: 40
frame: 60
frame: 80
density catalog RULE B VERTICAL SECTION
8
frame: 20
frame: 40
frame: 60
frame: 80
density catalog RULE c VERTICAL SECTION
frame: 20
frame: 40
frame: 60
frame: 80
density catalog RULE d VERTICAL SECTION
10
frame: 20
frame: 40
frame: 60
frame: 80
density catalog RULE e VERTICAL SECTION
frame: 20
frame: 40
frame: 60
frame: 80
maxımum densıty voxel After calculating the density of each voxel in the 3D system, the voxel/voxels which have the maximum number of alive neighbours are identified and highlighted.
voxels aggregatıon
12
ıdentıfyıng the voxel wıth maxımum alıve neıghbours
maxımum density voxel catalog seed ımage: 32*32 tıme end : 80
RULE A
RULE B
RULE C
RULE D
RULE E
clusterIZATION Each voxel in the aggregation checks its distance from the maximum density voxels and puts itself to the closest oneâ&#x20AC;&#x2122;s cluster. By this way, we are meaningfully group the voxels in the 3D grid, seperating them into the number of maximum density voxels. Each maximum density voxels create their own cluster, being located at the center.
d1
d2
d1<d2 14
clusterization catalog seed ımage: 32*32 tıme end : 80
RULE A
RULE B
RULE C
RULE D
RULE E
GRADIENT DENSITY Within each cluster, the voxels are seperated into four groups, according to their distance to the center of the cluster. The ones that are closer to the center are assigned relatively higher density then the ones that are further located.
maxımum densıty maxımum densıty
maxımum densıty
according to the distance to closest maxımum density voxel 16
grad覺ent dens覺ty catalog seed 覺mage: 32*32 t覺me end : 80
RULE A
RULE B
RULE C
RULE D
RULE E
AGE CENTROIDS We also tried to change the centroid rules to create the centroids based on ages. By locating all of the maximum age voxels, we got the groups of ending voxels of the voxel-columns, which ceased growing when getting the maximum age. Through researching the changes, the maximum age voxels also reflect the density distribution of the voxels, since an amaximum age voxel means a void space above the voxel column, since gaps of the voxels are not only because of CArule, but because of the age-rule.
AGE Columns
Age Centroids 18
Maximum voxel of the voxel column
Typo alert: thoudsands
seed image
centroids
density
gradient
horizontal 20
horizontal 40
horizontal 60
horizontal 80
vertical
20
geometry
Voxel types The aim of was to optimize the flexibility through volume and geometry. Four types of voxels were introduced with different percentages of volumes with reference to the cube voxel.
voxel Type 1 10% volume
22
voxel Type 2 20% volume
voxel Type 3 40% volume
voxel Type 4 75% volume
These geometries were put through tests for flexibility to study their behavior under force and their connections to each other and the other types.
voxel Type 1 flexıbılıty
Under uneven distribution of geometries, the geometries with least volume would break away from the grid when external force was applied, resulting in failure.
voxel Type 2 flexıbılıty
voxel Type 3 flexıbılıty
Under even distribution with most least volume geometries, the grid would wobble under applied force resulting in over flexure. Although intact, it wasnt desirable.
voxel Type 4 flexıbılıty
Under even distribution with equal distribution, the grid behaves as an intact structure with minimal flexural properties, which was the dersired result.
3d prÄąnted Voxel types
24
assıgnıng voxel types accordıng to gradıent densıty Upon assigning the geometry types to the grid we noticed that after applying the gradient with respect to the geometry with the most number of neighbours and clusterisation, Voxel Type 1geometry were dominant with their numbers creating structurally weak connections. To avoid this, we decided to invert the assigment of geometries which would result in more number of Voxel Type 4.
Weak voxels assigned in sparse area Initial assignment of voxel types accroding to gradient density displayed weak/ fragile behaviour due to maximum assignment of type4(weak voxels) at the core.
26
Strong voxels assigned in sparse area Initial assignment of voxel types accroding to gradient density displayed weak/ fragile behaviour due to maximum assignment of type4(weak voxels) at the core.
successfull examples RULE A
28
RULE B
RULE C
RULE D
RULE E
voxels
density
frame: 20
maximum density
frame: 40
clusters
frame: 60
gradient
vertical section
frame: 80
voxels
density
frame: 20
30
maximum density
frame: 40
clusters
frame: 60
gradient
vertical section
frame: 80
voxels
density
frame: 20
maximum density
frame: 40
clusters
frame: 60
gradient
vertical section
frame: 80
unsuccessfull examples RULE A
32
RULE B
RULE C
RULE D
RULE E
Problem:
asymmetrically formed clusters
Problem:
one cluster Unevenly dıstrıbuted gradıent
34
Problem:
lımıted aggregatıon densıty ıs concentrated at the bottom
voxels
density
frame: 20
maximum density
frame: 40
clusters
frame: 60
gradient
vertical section
frame: 80
36
new rule set After identifying the failures in the first set of studies, the preffered growth and aggregation has become more clear. Even though there were relatively successful examples, the connectivity between the voxels were still weak. A new set of rule is introduced in order to avoid disconnected geometries and have more face to face connections, In this part of the study, the new rule sets and related connectivity concept will be explained.
37
connectivity Concerning structural joints between the current voxel and the neighbouring voxels, there are geometrically two types of connections: adjacent connection and diagonal connection. Adjacent and diagonal connections are shown in 2D and 3D as shown in the diagrams below. Adjacent connections, when compared with diagonal connections, have much larger area attached to the neighbours, thus increase the structural stability of the whole structure.
diagonal connection in 2d
diagonal connection in 3d 38
adjacent connection in 2d
adjacent connection in 3d
Äąsolated voxels As observed from the diagrams above, since diagonal connections are only connected with the current voxel on points, therefore, they weaken structural stability. The voxels that are not well connected to its neighbouring voxels would fall down when the gravity is applied.
pos覺b覺l覺t覺es
40
NUMBER OF ALIVE NEIGHBOUR VOXELS
rule set 01
adjacent
BORN: total= 3, adjacent > 1 SURVIVE: adjacent = 2,3 diagonal > 0
diagonal
adjacent
rule set 02
BORN: total > 2, adjacent > 0 SURVIVE: adjacent = 1
diagonal
adjacent
BORN: total > 2, adjacent > 0 SURVIVE: adjacent = 1
rule set 03 diagonal
current voxel adjacent
BORN: total = 2, 3, adjacent > 0 SURVIVE: total = 3
rule set 04 diagonal
adjacent
BORN: total = 2, 3, 4, adjacent > 1 diagonal > 0 SURVIVE: total = 3
rule set 05 diagonal
DIE
SURVIVE
GET BORN
AGGREGATION seed ımage: 32*32 tıme end : 80
adjacent diagonal
42
density catalog adjacent diagonal
VERTICAL SECTION
frame: 20
frame: 40
frame: 60
frame: 80
density catalog adjacent diagonal
44
VERTICAL SECTION
frame: 20
frame: 40
frame: 60
frame: 80
density catalog adjacent diagonal
VERTICAL SECTION
frame: 20
frame: 40
frame: 60
frame: 80
density catalog adjacent diagonal
46
VERTICAL SECTION
frame: 20
frame: 40
frame: 60
frame: 80
density catalog adjacent diagonal
VERTICAL SECTION
frame: 20
frame: 40
frame: 60
frame: 80
hÄąghest density voxel catalog adjacent diagonal
48
clusterization catalog adjacent diagonal
clusterization catalog adjacent diagonal
50
examples seed Äąmage: 32*32 tÄąme end : 80
adjacent diagonal
52
adjacent diagonal
advantages:
distribution of clusters on different levels
adjacent diagonal
54
advantages:
maximized face to face connections strong connectivity
advantages: strong connections on the horizontal and vertical section symmetrical growth
adjacent diagonal
voxels
density
frame: 20
maximum density
frame: 40
clusters
frame: 60
gradient
vertical section
frame: 80
AGGREGATION seed ımage: 32*32 tıme end : 80
adjacent diagonal
56
voxels
density
frame: 20
maximum density
frame: 40
clusters
frame: 60
gradient
vertical section
frame: 80
maximum density
clusters
gradient
maximum density 126 voxels each have 24 neighbours
58
vertical section
resolution checking number of alive voxels around according to the given resolution
resolution = 1
The original resolution in our coding was 1 which showed a problem of too many centroids.
resolution = 2
To enlarge the range of defining the centroids so as to decrease the amounts of centroids, we changed the resolution as 2.
maximum density
clusters
gradient
maximum density 4 voxels each have 92 neighbours
60
vertical section
tolerence study Tolerence value is a variable introduced in order to optimize the number and distibution of the centroids. After finding the number of maximum neighbourhood, the tolerence value expands the range of number to have more centroids.
maximum density
clusters
resolution value = 2 tolerence value = 5 maximum density
minimum density
tolerence 4
87
92
tolerence value = 5 24 voxels 87 - 92 neighbours
maximum density
clusters
tolerence study resolution value = 2 tolerence value = 9 maximum density
minimum density
tolerence 4
83
92
tolerence value = 9 360 voxels 83 - 92 neighbours
62
feedback loop
As we do our experiments, we go back and forth and adjust the numbers again and again, in order to achieve the optimum number and distribution of the centroids.
to achieve the optimum number and distubution of centroids
maximum density
clusters
resolution value = 2 tolerence value = 7 maximum density
minimum density
tolerence 4
85
92
tolerence value = 7 64 voxels 85 - 92 neighbours
64
assignED voxel geometries
horizontal sections
frame: 20
frame: 40
frame: 60
frame: 80
hor覺zontal sect覺on frame: 20
66
techn覺cal draw覺ng
assignED voxel geometries
vertıcal section
technıcal drawıng
AGGREGATION seed ımage: 32*32 tıme end : 80
adjacent diagonal
68
voxels
density
frame: 20
maximum density
frame: 40
clusters
frame: 60
gradient
vertical section
frame: 80
maximum density
clusters
gradient
maximum density 4 voxels each have 80 neighbours
70
vertical section
maximum density
tolerence study
clusters
resolution value = 2 tolerence value = 3 maximum density
minimum density
tolerence 13
77
80
tolerence value = 3 208 voxels 77 - 80 neighbours
maximum density
tolerence study
clusters
resolution value = 2 tolerence value = 7 maximum density
minimum density
tolerence 4
73
80
tolerence value = 7 544 voxels 73 - 80 neighbours
72
to achieve the optimum number and distubution of centroids
maximum density
clusters
resolution value = 2 tolerence value = 5 maximum density
minimum density
tolerence 4
75
80
tolerence value = 5 400 voxels 75 - 80 neighbours
assignED voxel geometries
horizontal sections
74
frame: 20
frame: 40
frame: 60
frame: 80
hor覺zontal sect覺on frame: 20
techn覺cal draw覺ng
assignED voxel geometries
76
vertıcal section
technıcal drawıng
AGGREGATION adjacent diagonal
78
voxels
density
frame: 20
maximum density
frame: 40
clusters
frame: 60
gradient
vertical section
frame: 80
maximum density
clusters
gradient
maximum density 8 voxels each have 67 neighbours
80
vertical section
maximum density
clusters
tolerence study tolerence value = 3 maximum density
minimum density
tolerence 15
64
67
tolerence value = 3 88 voxels 64 - 67 neighbours
maximum density
clusters
tolerence study tolerence value = 10 maximum density
minimum density
tolerence 15
57
67
tolerence value = 10 1424 voxels 57 - 67 neighbours
82
to achieve the optimum number and distubution of centroids
maximum density
clusters
resolution value = 2 tolerence value = 7 maximum density
minimum density
tolerence 15
60
67
tolerence value = 7 360 voxels 60 - 67 neighbours
assignED voxel geometries horizontal sections
84
frame: 20
frame: 40
frame: 60
frame: 80
hor覺zontal sect覺on frame: 20
techn覺cal draw覺ng
assignED voxel geometries
86
vertıcal section
technıcal drawıng
88