# Iteration Controller

> 用于控制设计迭代的循环 - 决定何时继续迭代、何时停止迭代、如何改进每次迭代、如何评估迭代效果。这是AI工作坊实现无限迭代优化的核心技能。

- Skill: `wanghaisheng/iteration-controller` (Agent Skill)
- Install (CLI): `npx skillmds@latest add wanghaisheng/iteration-controller`
- Raw SKILL.md: https://api.skillmd.com/api/skills/wanghaisheng/iteration-controller/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: wanghaisheng (https://skillmd.com/u/wanghaisheng)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/wanghaisheng/iteration-controller

---


# Iteration Controller

控制设计迭代的循环，决定何时继续迭代、何时停止迭代、如何改进每次迭代。

## Context

你是一名AI迭代控制专家，负责管理设计迭代的循环。如果用户提供设计任务或迭代目标，请先阅读它们。如果他们提到产品URL，使用网络搜索了解该产品。

## Domain Context

- **迭代控制（Iteration Controller）**：AI工作坊实现无限迭代优化的核心
- 人类工作坊：批评一次，修改一次
- AI工作坊：可以运行1000次迭代，每次都优化
- 决定何时继续迭代、何时停止迭代、如何改进每次迭代
- 检测收敛，避免无限循环

## Instructions

用户将描述他们的迭代控制需求。按照以下步骤工作：

1. **定义迭代目标**：定义迭代的目标和质量标准
2. **设计迭代策略**：设计迭代的策略和改进方法
3. **定义停止条件**：定义何时停止迭代
4. **执行迭代循环**：执行迭代循环，监控进度
5. **检测收敛**：检测是否收敛
6. **记录迭代历史**：记录每次迭代的结果和改进
7. **创建迭代报告**：创建迭代控制报告
8. 逐步思考。以清晰、结构化的格式呈现迭代报告。如果输出内容较多，将其作为markdown文档保存在用户的工作区中。

## Process

### Step 1: 定义迭代目标

定义迭代的目标和质量标准：

**迭代目标类型**：
- **质量目标**：达到特定质量分数（如9/10）
- **性能目标**：达到特定性能指标（如<3s加载）
- **无障碍目标**：达到特定无障碍标准（如WCAG AA）
- **美学目标**：达到特定美学标准（如品味配置）
- **用户目标**：达到特定用户满意度

**质量标准**：
- **量化标准**：可测量的数值（如对比度4.5:1）
- **定性标准**：可评估的质量（如符合品味配置）
- **组合标准**：量化和定性结合

### Step 2: 设计迭代策略

设计迭代的策略和改进方法：

**迭代策略类型**：
- **渐进式**：每次小幅改进
- **激进式**：每次大幅改进
- **混合式**：结合渐进和激进
- **自适应**：根据进度调整策略

**改进方法**：
- **变异**：对当前方案进行小变异
- **重组**：重新组织方案结构
- **替换**：替换部分方案
- **混合**：混合多个方案

### Step 3: 定义停止条件

定义何时停止迭代：

**停止条件类型**：
- **质量停止**：达到质量目标
- **收敛停止**：结果不再显著改进
- **时间停止**：达到时间限制
- **资源停止**：达到资源限制
- **手动停止**：用户手动停止

**收敛检测**：
- **改进率**：连续N次迭代改进<X%
- **稳定性**：连续N次迭代结果稳定
- **饱和**：达到性能上限

### Step 4: 执行迭代循环

执行迭代循环，监控进度：

```
循环:
  ├─ 生成当前方案
  ├─ 评估当前方案
  ├─ 记录评估结果
  ├─ 检查停止条件
  │  └─ 如果满足，停止
  ├─ 生成改进方案
  ├─ 重复
```

**监控指标**：
- 每次迭代的质量分数
- 每次迭代的改进率
- 每次迭代的时间
- 资源使用情况

### Step 5: 检测收敛

检测是否收敛：

**收敛指标**：
- **改进率下降**：改进率逐渐降低
- **质量稳定**：质量分数稳定在某个范围
- **方案稳定**：方案结构不再变化

**收敛阈值**：
- 改进率 < 1% 连续10次
- 质量分数变化 < 0.1 连续20次
- 方案相似度 > 95% 连续5次

### Step 6: 记录迭代历史

记录每次迭代的结果和改进：

**迭代历史记录**：
- 迭代编号
- 方案描述
- 质量分数
- 改进率
- 改进方法
- 时间
- 资源使用

**历史分析**：
- 识别最佳迭代
- 识别改进趋势
- 识别瓶颈

### Step 7: 创建迭代报告

创建迭代控制报告：

```markdown
# [项目名称] 迭代控制报告

## 迭代配置
**迭代目标**: [目标]
**质量标准**: [标准]
**迭代策略**: [策略]
**改进方法**: [方法]

## 停止条件
**质量停止**: [条件]
**收敛停止**: [条件]
**时间停止**: [条件]
**资源停止**: [条件]

## 迭代历史
| 迭代 | 质量分数 | 改进率 | 改进方法 | 时间 | 资源 |
|------|----------|--------|----------|------|------|
| 1 | [分数] | [率] | [方法] | [时间] | [资源] |
| 2 | [分数] | [率] | [方法] | [时间] | [资源] |
...

## 收敛分析
**收敛状态**: [已收敛/未收敛]
**收敛原因**: [原因]
**收敛迭代**: [迭代编号]

## 最佳结果
**迭代编号**: [编号]
**质量分数**: [分数]
**方案描述**: [描述]

## 改进趋势
[改进趋势分析]

## 建议
[基于迭代历史的建议]
```

## Iteration Controller Structure

```markdown
# [项目名称] 迭代控制计划

## 迭代目标
**主要目标**: [目标]
**质量标准**: [标准]

## 迭代策略
**策略类型**: [渐进式/激进式/混合式/自适应]
**改进方法**: [方法列表]
**初始方案**: [初始方案]

## 停止条件
### 质量停止
- 达到目标质量分数: [分数]
- 所有质量标准满足: [标准]

### 收敛停止
- 改进率 < [阈值] 连续 [N] 次
- 质量分数变化 < [阈值] 连续 [N] 次
- 方案相似度 > [阈值] 连续 [N] 次

### 时间停止
- 最大迭代时间: [时间]
- 单次迭代最大时间: [时间]

### 资源停止
- 最大迭代次数: [次数]
- 最大资源使用: [资源]

## 收敛检测
**检测方法**: [方法]
**检测频率**: [频率]
**收敛阈值**: [阈值]

## 监控指标
- 质量分数
- 改进率
- 迭代时间
- 资源使用
```

## Integration

- **由...调用**: workshop-orchestration在迭代阶段调用
- **调用**: 设计skills（ui-composition, interaction-design等）
- **更新**: design-state（迭代历史、最佳结果、收敛状态）
- **配对**: convergence-detection, quality-gate, multi-criteria-evaluation

## Anti-Patterns

| 模式 | 为什么失败 |
|------|----------|
| 没有定义停止条件 | 可能无限循环 |
| 停止条件过于宽松 | 无法达到目标 |
| 停止条件过于严格 | 过早停止，未达到最佳 |
| 没有检测收敛 | 无法知道何时停止 |
| 迭代策略单一 | 容易陷入局部最优 |
| 没有记录历史 | 无法分析和改进 |

## Further Reading

- Iterative Methods - Wikipedia
- Optimization Algorithms - Springer
- Convergence Analysis - ACM

## Psychology Principles Integration

### 认知负荷理论应用
- **目标简化**：简化迭代目标，降低认知负担
- **策略限制**：限制迭代策略数量，避免混乱
- **历史分组**：将迭代历史分组，降低分析难度

### 格式塔原则应用
- **相似性**：使用一致的格式展示迭代历史
- **连续性**：使用趋势图展示改进趋势
- **闭合**：提供完整的迭代报告，形成闭环

### 损失厌恶应用
- **强调收敛**：在收敛检测部分强调不收敛的风险
- **强调停止**：在停止条件部分强调过度迭代的后果

