This is my first try out using rule base approach. Its still very immature and kind of sloppy , still working on it. Please comment and criticise so I can learn more about it.
1 yellow circles= 1 3 room unit
2 green cirlces= 1 4 room unit
3 blue circles= 1 5 room unt
black circle = core
The first row of changes is the modules are changing according to the pecentage of crossover between 3 room , 4 room and 5 room module.
In the second row, a new rule is added where the unoccupied space needs to be at least 3 grids and cannot be isolated one grid.
In the third row, a new rule is added that each module needs to be connected to a core.