cwicr-quantity-matcher

Featured

Match BIM quantities to CWICR work items. Map element categories to cost codes, validate quantities, and generate cost-linked QTOs.

AI & Automation 310 stars 79 forks Updated 2 weeks ago MIT

Install

View on GitHub

Quality Score: 91/100

Stars 20%
83
Recency 20%
90
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# CWICR Quantity Matcher ## Business Case ### Problem Statement BIM exports contain quantities but: - Element categories don't match cost codes - Manual mapping is error-prone - Different naming conventions - Need consistent code assignment ### Solution Intelligent matching of BIM element quantities to CWICR work items using category mapping, semantic matching, and rule-based assignment. ### Business Value - **Automation** - Reduce manual mapping effort - **Consistency** - Standard code assignment - **Accuracy** - Validated quantity linkage - **Integration** - BIM-to-cost data flow ## Technical Implementation ```python import pandas as pd import numpy as np from typing import Dict, Any, List, Optional, Tuple from dataclasses import dataclass, field from enum import Enum import re from difflib import SequenceMatcher class MatchMethod(Enum): """Methods for matching BIM elements to work items.""" EXACT = "exact" CATEGORY = "category" SEMANTIC = "semantic" RULE_BASED = "rule_based" MANUAL = "manual" class MatchConfidence(Enum): """Confidence level of match.""" HIGH = "high" # >90% confidence MEDIUM = "medium" # 70-90% LOW = "low" # 50-70% MANUAL = "manual" # <50% - needs review @dataclass class QuantityMatch: """Single quantity match result.""" bim_element_id: str bim_category: str bim_description: str bim_quantity: float bim_unit: str matched_work_item: str work_item_descrip...

Details

Author
datadrivenconstruction
Repository
datadrivenconstruction/DDC_Skills_for_AI_Agents_in_Construction
Created
7 months ago
Last Updated
2 weeks ago
Language
Python
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category