(you can watch it here on YouTube in HD and larger: http://www.youtube.com/watch?v=mzvexUm4MuI)
I have not had a chance to use Galapagos before but fortunately two days ago I started to mess around with it. I decided to test it but I wanted to set it up for something that would resemble some real-world arch/design related problem. So here I wanted to share this experiment related to space planning.
I have 3 rooms with “T”-like corridor configuration bound by
some rectangular zone with set dimensions. RoomRed and RoomGreen rooms have one
door each and the RoomBlue has two doors. The goal was to set a few
requirements for the plan configuration and areas and let Galapagos give me
options to choose from that fit all my requirements. I started with a few
condition but then quickly realized that I needed to supply more to narrow down
the option since the pool of solutions was too big.
So basically I ended up with 12 requirements to the optimum
floor plan configuration. Each of them I expressed as true/false output and fed
the result into the MassAddition component to give me total score of the
“success –meter”. The thing is that one
needs to supply only one number to the “fitness” parameter (as far as I
understand), meaning that in case you have a very complex / twisted set of
parameters to check for in one run you’ve got to be rather creative about how
you “squish” them all into one number. I might be very confusing from the
beginning but it actually gives you a lot of freedom in how you express your
requirements to the solution.
So, back to my definition:
Conditions that Galapagos needed to satisfy/check against
(In Each True worth 1pt and False worth 0pt):
0 - RoomBlue must not occupy more than 60% of combined roomArea
(total – circulation)
1 - RoomBlue must be at least two times larger than RoomGreen
2 - RoomBlue must be at least three times larger than RoomRed
3a - RoomRed must not be much smaller then RoomGreen (not
more than 20% difference)
3b - RoomRed must not ALSO NOT be larger than RoomGreen
4 - circulation area must not exceed 15% of combined room area
5 – corridors must not be narrower than X (slider value)
6a - redRoomDoor must be almost in front of the corresponding
blueRoomDoor1 (distance from door to door is not more than CorridorWidth*1.5)
6b - greenRoomDoor must be almost in front of the corresponding
blueRoomDoor2 (distance from door to door is not more than CorridorWidth*1.5)
6c - the doors of the BlueRoom must be at least (X*CorridorWidth)
away from each other
6d - the doors of the BlueRoom must be not be further than (X*CorridorWidth)
away from each other
So total is 12 conditions thus to satisfy all these
requirements Galapagos needed to optimize the solution up to 12 points (the max
possible fitness value would be 12).
The main sliders that I supplied for the “genome” are:
- U and V parameters that move this “T” configuration inside
the zone boundary
- rotation of the zone boundary
- parameters for door locations on the perimeter of each
room (door are free to be located anywhere on rooms’ perimeter)
I have done a good amount of runs and the solver would come back to me with quite a few solutions (that completely satisfied all the requirements, thus had fitness 12) during almost every run (except for a couple of ones that crashed on me). As you can see from the run on the video I had to stop the run half way because Galapagos by that time already found 3 solutions that had maximum possible fitness value of 12 (meaning that every one of the twelve requirements that I set up returned TRUE), so I didn’t really want to continue. You can see that all the requirements were satisfied as far as the relationships among the areas, door locations, corridor width etc.
This might not look like a very complex problem but it sure
shows that Galapagos can be used to solve more complex problems. Healthcare
planning for instance can be a great example – I can see how this type of
approach can have a huge potential to optimize very complex hospitals’ plans.



Nice work, and if you then wish to send the result into other bim software, would be interesting to connect it to the IFC generating components.
ReplyDeleteRefer http://geometrygym.blogspot.com/2011/02/ifc-generating-quantity-measurements.html if you're interested.
Jon,
ReplyDeleteThank you! I am thinking on the idea of integrating the Galapagos functionality with BIM (Revit). And here you gave me a good lead, thanks!
I haven't had a chance to use your plugins yet but I will sure take a look at it - it sounds very interesting.
Could you please give me a link to IFC documentation somewhere online?
good job , I am now using galapagos to link some simulation softwares
ReplyDelete