Facepalm0 commited on
Commit
7e1f96f
·
verified ·
1 Parent(s): b034760

Upload README.md with huggingface_hub

Browse files
Files changed (1) hide show
  1. README.md +77 -0
README.md ADDED
@@ -0,0 +1,77 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Ubiquant 字符猎手决赛方案
2
+
3
+ ## 一、模型架构
4
+
5
+ ### 1. 字符识别模型
6
+ - 基础网络:ResNet(训练过resnet18, resnet34, resnet50,最终采用resnet18)
7
+ - 开放集识别:OpenMax
8
+ - 特点:能够有效处理未知类别的字符识别问题
9
+
10
+ ### 2. 模型训练
11
+ - 使用字符识别数据集进行训练
12
+ - 使用交叉熵损失函数进行训练 (考虑加上triplet loss来调整类内和类间间距,但收敛效果不好)
13
+ - 使用AdamW优化器进行优化
14
+ - 基于验证集的准确率进行模型选择
15
+ - 设置了alpha, tailsize, threshold等超参数的搜索,采用网格搜索
16
+
17
+ ## 二、字符收集策略
18
+
19
+ ### 1. 基本定义
20
+ - 智能体需拾取144个物体,构成可定义所有网格拾取顺序的集合为动作空间:
21
+ - A = {a} = {< (x₀,y₀), (x₁,y₁), ... (x₁₄₄,y₁₄₄) > : xᵢ ≠ xⱼ, yᵢ ≠ yⱼ, i,j ≥ 1}
22
+ - 其中(x₀,y₀)为智能体初始位置
23
+ - 根据组合定理,动作空间的元素个数为:Card(A) = 144!
24
+
25
+ ### 2. 基于广义成本的轨迹评估
26
+ 计算成本包含两个部分:
27
+ 1. 执行成本(PC):
28
+ ```
29
+ PC = 144 + ∑ᵢ₌₀¹⁴³‖(xᵢ₊₁ - xᵢ, yᵢ₊₁ - yᵢ)‖₁
30
+ ```
31
+
32
+ 2. 存储成本(SC):
33
+ ```
34
+ SC = ∑ₑₗᵢₘ₍ᵢ₎₌Fₐₗₛₑ[∑ᵢ‖(xᵢ₊₁ - xᵢ, yᵢ₊₁ - yᵢ)‖₁] - 4
35
+ · ∑ₑₗᵢₘ₍ᵢ₎₌Tᵣᵤₑ[∑ᵢ‖(xᵢ₊₁ - xᵢ, yᵢ₊₁ - yᵢ)‖₁]
36
+ ```
37
+
38
+ 3. 广义成本:
39
+ ```
40
+ C = PC/10 + SC/144
41
+ ```
42
+
43
+ 4. 累计奖励:
44
+ ```
45
+ reward_cum = 136 - C
46
+ ```
47
+
48
+ ### 3. 初始次优轨迹生成
49
+ - 每收集4个相同物品,就能发生消除并获得奖励
50
+ - 采用一种次优选择方法生成初始轨迹
51
+ - 按照物品类别统计网格位置
52
+ - 然后随机取一批4个同类网格
53
+ - 按照最小化广义成本的原则添加到已有轨迹中
54
+
55
+ ### 4. 随机扰动轨迹优化
56
+ - 考虑先添加的网格对后续网格的影响
57
+ - 初始轨迹是次优的,需要进一步优化
58
+ - 采用随机扰动:每次从轨迹中随机选出一个网格
59
+ - 按照最小化广义成本重新插入
60
+ - 重复1000次
61
+
62
+ ### 5. 随机重启轨迹集成
63
+ - 随机扰动轨迹优化能改善局部轨迹,但无法进行全局优化
64
+ - 选择200种初始轨迹批次选择顺序
65
+ - 生成200条优化轨迹
66
+ - 从中选择最优轨迹
67
+
68
+ ### 6. 调优策略
69
+ 1. 参数调优
70
+ - 调整随机扰动次数
71
+ - 优化轨迹集成数量
72
+ - 微调广义成本中PC和SC的权重
73
+
74
+ 2. 策略改进
75
+ - 优化初始轨迹生成算法
76
+ - 改进随机扰动方式
77
+ - 设计更好的评估函数