Every code involved in the development of this master’s thesis has been uploaded to GitHub [290], a cloud platform for software development. As the City Science group’s work is mostly open source, work in the group can always be found in this platform. The codes are not included in this document as their extension would be excessive, and it makes more sense for future developers to use the well-known platform GitHub, from which they can easily clone the different codes and continue developing them.
The main repositories where codes can be found are:
• My repository in GitHub [https://github.com/jmugicagonz], where all my codes open source are constantly updated.
• City Scope Repository [https://github.com/CityScope/], where all the codes related to the CityScope concept are stored (e.g. CityIO) and those of the tools developed in this project for urban planning are stored too.
More specifically, the different developments in this master’s thesis can be found in the following links:
• Driverless skills for the MIT Autonomous Bicycle (section 4.1.2):
https://github.com/jmugicagonz/MITAutonomousBicycleLaneFollowing
• Dynamic V2V power-sharing (section 4.1.3):
https://github.com/jmugicagonz/V2VDynamicCharging
• Agent-based simulation (section 4.1.4):
https://github.com/CityScope/VehicleClustering
• 2D genetic city (section 4.2.1):
https://github.com/jmugicagonz/Genetic-City
• Building the network structure and generative tool (section 4.2.2):
https://github.com/CityScope/Vertical Volpe
As an example, the main code corresponding to the links & nodes data structure built (section 4.2.2.2), is included:
1 i m p o r t g e o p a n d a s as gpd
2 f r o m s h a p e l y . g e o m e t r y i m p o r t Point , P o l y g o n
3 i m p o r t p a n d a s as pd
4 i m p o r t n u m p y as np
5 i m p o r t m a t h
6 i m p o r t ray
7 i m p o r t t i m e
8 s t a r t _ t i m e = t i m e . t i m e ()
9
10 g e o m = gpd . r e a d _ f i l e (’ g e o m e t r y / 2 2 0 5 2 7 - V O L P E C l e a n 1 2 . dxf ’)
11
12 # H E L P E R F U N C T I O N TO ADD P O I N T S TO THE N O D E S T A B L E
13 def c o o r d i n a t e s _ t o _ n o d e s ( c o o r d i n a t e s , id , t y p e O f E n t i t y =None, e n t i t y H a n d l e =N o n e) :
14 d a t a f r a m e = pd . D a t a F r a m e ({
15 ’ id ’:[ str ( id ) ] ,
16 ’ x ’:[f l o a t( c o o r d i n a t e s [0]) ] ,
17 ’ y ’:[f l o a t( c o o r d i n a t e s [1]) ] ,
18 ’ z ’:[f l o a t( c o o r d i n a t e s [2]) ] ,
19 ’ t y p e _ o f _ e n t i t y ’:[ str ( t y p e O f E n t i t y ) ] ,
20 ’ E n t i t y H a n d l e ’:[ str ( e n t i t y H a n d l e ) ]
21 })
22 r e t u r n d a t a f r a m e
23
24 # H E L P E R F U N C T I O N TO ADD E D G E S TO THE L I N K S T A B L E
25 def c r e a t e _ e d g e ( i d _ p r e v _ p , i d _ c u r r _ p , id , d i s t a n c e ) :
26 d a t a f r a m e = pd . D a t a F r a m e ({
27 ’ id ’:[ str ( id ) ] ,
28 ’ f r o m ’:[ str ( i d _ p r e v _ p ) ] ,
29 ’ to ’:[ str ( i d _ c u r r _ p ) ] ,
30 ’ d i s t a n c e ’:[f l o a t( d i s t a n c e ) ]
31 })
32 r e t u r n d a t a f r a m e
33
34 # C H E C K IF A P O I N T IS A L R E A D Y IN A D A T A F R A M E AND R E T U R N THE P O I N T IN THE ,→ D A T A F R A M E IF T R U E
35 def c h e c k _ p o i n t ( c o o r d i n a t e s , o r i g i n a l _ d a t a _ f r a m e ) :
36 for n o d e in o r i g i n a l _ d a t a _ f r a m e . v a l u e s :
37 x _ r a n g e = [ n o d e [1] -0.0 0 1, n o d e [1]+0.0 0 1]
38 y _ r a n g e = [ n o d e [2] -0.0 0 1, n o d e [2]+0.0 0 1]
39 z _ r a n g e = [ n o d e [3] -0.0 0 1, n o d e [3]+0.0 0 1]
40 x _ c o n d i t i o n = c o o r d i n a t e s [0] < x _ r a n g e [0] or c o o r d i n a t e s [0] > x _ r a n g e [1]
41 y _ c o n d i t i o n = c o o r d i n a t e s [1] < y _ r a n g e [0] or c o o r d i n a t e s [1] > y _ r a n g e [1]
42 z _ c o n d i t i o n = c o o r d i n a t e s [2] < z _ r a n g e [0] or c o o r d i n a t e s [2] > z _ r a n g e [1]
43 g r e e n _ l i g h t = x _ c o n d i t i o n or y _ c o n d i t i o n or z _ c o n d i t i o n
44 if g r e e n _ l i g h t == F a l s e:
45 r e t u r n node ,T r u e
46 r e t u r n None, F a l s e
47
48 # C H E C K IF A P O I N T IS A L R E A D Y IN ONE OF THE P O L Y G O N S OF A D A T A F R A M E AND R E T U R N ,→ THE P O I N T IN THE D A T A F R A M E IF T R U E
49 def c h e c k _ p o i n t _ p o l y g o n s ( c o o r d i n a t e s , g e o m _ p o l y g o n s ) :
50 for index_p , e l e m e n t _ p in e n u m e r a t e ( g e o m _ p o l y g o n s [’ g e o m e t r y ’]) :
51 if ( P o i n t ( c o o r d i n a t e s ) . w i t h i n ( e l e m e n t _ p ) ) :
52 r e t u r n True, i n d e x _ p
53 r e t u r n False,N o n e
54
55 # GET D I S T A N C E B E T W E E N A P A I R OF C O O R D I N A T E S
56 def g e t _ d i s t a n c e ( c o o r d s _ f r o m , c o o r d s _ t o ) :
57 d i s t a n c e = m a t h . s q r t (( c o o r d s _ f r o m [0] - c o o r d s _ t o [0]) **2 + ( c o o r d s _ f r o m [1] - ,→ c o o r d s _ t o [1]) **2 + ( c o o r d s _ f r o m [2] - c o o r d s _ t o [2]) **2)
58 d i s t a n c e = d i s t a n c e
59 r e t u r n d i s t a n c e
60
61 # F U N C T I O N TO ADD N O D E S AND E D G E S PER F L O O R
62 def p a r s e _ s t o r y ( g e o m _ s t o r y , s t o r y ) :
63 i d _ s t o r y = str ( s t o r y ) # The s t o r y id w i l l be u s e d to c r e a t e a u n i q u e ,→ i d e n t i f i e r per n o d e
64 p r i n t(" S t o r y b e i n g e v a l u a t e d : {} ". f o r m a t ( s t o r y ) )
65 if len( g e o m _ s t o r y [’ g e o m e t r y ’]) <1:
66 p r i n t(" S t o r y n u m b e r {} has no g e o m e t r y ". f o r m a t ( s t o r y ) ) # T h i s c o u l d be ,→ an e r r o r w i t h the h e i g h t s w h e n p u t t i n g the d i f f e r e n t s t o r i e s in the l i s t
67 r e t u r n None, N o n e
68 # C R E A T E G E O M E T R I E S FOR L A N D USES , A L L E Y S AND PATHS , U S I N G THE D E F I N E D S E T S
69 g e o m _ l a n d U s e s _ c o m p l e t e = g e o m _ s t o r y [ g e o m _ s t o r y [’ L a y e r ’]. a p p l y (l a m b d a x : x ,→ in s e t _ l a n d U s e s ) ]
70 g e o m _ l a n d U s e s =
,→ g e o m _ l a n d U s e s _ c o m p l e t e [ g e o m _ l a n d U s e s _ c o m p l e t e [’ g e o m e t r y ’]. a p p l y (l a m b d a x
,→ : len( x . c o o r d s ) >2) ]
71 g e o m _ a l l e y s = g e o m _ s t o r y [ g e o m _ s t o r y [’ L a y e r ’]. a p p l y (l a m b d a x : x in ,→ s e t _ a l l e y s ) ]
72 g e o m _ p a t h s = g e o m [ g e o m [’ L a y e r ’]. a p p l y (l a m b d a x : x in s e t _ p a t h s ) ]
73 # C H A N G E L I N E T R I N G S FOR P O L Y G O N S IN L A N D U S E S , N E C E S S A R Y TO C H E C K IF T H E R E ,→ ARE P O I N T S I N S I D E T H O S E P O L Y G O N S AND GET E N T R A N C E S , ETC .
74 g e o m _ l a n d U s e s [’ g e o m e t r y ’] = g e o m _ l a n d U s e s [’ g e o m e t r y ’]. a p p l y (l a m b d a x : ,→ P o l y g o n ( x . c o o r d s ) if len( x . c o o r d s ) >2 e l s e x )
75 g e o m _ v e r t i c a l _ m o b i l i t y = g e o m _ l a n d U s e s [ g e o m _ l a n d U s e s [’ L a y e r ’]. a p p l y (l a m b d a ,→ x : x in s e t _ v e r t i c a l _ m o b i l i t y ) ]
76 # GET P O I N T S FOR P A T H S IN THE C U R R E N T S T O R Y
77 if(len( g e o m _ p a t h s ) <1) : p r i n t(" C a u s i n g error , no p a t h s in g e o m e t r y ") # If ,→ t h e r e are not p a t h s in the g e o m e t r y , f l o o r s w i l l be d i s c o n n e c t e d
78 p o i n t s _ g e o m _ p a t h s _ s t o r y = [ z for x in g e o m _ p a t h s [’ g e o m e t r y ’] for z in ,→ x . c o o r d s if int ( r o u n d ( z [2] ,0) ) ==( s t o r y *1 3) ]
79 if(len( p o i n t s _ g e o m _ p a t h s _ s t o r y ) <1) : p r i n t(" C a u s i n g error , no p a t h s for ,→ s t o r y {} ". f o r m a t ( s t o r y ) ) # If t h e r e are not p a t h s in the c u r r e n t story , ,→ it w i l l be d i s c o n n e c t e d
80 n o t _ c o n t a i n e d _ p a t h s = [] # L i s t u s e d to i d e n t i f y t h o s e p a t h s not f a l l i n g in ,→ any m o b i l i t y p o l y g o n ( e . g . e l e v a t o r , s t a i r )
81 n o d e s _ d f = pd . D a t a F r a m e ({
82 ’ id ’:[] ,
83 ’ x ’:[] ,
84 ’ y ’:[] ,
85 ’ z ’:[] ,
86 ’ t y p e _ o f _ e n t i t y ’:[] ,
87 ’ E n t i t y H a n d l e ’:[]
88 })
89 e d g e s _ d f = pd . D a t a F r a m e ({
90 ’ id ’:[] ,
91 ’ f r o m ’:[] ,
92 ’ to ’:[] ,
93 ’ d i s t a n c e ’:[]
94 })
95 # ADD A L L E Y S TO THE L I S T
96 for i n d e x in np . a r a n g e (len( g e o m _ a l l e y s ) ) :
97 e l e m e n t _ t o _ e v a l u a t e = g e o m _ a l l e y s [’ g e o m e t r y ’]. i l o c [ i n d e x ]. c o o r d s # We ,→ get the c o o r d i n a t e s of t h o s e p o i n t s c o m p o s i n g t h a t a l l e y
98 for index_e , p o i n t _ e in e n u m e r a t e ( e l e m e n t _ t o _ e v a l u a t e ) :
99 # E V E R Y N O D E OF THE E L E M E N T IS C H E C K E D TO BE IN THE N O D E S _ D F L I S T
100 node , n o d e _ i n _ l i s t = c h e c k _ p o i n t ( point_e , n o d e s _ d f )
101 # ADD N O D E TO THE N O D E S _ D F L I S T IF NOT YET C O N T A I N E D
102 if not n o d e _ i n _ l i s t :
103 i d _ c u r r _ p = i d _ s t o r y + ’ P ’ + str (len( n o d e s _ d f ) ) # The ’ P ’ is ,→ a d d e d to m a k e s u r e t h a t i d e n t i f i e r s are u n i q u e w h e n a d d i n g d i f f e r e n t ,→ s t o r i e s
104 # N O D E S ARE C H E C K E D TO BE IN ANY OF THE P O L Y G O N S
105 c o n t a i n e d _ i n _ p , i n d e x _ p =
,→ c h e c k _ p o i n t _ p o l y g o n s ( point_e , g e o m _ l a n d U s e s ) # If it is i n s i d e a polygon , ,→ it w i l l be an e n t r a n c e
106 e n t i t y _ h a n d l e r _ c o n t a i n e r = N o n e
107 if( c o n t a i n e d _ i n _ p ) :
108 e n t i t y _ h a n d l e r _ c o n t a i n e r =
,→ g e o m _ l a n d U s e s [’ E n t i t y H a n d l e ’]. i l o c [ i n d e x _ p ]
109 n o d e s _ d f =
,→ pd . c o n c a t ([ n o d e s _ d f , c o o r d i n a t e s _ t o _ n o d e s ( point_e , i d _ c u r r _ p ,
110
,→ t y p e O f E n t i t y =’ E n t r a n c e ’, e n t i t y H a n d l e = e n t i t y _ h a n d l e r _ c o n t a i n e r ) ] , ,→ i g n o r e _ i n d e x = T r u e)
111 e l s e:
112 n o d e s _ d f =
,→ pd . c o n c a t ([ n o d e s _ d f , c o o r d i n a t e s _ t o _ n o d e s ( point_e , i d _ c u r r _ p ,
113
,→ t y p e O f E n t i t y =’ A l l e y ’, e n t i t y H a n d l e = e n t i t y _ h a n d l e r _ c o n t a i n e r ) ] , ,→ i g n o r e _ i n d e x = T r u e)
114 # IF N O D E IS A L R E A D Y C O N T A I N E D , T A K E ITS ID
115 e l s e: i d _ c u r r _ p = n o d e [0]
116 # FOR E V E R Y L I N E C O M P O S I N G THE ALLEY , C R E A T E A L I N K .
117 if i n d e x _ e > 0: # L i n k s w i l l s t a r t to be c r e a t e d f r o m the s e c o n d ,→ p o i n t of the a l l e y on
118 p o i n t _ f r o m = n o d e s _ d f . loc [ n o d e s _ d f [’ id ’]== str ( i d _ p r e v _ p ) ]
119 c o o r d s _ f r o m = [ p o i n t _ f r o m [’ x ’]. v a l u e s [0] ,
120 p o i n t _ f r o m [’ y ’]. v a l u e s [0] , p o i n t _ f r o m [’ z ’]. v a l u e s [0]]
121 if( p o i n t _ e == N o n e) or ( c o o r d s _ f r o m ==N o n e) : p r i n t(" P R O N E TO ,→ E R R O R ")
122 d i s t a n c e = g e t _ d i s t a n c e ( c o o r d s _ f r o m , p o i n t _ e )
123 e d g e s _ d f =
,→ pd . c o n c a t ([ e d g e s _ d f , c r e a t e _ e d g e ( i d _ p r e v _ p , i d _ c u r r _ p , i d _ s t o r y + ’ P ’ + ,→ str (len( e d g e s _ d f ) ) , d i s t a n c e ) ] , i g n o r e _ i n d e x = T r u e)
124 # S A V E THE I N D E X TO C R E A T E THE L I N K W I T H THE N E X T P O I N T OF THE A L L E Y
125 i d _ p r e v _ p = i d _ c u r r _ p
126 # ADD V I R T U A L N O D E S FOR P O L Y G O N S AND C O N N E C T TO E N T R A N C E S
127 for i n d e x in np . a r a n g e (len( g e o m _ l a n d U s e s ) ) :
128 c e n t r o i d _ c o o r d i n a t e s =[]
129 c e n t r o i d _ c o o r d i n a t e s . e x t e n d ( g e o m _ l a n d U s e s [’ g e o m e t r y ’].
130 i l o c [ i n d e x ]. c e n t r o i d . c o o r d s [0])
131 c e n t r o i d _ c o o r d i n a t e s . a p p e n d ( g e o m _ l a n d U s e s [’ g e o m e t r y ’].
132 i l o c [ i n d e x ]. e x t e r i o r . c o o r d s [0][2])
133 i d _ c u r r _ p = i d _ s t o r y + ’ P ’ + str (len( n o d e s _ d f ) ) # The ’ P ’ is a d d e d to ,→ m a k e s u r e t h a t i d e n t i f i e r s are u n i q u e w h e n a d d i n g d i f f e r e n t s t o r i e s
134 e n t i t y H a n d l e = g e o m _ l a n d U s e s [’ E n t i t y H a n d l e ’]. i l o c [ i n d e x ]
135 n o d e s _ d f =
,→ pd . c o n c a t ([ n o d e s _ d f , c o o r d i n a t e s _ t o _ n o d e s ( c e n t r o i d _ c o o r d i n a t e s , i d _ c u r r _ p ,
136 t y p e O f E n t i t y = g e o m _ l a n d U s e s [’ L a y e r ’]. i l o c [ i n d e x ] ,
137 e n t i t y H a n d l e = e n t i t y H a n d l e ) ] , i g n o r e _ i n d e x = T r u e)
138 # GET E N T R A N C E S FOR T H A T E N T I T Y AND C R E A T E L I N K S F R O M V I R T U A L N O D E S TO ,→ E N T R A N C E S
139 e n t r a n c e s = [ n o d e [0] for n o d e in n o d e s _ d f . v a l u e s if ,→ n o d e [5]== e n t i t y H a n d l e and n o d e [4]==’ E n t r a n c e ’]
140 if(len( e n t r a n c e s ) <1) :
141 e n t i t y N o E n t r a n c e = n o d e s _ d f [ n o d e s _ d f [’ E n t i t y H a n d l e ’]== e n t i t y H a n d l e ]
142 p r i n t(" No e n t r a n c e s for : {} ". f o r m a t ( e n t i t y N o E n t r a n c e ) ) # An e n t i t y ,→ w i t h o u t e n t r a n c e w i l l be d i s c o n n e c t e d
143 for id in e n t r a n c e s :
144 e d g e s _ d f = pd . c o n c a t ([ e d g e s _ d f , c r e a t e _ e d g e ( id , i d _ c u r r _ p , i d _ s t o r y + ,→ ’ P ’ + str (len( e d g e s _ d f ) ) ,0) ] , i g n o r e _ i n d e x = T r u e) # The ’ P ’ is a d d e d to ,→ m a k e s u r e t h a t i d e n t i f i e r s are u n i q u e w h e n a d d i n g d i f f e r e n t s t o r i e s
145 # ADD P A T H S TO THE L I S T
146 for index , c o o r d s in e n u m e r a t e ( p o i n t s _ g e o m _ p a t h s _ s t o r y ) :
147 c o n t a i n e d _ i n _ p , i n d e x _ p =
,→ c h e c k _ p o i n t _ p o l y g o n s ( coords , g e o m _ v e r t i c a l _ m o b i l i t y )
148 e n t i t y _ h a n d l e r _ c o n t a i n e r = N o n e
149 i d _ c u r r _ p = i d _ s t o r y + ’ P ’ + str (len( n o d e s _ d f ) ) # The ’ P ’ is a d d e d to ,→ m a k e s u r e t h a t i d e n t i f i e r s are u n i q u e w h e n a d d i n g d i f f e r e n t s t o r i e s
150 if( c o n t a i n e d _ i n _ p ) :
151 e n t i t y _ h a n d l e r _ c o n t a i n e r =
,→ g e o m _ v e r t i c a l _ m o b i l i t y [’ E n t i t y H a n d l e ’]. i l o c [ i n d e x _ p ]
152 # GET ID OF V I R T U A L N O DE C O R R E S P O N D I N G TO T H A T E N T I T Y
153 i d _ e n t i t y _ l i s t = [ n o d e [0] for n o d e in n o d e s _ d f . v a l u e s if
,→ n o d e [5]== e n t i t y _ h a n d l e r _ c o n t a i n e r and n o d e [4] in s e t _ v e r t i c a l _ m o b i l i t y ]
154 i d _ e n t i t y = i d _ e n t i t y _ l i s t [0]
155 if( i d _ e n t i t y ==N o n e) : p r i n t(" i d _ e n t i t y not f o u n d for :
,→ {} ". f o r m a t ( e n t i t y _ h a n d l e r _ c o n t a i n e r ) ) # If the n o d e f a l l s i n t o a ,→ polygon , t h e r e s h o u l d be a v i r t u a l n o d e for t h a t p o l y g o n
156 e d g e s _ d f =
,→ pd . c o n c a t ([ e d g e s _ d f , c r e a t e _ e d g e ( i d _ c u r r _ p , i d _ e n t i t y , i d _ s t o r y + ’ P ’ +
,→ str (len( e d g e s _ d f ) ) ,0) ] , i g n o r e _ i n d e x = T r u e)
157 n o d e s _ d f =
,→ pd . c o n c a t ([ n o d e s _ d f , c o o r d i n a t e s _ t o _ n o d e s ( coords , i d _ c u r r _ p ,
158 t y p e O f E n t i t y =’ p a t h ’, e n t i t y H a n d l e = e n t i t y _ h a n d l e r _ c o n t a i n e r ) ] , ,→ i g n o r e _ i n d e x = T r u e)
159 e l s e:
160 n o t _ c o n t a i n e d _ p a t h s . a p p e n d ( c o o r d s )
161 if(len( n o t _ c o n t a i n e d _ p a t h s ) >1) : p r i n t(" Non c o n t a i n e d p a t h s for s t o r y {}
,→ are : {} ". f o r m a t ( story , n o t _ c o n t a i n e d _ p a t h s ) ) # T h i s m e a n s t h e r e are p a t h s ,→ not c o n t a i n e d in p o l y g o n s for a c e r t a i n story , w h i c h s h o u l d not h a p p e n
162 r e t u r n n o d e s _ d f , e d g e s _ d f
163
164 # C R E A T E N E E D E D S E T S
165 s e t _ a l l e y s = {’ ALLEY - E L E V A T O R ’,’ A L L E Y 1 ’}
166 s e t _ p a t h s = {’ STAIRS - P A T H ’,’ E L E V A T O R S - P A T H ’} # V e r t i c a l l i n k s a m o n g f l o o r s
167 s e t _ v e r t i c a l _ m o b i l i t y = {’ S T A I R S ’, ’ E L E V A T O R S ’}
168 s e t _ l a n d U s e s = {’ S T A I R S ’, ’ E L E V A T O R S ’,’ P A R K S ’,’ O F F I C E S ’,’ B A N K S ’,’ L I B R A R Y ’,
169 ’ H E A L T H _ C A R E ’,’ L A U N D R Y ’,’ R E S T A U R A N T ’,’ C A F E ’,’ BAR ’,’ S C H O O L ’,
170 ’ C O N V E N I E N C E _ S T O R E ’,’ G R O C E R Y _ O R _ S U P E R M A R K E T ’,’ H O M E _ G O O D S _ S T O R E ’,
171 ’ F U R N I T U R E _ S T O R E ’,’ P H A R M A C Y ’,’ P R O F E S S I O N A L _ S E R V I C E S ’,
172 ’ L E I S U R E _ A N D _ W E L L N E S S ’,’ F A M I L Y _ O C C U P A N C Y ’,’ D U A L _ _ O C C U P A N C Y ’,
173 ’ T R I P L E _ O C C U P A N C Y ’,’ Q U A D _ O C C U P A N C Y ’,’ S I N G L E _ O C C U P A N C Y ’}
174
175 # GET L I S T OF G E O M E T R I E S PER F L O O R
176 l i s t _ g e o m s = [] # L i s t t h a t w i l l c o n t a i n the g e o m e t r i e s of e a c h f l o o r
177 n b r _ s t o r i e s = 5 2 # N u m b e r of s t o r i e s t h a t w i l l be c o v e r e d by n o d e s
178 h e i g h _ p e r _ s t o r y = 1 3 # S e p a r a t i o n b e t w e e n s t o r i e s ( s a m e u n i t y as in CAD )
179 for z in np . a r a n g e ( n b r _ s t o r i e s ) :
180 g e o m _ s t o r y = g e o m [ g e o m [’ g e o m e t r y ’]. a p p l y (l a m b d a x : r o u n d ( x . c o o r d s [0][2] ,0) ,→ == z * h e i g h _ p e r _ s t o r y ) ]
181 l i s t _ g e o m s . a p p e n d ( g e o m _ s t o r y )
182
183 # WE F I R S T S H U T D O W N THE P A R A L L E L I Z A T I O N M O D U L E TO M A K E S U R E IT IS NOT T A K I N G ,→ C O M P U T I N G R E S O U R C E S A L R E A D Y
184 ray . s h u t d o w n ()
185
186 # Ray t a s k is c r e a t e d for p a r a l l e l i z a t i o n a m o n g p a r s i n g f l o o r s
187 r e m o t e _ p a r s e _ s t o r y = ray . r e m o t e ( p a r s e _ s t o r y )
188
189 r a y _ o b j e c t = ray . get ([ r e m o t e _ p a r s e _ s t o r y . r e m o t e ( l i s t _ g e o m s [ s t o r y ] , s t o r y ) for ,→ s t o r y in r a n g e(0,len( l i s t _ g e o m s ) ) ])
190
191 # C R E A T E THE N O D E S AND E D G E S T A B L E AND ADD THE P A R S E D S T O R I E S
192 n o d e s _ d f = pd . D a t a F r a m e ({
193 ’ id ’:[] ,
194 ’ x ’:[] ,
195 ’ y ’:[] ,
196 ’ z ’:[] ,
197 ’ t y p e _ o f _ e n t i t y ’:[] ,
198 ’ E n t i t y H a n d l e ’:[]
199 })
200 e d g e s _ d f = pd . D a t a F r a m e ({
201 ’ id ’:[] ,
202 ’ f r o m ’:[] ,
203 ’ to ’:[] ,
204 ’ d i s t a n c e ’:[]
205 })
206
207 for e l e m e n t in r a y _ o b j e c t :
208 e l e m e n t [0]
209 n o d e s _ d f = pd . c o n c a t ([ n o d e s _ d f , e l e m e n t [0]] , i g n o r e _ i n d e x = T r u e)
210 e d g e s _ d f = pd . c o n c a t ([ e d g e s _ d f , e l e m e n t [1]] , i g n o r e _ i n d e x = T r u e)
211
212 # ADD T H O S E E D G E S C O R R E S P O N D I N G TO THE P A T H S L I N K I N G E D G E S
213 p a t h _ n o d e s = n o d e s _ d f [ n o d e s _ d f [’ t y p e _ o f _ e n t i t y ’]. a p p l y (l a m b d a x : x ==’ p a t h ’) ]
214 g e o m _ p a t h s = g e o m [ g e o m [’ L a y e r ’]. a p p l y (l a m b d a x : x in s e t _ p a t h s ) ]
215 for i n d e x in np . a r a n g e (len( g e o m _ p a t h s ) ) :
216 p r i n t(" {} of {} p a t h s e v a l u a t e d ". f o r m a t ( index ,len( g e o m _ p a t h s ) ) )
217 e l e m e n t _ t o _ e v a l u a t e = g e o m _ p a t h s [’ g e o m e t r y ’]. i l o c [ i n d e x ]. c o o r d s
218 for index_e , p o i n t _ e in e n u m e r a t e ( e l e m e n t _ t o _ e v a l u a t e ) :
219 # E V E R Y N O D E OF THE E L E M E N T IS C H E C K E D TO BE IN THE N O D E S _ D F L I S T
220 node , n o d e _ i n _ l i s t = c h e c k _ p o i n t ( point_e , p a t h _ n o d e s )
221 if not n o d e _ i n _ l i s t :
222 p r i n t(" P o i n t _ e is : {} ". f o r m a t ( p o i n t _ e ) ) # e v e r y p a t h n o d e s h o u l d ,→ h a v e b e e n a d d e d a l r e a d y to the l i s t
223 p r i n t(" N O D E NOT F O U N D ")
224 # IF N O D E IS A L R E A D Y C O N T A I N E D , T A K E ITS ID
225 e l s e:
226 i d _ c u r r _ p = n o d e [0]
227 # FOR E V E R Y L I N E C O M P O S I N G THE PATH , C R E A T E A L I N K .
228 if i n d e x _ e > 0:
229 p o i n t _ f r o m = n o d e s _ d f . loc [ n o d e s _ d f [’ id ’]== str ( i d _ p r e v _ p ) ]
230 c o o r d s _ f r o m = [ p o i n t _ f r o m [’ x ’]. v a l u e s [0] ,
231 p o i n t _ f r o m [’ y ’]. v a l u e s [0] , p o i n t _ f r o m [’ z ’]. v a l u e s [0]]
232 d i s t a n c e = g e t _ d i s t a n c e ( c o o r d s _ f r o m , p o i n t _ e )
233 e d g e s _ d f = pd . c o n c a t ([ e d g e s _ d f , c r e a t e _ e d g e ( i d _ p r e v _ p , i d _ c u r r _ p ,
234 ’ VL ’+ str (len( e d g e s _ d f ) ) , d i s t a n c e ) ] , i g n o r e _ i n d e x = T r u e)
235 # S A V E THE I N D E X TO C R E A T E THE E D G E W I T H THE N E X T P O I N T OF THE P A T H
236 i d _ p r e v _ p = i d _ c u r r _ p
237
238 # S A V E THE N O D E S AND L I N K T A B L E S IN CSV F I L E S
239 n o d e s _ d f . t o _ c s v (’ n o d e s _ d f . csv ’)
240 e d g e s _ d f . t o _ c s v (’ e d g e s _ d f . csv ’)
241
242 p r i n t(" - - - {} s e c o n d s - - - ". f o r m a t ( t i m e . t i m e () - s t a r t _ t i m e ) )
References
[1] L. Alonso, Y. R. Zhang, A. Grignard, A. Noyman, Y. Sakai, M. ElKatsha, R. Doorley, and K. Larson, “Cityscope: a data-driven interactive simulation tool for urban design. use case volpe,” inInternational conference on complex systems. Springer, 2018, pp. 253–261.
[2] M. Makki, M. Showkatbakhsh, A. Tabony, and M. Weinstock, “Evolutionary algorithms for generating urban morphology: Variations and multiple objectives,”International Journal of Architectural Computing, vol. 17, no. 1, pp. 5–35, 2019.
[3] T. W. Bank, “Urban development,” April 2020. [Online]. Available: https:
//www.worldbank.org/en/topic/urbandevelopment/overview#1
[4] Y. Zhang et al., “Citymatrix: an urban decision support system augmented by artificial intelligence,” Ph.D. dissertation, Massachusetts Institute of Technology, 2017.
[5] K. Larson, “Kent larson on resilient communities and sustainability - ’on cities’
masterclass series,” April 2021. [Online]. Available: https://www.youtube.com/watch?
v=4QsU9DTS2rM&ab channel=NormanFosterFoundation
[6] ——, “Brilliant designs to fit more people in every city,” 2012. [Online].
Available: https://www.ted.com/talks/kent larson brilliant designs to fit more people in every city?language=en
[7] T. M¨oller, A. Padhi, D. Pinner, and A. Tschiesner, “The future of mobility is at our doorstep,” McKinsey Center for Future Mobility, 2019.
[8] R. Cervero, “Mobility niches: jitneys to robo-taxis,” Journal of the american planning association, vol. 83, no. 4, pp. 404–412, 2017.
[9] J. B. Greenblatt and S. Saxena, “Autonomous taxis could greatly reduce greenhouse-gas emissions of us light-duty vehicles,” Nature Climate Change, vol. 5, no. 9, pp. 860–863, 2015.
[10] E. C. Jones and B. D. Leibowicz, “Contributions of shared autonomous vehicles to climate change mitigation,”Transportation Research Part D: Transport and Environment, vol. 72, pp. 279–298, 2019.
[11] N. C. Sanchez, L. A. Pastor, and K. Larson, “Autonomous bicycles: A new approach to bicycle-sharing systems,” in 2020 ieee 23rd international conference on intelligent trans- portation systems (itsc). IEEE, 2020, pp. 1–6.
[12] A. F. Alarfaj, W. M. Griffin, and C. Samaras, “Decarbonizing us passenger vehicle trans- port under electrification and automation uncertainty has a travel budget,”Environmental Research Letters, vol. 15, no. 9, p. 0940c2, 2020.
[13] A. Milovanoff, I. D. Posen, and H. L. MacLean, “Electrification of light-duty vehicle fleet alone will not meet mitigation targets,”Nature Climate Change, vol. 10, no. 12, pp. 1102–
1107, 2020.
[14] S. Maiti, S. Winter, and L. Kulik, “A conceptualization of vehicle platoons and platoon operations,” Transportation Research Part C: Emerging Technologies, vol. 80, pp. 1–19, 2017.
[15] E. Bonabeau, D. d. R. D. F. Marco, M. Dorigo, G. Th´eraulaz, G. Theraulazet al.,Swarm intelligence: from natural to artificial systems. Oxford university press, 1999, no. 1.
[16] E. Sahin, “Swarm robotics: From sources of inspiration to domains of application,” in Swarm Robotics, 2004.
[17] J. M. Gonz´alez, N. C. S´anchez, P. G. M. Llop, L. A. Pastor, and K. Larson, “Dynamic v2v power-sharing for collaborative fleets of autonomous vehicles,” in2021 IEEE Electrical Power and Energy Conference (EPEC). IEEE, 2021, pp. 408–413.
[18] N. C. S´anchez, J. M. Gonz´alez, L. A. Pastor, and K. Larson, “Future mobility as a bio- inspired collaborative system,” arXiv preprint arXiv:2106.09543, 2021.
[19] M. M. L. S. C. Group, “Citycar,” June 2022. [Online]. Available: https:
//www.media.mit.edu/projects/citycar/overview/
[20] M. M. L. C. S. Group, “Persuasive electric vehicle (pev),” June 2022. [Online]. Available:
https://www.media.mit.edu/projects/pev/overview/
[21] C. Garc´ıa-V´azquez, F. Llorens-Iborra, L. M. Fern´andez-Ram´ırez, H. S´anchez-Sainz, and F. Jurado, “Evaluating dynamic wireless charging of electric vehicles moving along a stretch of highway,” 2016 International Symposium on Power Electronics, Electrical Drives, Automation and Motion (SPEEDAM), pp. 61–66, 2016.
[22] T. Alrashed, A. Almalki, S. Aldawood, T. Alhindi, I. Winder, A. Noyman, A. Alfaris, and A. Alwabil, “An observational study of usability in collaborative tangible interfaces for complex planning systems,” Procedia Manufacturing, vol. 3, pp. 1974–1980, 2015.
[23] S. S. Lau and Q. Zhang, “Genesis of a vertical city in hong kong,” International Journal of High-Rise Buildings, vol. 4, no. 2, pp. 117–125, 2015.
[24] U. Nations, “Sustainable development goals (sdgs),” June 2022. [Online]. Available:
https://www.un.org/sustainabledevelopment/news/communications-material/
[25] H. W. Corbett, “Metropolis of tomorrow,” June 2022. [On- line]. Available: https://metropolisoftomorrow.tumblr.com/post/609777496/
city-of-the-future-by-harvey-wiley-corbett-1913
[26] W. Scheepens, “Partnerships for sustainability: let’s learn from the plover bird and the crocodile,” June 2018. [Online]. Available: https://www.stewardredqueen.com/insights/
blogs/partnerships-for-sustainability-lets-learn-from-the-plover-bird-and-the-crocodile/
[27] S. Zanj, “Advanced lane and vehicle detection,” March 2018. [Online]. Available:
https://medium.com/@siddheshzanj/advanced-lane-and-vehicle-detection-7d9d1388cec0 [28] D. Tian, “How to build a deep learning, self driving robotic car on a
shoestring budget,” April 2019. [Online]. Available: https://towardsdatascience.com/
deeppicar-part-1-102e03c83f2c
[29] Freewire, “Mobi ev charger,” June 2022. [Online]. Available: https://freewiretech.com/
products/mobi-ev/
[30] I. Mareev and D. U. Sauer, “Energy consumption and life cycle costs of overhead catenary heavy-duty trucks for long-haul transportation,” Energies, vol. 11, no. 12, 2018.
[Online]. Available: https://www.mdpi.com/1996-1073/11/12/3446
[31] M. C. Science, “Cityscope ecosystem,” June 2022. [Online]. Available: https:
//cityscope.media.mit.edu/general/CityScope%20Ecosystem
[32] Y. Miao, R. Koenig, and K. Knecht, “The development of optimization methods in gener- ative urban design: a review,” inProceedings of the 11th Annual Symposium on Simulation for Architecture and Urban Design, 2020, pp. 1–8.
[33] R. Koolhaas,Delirious New York: a retroactive manifesto for Manhattan. The Monacelli Press, LLC, 2014.
[34] J. Wines, “Highrise of homes, project (exterior perspective),” June 2022. [Online].
Available: https://www.moma.org/collection/works/709
[35] M. V. R. D. VRIES, El Croquis, no. 86 1991-1997. Michigan: MVRDV, 1997.
[36] R. Koolhaas, Project Japan, Metabolism Talks... Tokyo: Taschen, 2011.
[37] ´Abalos y Herreros, Slide of a photograph of Project 112 ARCH273090. Teaching and conferences, 19782006.
[38] R. Banham and R. Font, Megaestructuras: futuro urbano del pasado reciente. Gustavo Gili, 1978.
[39] MVRDV, “The lifted village,” June 2022. [Online]. Available: https://www.mvrdv.nl/
projects/220/the-lifted-village
[40] K. Lamb, “Suburb in the sky: how jakartans built an entire village on top of a mall,” August 2019. [Online]. Available: https://www.theguardian.com/cities/2019/aug/
05/suburb-in-the-sky-how-jakartans-built-an-entire-village-on-top-of-a-mall
[41] T. H. Foundation, Multifunctional Intensive Land Use: Principles, Practices, Projects, Policies. Habiforum Foundation, 2007. [Online]. Available: https://books.google.com/
books?id=GEywzQEACAAJ
[42] K. Cao, M. Batty, B. Huang, Y. Liu, L. Yu, and J. Chen, “Spatial multi-objective land use optimization: extensions to the non-dominated sorting genetic algorithm-ii,”International Journal of Geographical Information Science, vol. 25, no. 12, pp. 1949–1969, 2011.
[43] M. C.-L. Lin, “Affordable autonomous lightweight personal mobility,” Ph.D. dissertation, Massachusetts Institute of Technology, 2021.
[44] A. Curran, “Translink public bike system feasibility study,” Quay Communications Inc., Vancouver, 2008.
[45] C. Veganzones, Transformadores y m´aquinas el´ectricas as´ıncronas. Secci´on de Publica- ciones de la Escuela T´ecnica Superior de Ingenieros . . . , 2015.
[46] K. Watanabe, F. Campelo, Y. Iijima, K. Kawano, T. Matsuo, T. Mifune, and H. Igarashi,
“Optimization of inductors using evolutionary algorithms and its experimental validation,”
Magnetics, IEEE Transactions on, vol. 46, pp. 3393 – 3396, 09 2010.
[47] M. I. of Technology: MIT, “Volpe,” June 2022. [Online]. Available: https://volpe.mit.edu/
[48] M. M. L. C. S. Group, “Cityscope,” June 2022. [Online]. Available: https:
//www.media.mit.edu/projects/cityscope/overview/
[49] ——, “Mobility on-demand,” June 2022. [Online]. Available: https://www.media.mit.
edu/projects/mod/overview/
[50] ——, “Changing places,” June 2022. [Online]. Available: https://www.media.mit.edu/
projects/places/overview/
[51] ORI, “Ori,” June 2022. [Online]. Available: https://www.oriliving.com/
[52] U. Nations, “Sdgs communications materials,” June 2022. [Online]. Available:
https://www.un.org/sustainabledevelopment/news/communications-material/
[53] M. M. L. C. S. Group, “The power of without,” June 2022. [Online]. Available:
https://www.media.mit.edu/projects/power-of-without-1/overview/
[54] ——, “Mit city science network,” June 2022. [Online]. Available: https://
citysciencenetwork.org/
[55] G. Kell, “Five trends that show corporate responsibility is here to stay,” August 2014. [Online]. Available: https://www.theguardian.com/sustainable-business/blog/
five-trends-corporate-social-responsbility-global-movement
[56] J. Morgan, “Sustainable investing is moving mainstream,” April 2018. [Online]. Available:
https://www.jpmorgan.com/insights/research/esg
[57] United States Environmental Protection Agency (EPA), “Inventory of u.s. greenhouse gas emissions and sinks 1990–2019,” 2021.
[58] United Nations Department of Economic and Social Affairs Population Division, “World urbanization prospects: The 2018 revision,” United Nations New York, 2019.
[59] R. Zhang and S. Fujimori, “The role of transport electrification in global climate change mitigation scenarios,”Environmental Research Letters, vol. 15, no. 3, p. 034019, 2020.
[60] L. Martinez and P. Crist, “Urban mobility system upgrade–how shared self-driving cars could change city traffic,” in International Transport Forum, Paris, 2015.
[61] E. Martin, S. A. Shaheen, and J. Lidicker, “Impact of carsharing on household vehicle holdings: Results from north american shared-use vehicle survey,”Transportation research record, vol. 2143, no. 1, pp. 150–158, 2010.
[62] A. Millard-Ball,Car-sharing: Where and how it succeeds. Transportation Research Board, 2005, vol. 60.
[63] S. A. Shaheen, D. Sperling, and C. Wagner, “A short history of carsharing in the 90’s,”
1999.
[64] L. He, H.-Y. Mak, Y. Rong, and Z.-J. M. Shen, “Service region design for urban electric vehicle sharing systems,”Manufacturing & Service Operations Management, vol. 19, no. 2, pp. 309–327, 2017.
[65] S. Narayanan, E. Chaniotakis, and C. Antoniou, “Shared autonomous vehicle services: A comprehensive review,”Transportation Research Part C: Emerging Technologies, vol. 111, pp. 255–293, 2020.
[66] U.S. Energy Information Administration, “How much carbon dioxide is produced per kilowatthour of u.s. electricity generation?” https://www.eia.gov/tools/faqs/faq.php?id=
74&t=11, November 2021.
[67] European Environment Agency (EEA), “Greenhouse gas emission intensity of electricity generation by country,” https://www.eea.europa.eu/data-and-maps/daviz/
co2-emission-intensity-9/, 2021.
[68] R. Ewing and R. Cervero, “Travel and the built environment: A meta-analysis,” Journal of the American planning association, vol. 76, no. 3, pp. 265–294, 2010.
[69] A. Grignard, N. Maci`a, L. Alonso Pastor, A. Noyman, Y. Zhang, and K. Larson, “City- scope andorra: a multi-level interactive and tangible agent-based visualization,” in Pro- ceedings of the 17th International Conference on Autonomous Agents and MultiAgent Sys- tems, 2018, pp. 1939–1940.
[70] J. W.-H. Yao, “Idk: an interaction development kit to design interactions for lightweight autonomous vehicles,” Ph.D. dissertation, Massachusetts Institute of Technology, 2019.
[71] J. Harding, G. Powell, R. Yoon, J. Fikentscher, C. Doyle, D. Sade, M. Lukuc, J. Simons, J. Wang et al., “Vehicle-to-vehicle communications: readiness of v2v technology for ap- plication.” United States. National Highway Traffic Safety Administration, Tech. Rep., 2014.
[72] J. A. Sanguesa, V. Torres-Sanz, P. Garrido, F. Martinez, and J. M. M´arquez-Barja, “A review on electric vehicles: Technologies and challenges,” 2021.
[73] W. J. Mitchell, C. E. Borroni-Bird, and L. D. Burns,Reinventing the automobile: Personal urban mobility for the 21st century. MIT press, 2010.
[74] W. Shuai, P. Maill´e, and A. Pelov, “Charging electric vehicles in the smart city: A survey of economy-driven approaches,”IEEE Transactions on Intelligent Transportation Systems, vol. 17, no. 8, pp. 2089–2106, 2016.
[75] A. Rabiee, H. F. Farahani, M. Khalili, J. Aghaei, and K. M. Muttaqi, “Integration of plug-in electric vehicles into microgrids as energy and reactive power providers in market environment,”IEEE Transactions on Industrial Informatics, vol. 12, no. 4, pp. 1312–1320, 2016.
[76] P. Lombardi, M. Heuer, and Z. Styczynski, “Battery switch station as storage system in an autonomous power system: Optimization issue,” in IEEE PES General Meeting. IEEE, 2010, pp. 1–6.
[77] H. Gr¨unjes and M. Birkner, “Electro mobility for heavy duty vehicles (HDV): The Siemens eHighway System,” inHVTT12: 12th International Symposium on Heavy Vehicle Trans- port Technology, 2012.
[78] X. Zhang, Z. Yuan, Q. Yang, Y. Li, J. Zhu, and Y. Li, “Coil design and efficiency ana- lysis for dynamic wireless charging system for electric vehicles,” IEEE Transactions on Magnetics, vol. 52, no. 7, pp. 1–4, 2016.
[79] J. M. Miller, P. T. Jones, J.-M. Li, and O. C. Onar, “Ornl experience and challenges facing dynamic wireless power charging of ev’s,” IEEE cIrcuIts and systEms magazInE, vol. 15, no. 2, pp. 40–53, 2015.
[80] J. Neubauer and A. Pesaran, “Techno-economic analysis of bev service providers offering battery swapping services,” National Renewable Energy Lab.(NREL), Golden, CO (United States), Tech. Rep., 2013.
[81] SIEMENS, “First U.S. eHighway demonstration running in California - Press Release,”
2017. [Online]. Available: http://www.aqmd.gov/docs/default-source/news-archive/
2017/us-ehighway-demonstration.pdf
[82] D. Nicolaides, R. McMahon, D. Cebon, and J. Miles, “A national power infrastructure for charge-on-the-move: An appraisal for great britain,” IEEE Systems Journal, vol. 13, no. 1, pp. 720–728, 2018.
[83] A. Ahmad, M. S. Alam, and R. Chabaan, “A comprehensive review of wireless char- ging technologies for electric vehicles,”IEEE transactions on transportation electrification, vol. 4, no. 1, pp. 38–63, 2017.
[84] J. Woetzel, N. Garemo, J. Mischke, P. Kamra, and R. Palter, “Bridging infrastructure gaps: Has the world made progress,” McKinsey & Company, vol. 5, 2017.
[85] E. Cascetta, Transportation systems analysis: models and applications. Springer Science
& Business Media, 2009, vol. 29.
[86] K. Dorer and M. Calisti, “An adaptive solution to dynamic transport optimization,” in Proceedings of the fourth international joint conference on Autonomous agents and mul- tiagent systems, 2005, pp. 45–51.
[87] M. S. Innocente and P. Grasso, “Self-organising swarms of firefighting drones: Harness- ing the power of collective intelligence in decentralised multi-robot systems,” Journal of Computational Science, vol. 34, pp. 80–101, 2019.
[88] J.-L. Deneubourg, S. Goss, N. Franks, and J. Pasteels, “The blind leading the blind:
modeling chemically mediated army ant raid patterns,”Journal of insect behavior, vol. 2, no. 5, pp. 719–725, 1989.
[89] M. Dorigo, G. Theraulaz, and V. Trianni, “Swarm robotics: Past, present, and future [point of view],” Proceedings of the IEEE, vol. 109, no. 7, pp. 1152–1165, 2021.
[90] A. Noyman, T. Holtz, J. Kr¨oger, J. R. Noennig, and K. Larson, “Finding places: Hci platform for public participation in refugees’ accommodation process,”Procedia computer science, vol. 112, pp. 2463–2472, 2017.
[91] L. M. Bettencourt, “The kind of problem a city is: new perspectives on the nature of cities from complex systems theory,” inSanta Fe Institute, 2013.
[92] C. H. Liu, S. S. Rosenthal, and W. C. Strange, “The vertical city: Rent gradients, spatial structure, and agglomeration economies,”Journal of Urban Economics, vol. 106, pp. 101–
122, 2018.
[93] K. Al-Kodmany, “Sustainability and the 21st century vertical city: A review of design approaches of tall buildings,” Buildings, vol. 8, no. 8, p. 102, 2018.
[94] R. Koolhaas and B. Mau, S, m, l, xl. The Monacelli Press, LLC, 1997.
[95] T. Fukuda and S. Nakagawa, “Approach to the dynamically reconfigurable robotic sys- tem,” Journal of Intelligent and Robotic Systems, vol. 1, pp. 55–72, 1988.
[96] G. Beni, “The concept of cellular robotic system,” Proceedings IEEE International Sym- posium on Intelligent Control 1988, pp. 57–62, 1988.
[97] G. Beni and J. Wang, “Swarm intelligence in cellular robotic systems,” in Robots and Biological Systems: Towards a New Bionics?, P. Dario, G. Sandini, and P. Aebischer, Eds. Berlin, Heidelberg: Springer Berlin Heidelberg, 1993, pp. 703–712.
[98] R. Groß, M. Dorigo, and M. Yamakita, “Self-assembly of mobile robots: From swarm-bot to super-mechano colony,” inIAS, 2006.
[99] R. Groß, R. O’Grady, A. Christensen, M. Dorigo, and S. Kernbach, “The swarm-bot experience: Strength and mobility through physical cooperation,” 2013.
[100] R. Groß, M. Bonani, F. Mondada, and M. Dorigo, “Autonomous self-assembly in a swarm- bot,” inAMiRE, 2005.
[101] G. Beni, “From swarm intelligence to swarm robotics,” in Swarm Robotics, 2004.
[102] Y. Tan and Z. Zheng, “Research advance in swarm robotics,” Defence Technology, vol. 9, pp. 18–39, 2013.
[103] A. Zakiev, T. Tsoy, and E. Magid, “Swarm robotics: Remarks on terminology and classi- fication,” inICR, 2018.
[104] M. Brambilla, E. Ferrante, M. Birattari, and M. Dorigo, “Swarm robotics: a review from the swarm engineering perspective,” Swarm Intelligence, vol. 7, pp. 1–41, 2012.
[105] A. L. Alfeo, E. C. Ferrer, Y. L. Carrillo, A. Grignard, L. A. Pastor, D. T. Sleeper, M. G.
Cimino, B. Lepri, G. Vaglini, K. Larson et al., “Urban swarms: A new approach for autonomous waste management,” in2019 International Conference on Robotics and Auto- mation (ICRA). IEEE, 2019, pp. 4233–4240.
[106] M. Cherif, S. Senouci, and B. Ducourthial, “A new framework of self-organization of vehicular networks,” 2009 Global Information Infrastructure Symposium, pp. 1–6, 2009.
[107] A. Dorri, S. Kanhere, and R. Jurdak, “Blockchain in internet of things: Challenges and solutions,”ArXiv, vol. abs/1608.05187, 2016.
[108] A. Cheraghi, S. Shahzad, and K. Graffi, “Past, present, and future of swarm robotics,”
ArXiv, vol. abs/2101.00671, 2021.
[109] R. Arkin, “An behavior-based robotics,” 1998.
[110] A. Zakiev, T. Tsoy, and E. Magid, “Swarm robotics: remarks on terminology and clas- sification,” in International Conference on Interactive Collaborative Robotics. Springer, 2018, pp. 291–300.
[111] M. Dorigo, D. Floreano, L. Gambardella, F. Mondada, S. Nolfi, T. Baaboura, M. Birat- tari, M. Bonani, M. Brambilla, A. Brutschy, D. Burnier, A. Campo, A. L. Christensen, A. Decugniere, G. D. Caro, F. Ducatelle, E. Ferrante, A. F¨orster, J. M. Gonzales, J. Guzzi, V. Longchamp, S. Magnenat, N. Mathews, M. M. D. Oca, R. O’Grady, C. Pinciroli, G. Pini, P. R´etornaz, J. Roberts, V. Sperati, T. Stirling, A. Stranieri, T. St¨utzle, V. Tri- anni, E. Tuci, A. E. Turgut, and F. Vaussard, “Swarmanoid: A novel concept for the study of heterogeneous robotic swarms,” IEEE Robotics & Automation Magazine, vol. 20, pp.
60–71, 2013.
[112] C. Carrion and D. Levinson, “Value of travel time reliability: A review of current evid- ence,” Transportation research part A: policy and practice, vol. 46, no. 4, pp. 720–741, 2012.
[113] C. R. Bhat and R. Sardesai, “The impact of stop-making and travel time reliability on commute mode choice,” Transportation Research Part B: Methodological, vol. 40, no. 9, pp. 709–730, 2006.
[114] H. Al-Deek and E. B. Emam, “New methodology for estimating reliability in transporta- tion networks with degraded link capacities,”Journal of intelligent transportation systems, vol. 10, no. 3, pp. 117–129, 2006.
[115] Z.-P. Du and A. Nicholson, “Degradable transportation systems: sensitivity and reliability analysis,” Transportation Research Part B: Methodological, vol. 31, no. 3, pp. 225–237, 1997.
[116] H. Ahmed and J. Glasgow, “Swarm intelligence: Concepts, models and applications,”
2012.
[117] P. Kavathekar and Y. Chen, “Vehicle platooning: A brief survey and categorization,” 2011.
[118] M. Hanson, “Project metran : an integrated, evolutionary transportation system for urban areas,” 1966.
[119] M. Zabat, N. Stabile, S. Farascaroli, and F. Browand, “The aerodynamic performance of platoons: A final report,” PATH research report, 1995.
[120] J. Ploeg, S. Shladover, H. Nijmeijer, and N. V. D. Wouw, “Introduction to the special issue on the 2011 grand cooperative driving challenge,”IEEE Transactions on Intelligent Transportation Systems, vol. 13, pp. 989–993, 2012.
[121] S. Shladover, “Path at 20—history and major milestones,” IEEE Transactions on Intelli- gent Transportation Systems, vol. 8, pp. 584–592, 2006.
[122] C. Bergenhem, S. Shladover, E. Coelingh, C. Englund, and S. Tsugawa, “Overview of platooning systems,” 2012.
[123] A. Alam, “Fuel-efficient distributed control for heavy duty vehicle platooning,” 2011.
[124] C. Bergenhem, “Challenges of platooning on public motorways,” 2010.
[125] S. Tsugawa, S. Kato, and K. Aoki, “An automated truck platoon for energy saving,”2011 IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 4109–4114, 2011.
[126] S. Darbha and K. Rajagopal, “Intelligent cruise control systems and traffic flow stability,”
PATH research report, 1998.
[127] J. Michael, D. Godbole, J. Lygeros, and R. Sengupta, “Capacity analysis of traffic flow over a single-lane automated highway system,”J. Intell. Transp. Syst., vol. 4, pp. 49–80, 1998.
[128] D. B. Lee Jr, L. A. Klein, and G. Camus, “Induced traffic and induced demand,” Trans- portation Research Record, vol. 1659, no. 1, pp. 68–75, 1999.
[129] K. M. Hymel, K. A. Small, and K. Van Dender, “Induced demand and rebound effects in road transport,” Transportation Research Part B: Methodological, vol. 44, no. 10, pp.
1220–1241, 2010.
[130] S. Narayanan, E. Chaniotakis, and C. Antoniou, “Factors affecting traffic flow efficiency implications of connected and autonomous vehicles: A review and policy recommenda- tions,” Advances in Transport Policy and Planning, vol. 5, pp. 1–50, 2020.
[131] G. Peters and B. Peters, “Automotive vehicle safety,” 2002.
[132] J. Axelsson, “Safety in vehicle platooning: A systematic literature review,” IEEE Trans- actions on Intelligent Transportation Systems, vol. 18, pp. 1033–1045, 2017.
[133] B. Arem, C. V. Driel, and R. Visser, “The impact of cooperative adaptive cruise control on traffic-flow characteristics,”IEEE Transactions on Intelligent Transportation Systems, vol. 7, pp. 429–436, 2006.
[134] J. Axelsson, “Safety in vehicle platooning: A systematic literature review,” IEEE Trans- actions on Intelligent Transportation Systems, vol. 18, no. 5, pp. 1033–1045, 2016.