Build an IFC MEP Ductwork Routing Clash Coordinator
Detect geometric clashes between HVAC ductwork and structural elements using IfcOpenShell. Formulate collision mitigation offsets and generate standard BIM Collaboration Format coordination topics.
What you are building
The core problem, expected build, and operating context for this challenge.
Detect geometric clashes between HVAC ductwork and structural elements using IfcOpenShell. Formulate collision mitigation offsets and generate standard BIM Collaboration Format coordination topics.
MEP BIM Coordination Specialist
Upload structural and mechanical IFC models into the coordination platform.
Execute automated geometric collision checks between IfcDuctSegment and IfcBeam entities.
Calculate minimal non-colliding lateral and vertical routing elevation adjustments.
Generate structured BCF-XML coordination issues assigned to the HVAC design team.
3D collision viewer displaying clashing elements in red, clash coordinates, clearance metrics, and BCF issue export options.
Use open-source multidisciplinary BIM coordination test models from the IfcClash test suite on GitHub. Starter examples below are synthetic. They are not downloaded records.
IfcOpenShell Leverages IfcOpenShell ifcclash and bcf modules to parse intersecting solids and author BCF coordination issues.
pydantic-ai, ifcopenshell, fastapi. Pydantic AI guarantees type safety and strict schema conformance when generating BCF issue records and routing offsets. Instruction model capable of analyzing geometric coordinate clashes and drafting technical resolution instructions.
Submit runnable source, pinned dependencies, setup commands, a working interface, example outputs, and a recorded end-to-end demo. Include tests and an action log.
Identifies intersections between mechanical duct segments and structural framing elements.
Computes vertical clearance requirements based on duct external cross-sectional dimensions.
Generates valid BCF-compliant issue payloads containing element GUIDs and viewpoints.
```json [ { "input": { "clash_id": "CLASH-MEP-STR-042", "duct_element": { "guid": "2Vw89a1Lb9FfW0e78c6V12", "system": "Supply Air", "elevation_center_mm": 3200, "height_mm": 400, "width_mm": 600 }, "beam_element": { "guid": "0Kx32b5Mc1HgV3d90a8B34", "soffit_elevation_mm": 3100, "depth_mm": 500 } }, "expected_output": { "clash_id": "CLASH-MEP-STR-042", "collision_detected": true, "overlap_distance_mm": 300, "resolution_proposal": { "recommended_action": "Lower duct elevation", "new_center_elevation_mm": 2850, "clearance_margin_mm": 50 }, "bcf_issue": { "topic_type": "Clash", "title": "Supply Air Duct Clashing with Structural Steel Beam", "priority": "Critical", "assigned_to": "HVAC_Lead_Engineer" } } }, { "input": { "clash_id": "CLASH-MEP-STR-088", "duct_element": { "guid": "1Aa11a1Lb9FfW0e78c6V99", "system": "Exhaust Air", "elevation_center_mm": 2700, "height_mm": 300, "width_mm": 400 }, "beam_element": { "guid": "3Zz99b5Mc1HgV3d90a8B11", "soffit_elevation_mm": 3200, "depth_mm": 450 } }, "expected_output": { "clash_id": "CLASH-MEP-STR-088", "collision_detected": false, "overlap_distance_mm": 0, "resolution_proposal": { "recommended_action": "Maintain current alignment", "new_center_elevation_mm": 2700, "clearance_margin_mm": 350 }, "bcf_issue": null } } ] ```
Routing changes are proposed advisory adjustments. Structural and ductwork re-routing must be approved by licensed consulting engineers. Use mock external writes. Require human review before any real deployment.
Participation guide
Routing changes are proposed advisory adjustments. Structural and ductwork re-routing must be approved by licensed consulting engineers. Use mock external writes and human review.
How work is evaluated
Identifies intersections between mechanical duct segments and structural framing elements. Computes vertical clearance requirements based on duct external cross-sectional dimensions. Generates valid BCF-compliant issue payloads containing element GUIDs and viewpoints.
Runnable source, pinned dependencies, setup commands, working interface, example outputs, recorded demo, tests, and action logs.
Challenge datasets
Public datasets, plus the private datasets you have access to.
How submissions are scored
These dimensions define what the evaluator checks and which criteria separate a passable run from a strong one.
Complete workflow
Upload structural and mechanical IFC models into the coordination platform. Execute automated geometric collision checks between IfcDuctSegment and IfcBeam entities. Calculate minimal non-colliding lateral and vertical routing elevation adjustments. Generate structured BCF-XML coordination issues assigned to the HVAC design team.
Missing or incorrect.
Partly complete, with documented gaps.
Complete, with reproducible evidence.
Correctness and evidence
Identifies intersections between mechanical duct segments and structural framing elements. Computes vertical clearance requirements based on duct external cross-sectional dimensions. Generates valid BCF-compliant issue payloads containing element GUIDs and viewpoints.
Missing or incorrect.
Partly complete, with documented gaps.
Complete, with reproducible evidence.
Review interface
3D collision viewer displaying clashing elements in red, clash coordinates, clearance metrics, and BCF issue export options.
Missing or incorrect.
Partly complete, with documented gaps.
Complete, with reproducible evidence.
Safe execution
Routing changes are proposed advisory adjustments. Structural and ductwork re-routing must be approved by licensed consulting engineers.
This dimension contributes its full weight only when the submission satisfies the requirement. Partial credit is not awarded.
What you should walk away with
Upload structural and mechanical IFC models into the coordination platform.
Execute automated geometric collision checks between IfcDuctSegment and IfcBeam entities.
Calculate minimal non-colliding lateral and vertical routing elevation adjustments.
Generate structured BCF-XML coordination issues assigned to the HVAC design team.
Reference links and supporting material
Use open-source multidisciplinary BIM coordination test models from the IfcClash test suite on GitHub. Supplied starter examples are synthetic, not source extracts.
Challenge setup
Configuration summary for this challenge.
Challenge input
Input details are not configured.
Pydantic AI
Typed Python agent framework.
Evaluated output
No output checks are configured.
- Upload structural and mechanical IFC models into the coordination platform. Execute automated geometric col...
- Identifies intersections between mechanical duct segments and structural framing elements. Computes vertica...
- 3D collision viewer displaying clashing elements in red, clash coordinates, clearance metrics, and BCF issu...
- 2 public reference cases
- 2 configured tools
Summary shows the first task, up to three tools, and up to three evidence items. Open the technical recipe to view all configured items.
View technical recipe
Configured tools
- Pydantic AI · Optional
- Pydantic AI · Optional
Evaluation contract
- Complete workflow · Weight 40
- Correctness and evidence · Weight 30
- Review interface · Weight 20
- Safe execution · Weight 10
Reference cases
- 2 public reference cases
Workflow tasks
No workflow tasks are configured.
Recipe freeze marker
No recipe freeze time is recorded.