本文档描述“自动竞标调研系统”的目标、模块设计、数据管道与算法框架,用于识别潜在竞标对手、构建投标画像、进行胜率分析并生成投标策略报告。
┌─────────────────────────────────────────────────────────────────┐
│ 自动竞标调研系统 │
│ Auto Bidding Competitor Research System │
├─────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 竞标对手 │ → │ 投标画像 │ → │ 胜率分析 │ │
│ │ 识别 │ │ 采集 │ │ 引擎 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ↓ ↓ ↓ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ • 同类项目中标 │ │ • 历史投标记录 │ │ • 中标概率 │ │
│ │ • 资质匹配 │ │ • 报价习惯 │ │ • 报价策略 │ │
│ │ • 区域活跃度 │ │ • 技术路线 │ │ • 差异化建议 │ │
│ │ • 业绩相似度 │ │ • 核心团队 │ │ • 风险预警 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │
│ ↓ │
│ ┌──────────────────────┐ │
│ │ 竞标分析报告生成 │ │
│ │ 投标策略 + 定价建议 │ │
│ └──────────────────────┘ │
└─────────────────────────────────────────────────────────────────┘
识别逻辑的优先级与策略:
输出为候选竞标对手列表(含评分与来源解释)。
候选评分(示例):
CandidateScore =
0.35 * HistoricalWinScore
+ 0.25 * QualificationMatch
+ 0.20 * RegionalActivity
+ 0.20 * PerformanceSimilarity
画像维度:
画像产出:
关键特征补充:
分析框架:
策略输出方式:
输出结构:
支持 DOCX/PDF/Markdown 输出。
WinScore =
0.25 * QualificationMatch
+ 0.20 * PerformanceSimilarity
+ 0.15 * RegionalActivity
+ 0.20 * PriceStrategyFit
+ 0.20 * TechnicalSolutionFit
胜率区间:
0.75:高概率
输入:
策略输出(示例):
计算逻辑(示例):
PriceRatio = BidPrice / ControlPrice
RecommendedRange = [Q25, Q60] # 对手历史报价分位区间
自动调研模块提供:
联动结果用于:
将竞品功能整理为可复用特征库,例如:
BidProject
- id, name, category, region, budget, qualification_requirements
Bidder
- id, name, qualifications, region
BidderProfile
- bidder_id
- win_rate, bid_count, avg_price_ratio
- strengths, weaknesses, tags
BiddingAnalysis
- project_id
- competitors: list[BidderProfile]
- win_probability
- price_strategy
- differentiation_suggestions
- risk_alerts
{
"project_id": "P2026-001",
"competitors": [
{
"bidder_id": "B001",
"win_rate": 0.32,
"avg_price_ratio": 0.92,
"tags": ["低价策略", "区域优势"]
}
],
"win_probability": 0.63,
"price_strategy": {
"conservative": "0.95 * control_price",
"balanced": "0.92 * control_price",
"aggressive": "0.88 * control_price"
},
"differentiation_suggestions": ["强化技术方案", "补充案例对标"],
"risk_alerts": ["对手B001区域活跃度高"]
}
class BiddingCompetitorResearch:
"""自动竞标调研系统"""
def __init__(self, project: BidProject):
self.project = project # 目标投标项目
# ========== 1. 竞标对手识别 ==========
def identify_bidders(self) -> list[Bidder]:
"""
识别可能参与本项目投标的对手
- 同类项目历史中标企业
- 满足资质要求的活跃投标企业
- 同区域近期活跃的投标企业
- 业绩相似度加权排序
"""
candidates = []
candidates += query_historical_winners(self.project)
candidates += match_qualification_bidders(self.project)
candidates += query_regional_active_bidders(self.project.region)
return rank_candidates(candidates, self.project)
# ========== 2. 投标画像采集 ==========
def build_bidder_profile(self, bidder: Bidder) -> BidderProfile:
"""
构建竞标对手的投标画像
- 历史投标/中标记录
- 报价区间与习惯
- 擅长的项目类型
- 核心团队配置
"""
records = load_bid_records(bidder)
pricing = analyze_pricing(records)
strengths = extract_strengths(records)
return BidderProfile(
bidder_id=bidder.id,
bid_count=len(records),
avg_price_ratio=pricing.avg_ratio,
strengths=strengths,
tags=build_tags(records),
)
# ========== 3. 竞标分析 ==========
def analyze(self) -> BiddingAnalysis:
"""
竞标态势分析
- 我方 vs 竞标对手对比
- 各方中标概率预测
- 最优报价建议
- 差异化竞争策略
"""
bidders = self.identify_bidders()
profiles = [self.build_bidder_profile(b) for b in bidders]
win_prob = predict_win_probability(self.project, profiles)
price_strategy = recommend_price(self.project, profiles)
suggestions = build_diff_strategy(self.project, profiles)
return BiddingAnalysis(
project_id=self.project.id,
competitors=profiles,
win_probability=win_prob,
price_strategy=price_strategy,
differentiation_suggestions=suggestions,
risk_alerts=detect_risks(self.project, profiles),
)
# ========== 4. 报告生成 ==========
def generate_report(self, format: str = 'docx') -> Report:
"""生成竞标调研报告"""
analysis = self.analyze()
return render_report(analysis, format=format)