This project started using the agent based modelling library Mesa to stack bricks in a cube to try to fill a cube. The project is designed to make interesting shapes rather than necessarily fill the whole cube.
I'm using the free program OpenScad to preview the geometry I create.
Right now the rules are that each brick is stacked above or below half of the previous brick and that brick is rotated in one of the four cardinal directions.
Eventually I'd like to incorporate elements of Conrad's Game of Life into this model, try to use graph theory to optimize the model, and also create a web based front end to display this model, perhaps in Three.js.