A Methodology for Computational Architectural Design Based on Biological Principles