
Home / Insights / Thought Leadership
Computational Tool Development for Computational Engineers
In the previous installment of this series, we explored the leadership perspectives and managerial considerations surrounding computational thinking (CT) and its application in the development of computational design tools. Through the lens of the Office Space Automator (OSA) project, we highlighted the role leaders play in facilitating and guiding projects driven by CT principles.
This article shifts our focus to computational engineers’ practical application of CT during the logic derivation phase of computational tool development. Continuing to use the OSA project as a case study, we will delve into computational engineers’ specific responsibilities and workflows as they translate domain knowledge into executable computational logic.
Logic derivation is a core component of any computational engineering endeavor. It involves extracting and formalizing domain-specific knowledge, design principles, and problem-solving heuristics into a structured computational representation. This computational logic is the foundation upon which computational tools are built, enabling the automation and optimization of complex tasks and processes.
In the context of the architecture, engineering, and construction (AEC) industry, effective logic derivation is crucial for capturing the collective expertise and best practices of various engineering disciplines. By translating this knowledge into computational form, computational engineers enable the creation of powerful tools that can streamline workflows, perform optimizations, and enhance design accuracy.
Moreover, the logic derivation phase builds a bridge between technical experts and computational developers. It serves as the interface where domain-specific knowledge is abstracted and formalized, allowing computational developers to subsequently transform this logic into functional software tools.
As the demand for computational design tools grows within the AEC industry, the importance of logic derivation cannot be overstated. Computational engineers skilled at this task are essential for developing computational tools that accurately reflect industry best practices, adhere to relevant codes and standards, and ultimately deliver value to end-users, clients, and stakeholders.
- Case Study Overview
- Role of Computational Engineers
- Logic Derivation Workflow
- **Abstraction**: Computational engineers abstracted away the specific details and complexities of the domain knowledge, identifying the core principles, rules, and relationships that governed the decision-making processes.
- **Decomposition**: They broke down these core principles and rules into their fundamental components, creating a hierarchical structure that facilitated a more granular understanding and the subsequent translation into computational logic.
- **Pattern Recognition**: Computational engineers analyzed the acquired knowledge to identify recurring patterns, heuristics, and decision-making frameworks that could be generalized and formalized into computational algorithms.
- **Logic Design**: The abstracted and decomposed knowledge was formalized into a structured computational framework. This framework served as the blueprint for the subsequent development of the OSA tool, ensuring that the computational logic accurately reflected the collective expertise of the technical experts.
- Logic Derivation
- **Knowledge Acquisition Barriers**: One of the primary challenges was the inherent difficulty in extracting tacit knowledge from technical experts, who often rely on intuition, experience, and “rules of thumb” that are not explicitly documented or easily articulated. To address this, computational engineers adopted an iterative approach to knowledge acquisition, conducting multiple sessions with technical experts and continuously refining and validating the acquired knowledge.
- **Translating Ambiguity**: Certain aspects of domain knowledge, such as subjective design considerations or context-specific decision-making, can be ambiguous and challenging to translate into precise computational logic. Computational engineers led collaborative sessions where technical experts worked together to articulate and visualize their decision-making processes, fostering a shared understanding.
- **Balancing Complexity and Abstraction**: Finding the right balance between capturing the necessary details and maintaining an appropriate level of abstraction was a constant challenge during the logic derivation process. To navigate this challenge, they developed prototypes and conducted regular validation sessions with technical experts to ensure the derived computational logic accurately represented their expertise.
- **Ensuring Consistency and Accuracy**: With technical experts from multiple engineering disciplines contributing their knowledge, it was important to ensure consistency and accuracy in the derived computational logic. Meticulous documentation and knowledge management systems were instrumental in maintaining consistency—their use standardized knowledge sharing and enabled traceability of the derived logic.
- **Stakeholder Alignment**: Aligning the derived logic with the diverse perspectives and expectations of various stakeholders, including end-users, subject matter experts, and sector leadership, posed a recurring challenge. Computational engineers actively engaged with stakeholders throughout the logic derivation process, seeking feedback, addressing concerns, and ensuring alignment with the project’s objectives.
- **Foster Open Communication and Trust**: Establishing an environment of open communication and trust between computational engineers and technical experts encourages effective knowledge transfer.
- **Embrace Iterative Processes**: Logic derivation is an iterative process that requires continuous refinement and validation. Embracing this iterative nature is essential for achieving accurate and robust computational logic.
- **Leverage Visualization Techniques**: Visual representations and modelling techniques can significantly aid in articulating and understanding complex domain knowledge, bridging the gap between technical experts and computational engineers.
- **Prioritize Documentation**: Thorough documentation ensures consistency and traceability and improves knowledge sharing and collaboration within the team and across future projects.
- **Continuous Learning and Adaptation**: Computational engineers should remain open to continuous learning and adapt as necessary, as new challenges and domain-specific nuances may arise throughout the logic derivation process.
- Broader Implications
- Conclusion
