IrisRainbowNeko / genshin_auto_fish

基于深度强化学习的原神自动钓鱼AI
4.77k stars 719 forks source link

遇见赤魔王时 environment.py 103行 报错list index out of range #115

Open Clyde-Li opened 3 years ago

Clyde-Li commented 3 years ago

cuda 10.2 python3.6

当池子里只有一条赤魔王时 1.钓完上一条鱼后,左右看池子会报错 2.重启启动脚本,左右看池子会报错 尚未进行更多测试。

报错信息如下: python fishing.py image -f yolox/exp/yolox_tiny_fish.py -c weights/best_tiny3.pth --conf 0.25 --nms 0.45 --tsize 640 --device gpu 2021-09-29 14:04:10.831 | INFO | main:main:91 - Args: Namespace(ckpt='weights/best_tiny3.pth', conf=0.25, demo='image', device='gpu', exp_file='yolox/exp/yolox_tiny_fish.py', experiment_name='yolox_tiny_fish', fp16=False, fuse=False, legacy=False, model_dir='./weights/fish_genshin_net.pth', n_actions=2, n_states=3, name=None, nms=0.45, path='./assets/dog.jpg', step_tick=12, trt=False, tsize=640) 2021-09-29 14:04:11.202 | INFO | main:main:101 - Model Summary: Params: 5.03M, Gflops: 15.15 2021-09-29 14:04:15.355 | INFO | main:main:114 - loading checkpoint 2021-09-29 14:04:15.833 | INFO | main:main:118 - loaded checkpoint done. init ok 2021-09-29 14:04:21.716 | INFO | fisher.predictor:inference:77 - Infer time: 1.9960s 2021-09-29 14:04:22.136 | INFO | fisher.predictor:inference:77 - Infer time: 0.1260s 2021-09-29 14:04:22.555 | INFO | fisher.predictor:inference:77 - Infer time: 0.1244s 2021-09-29 14:04:22.951 | INFO | fisher.predictor:inference:77 - Infer time: 0.1191s 2021-09-29 14:04:23.378 | INFO | fisher.predictor:inference:77 - Infer time: 0.1368s 2021-09-29 14:04:23.779 | INFO | fisher.predictor:inference:77 - Infer time: 0.1209s 2021-09-29 14:04:24.184 | INFO | fisher.predictor:inference:77 - Infer time: 0.1259s 2021-09-29 14:04:24.608 | INFO | fisher.predictor:inference:77 - Infer time: 0.1286s 2021-09-29 14:04:25.024 | INFO | fisher.predictor:inference:77 - Infer time: 0.1319s 2021-09-29 14:04:25.444 | INFO | fisher.predictor:inference:77 - Infer time: 0.1205s 2021-09-29 14:04:25.850 | INFO | fisher.predictor:inference:77 - Infer time: 0.1225s 2021-09-29 14:04:26.283 | INFO | fisher.predictor:inference:77 - Infer time: 0.1326s 2021-09-29 14:04:29.795 | INFO | fisher.predictor:inference:77 - Infer time: 0.1347s tensor(38.7164) tensor(16.2854) 2021-09-29 14:04:30.229 | INFO | fisher.predictor:inference:77 - Infer time: 0.1417s tensor(31.5673) tensor(16.1113) 2021-09-29 14:04:30.657 | INFO | fisher.predictor:inference:77 - Infer time: 0.1342s tensor(138.0808) tensor(64.2590) 2021-09-29 14:04:31.085 | INFO | fisher.predictor:inference:77 - Infer time: 0.1256s Traceback (most recent call last): File "D:\Game\genshin_auto_fish\fisher\environment.py", line 70, in throw_rod key=lambda x: distance((x[2][0]+x[2][2])/2, (x[2][1]+x[2][3])/2, rod_cx, rod_cy)) ValueError: min() arg is an empty sequence 2021-09-29 14:04:31.504 | INFO | fisher.predictor:inference:77 - Infer time: 0.1274s 2021-09-29 14:04:32.018 | INFO | fisher.predictor:inference:77 - Infer time: 0.1262s Traceback (most recent call last): File "D:\Game\genshin_auto_fish\fisher\environment.py", line 70, in throw_rod key=lambda x: distance((x[2][0]+x[2][2])/2, (x[2][1]+x[2][3])/2, rod_cx, rod_cy)) ValueError: min() arg is an empty sequence 2021-09-29 14:04:32.434 | INFO | fisher.predictor:inference:77 - Infer time: 0.1234s tensor(60.7266) tensor(-38.5883) 2021-09-29 14:04:32.852 | INFO | fisher.predictor:inference:77 - Infer time: 0.1257s tensor(49.5160) tensor(-37.7053) 2021-09-29 14:04:33.281 | INFO | fisher.predictor:inference:77 - Infer time: 0.1368s tensor(-13.3208) tensor(-30.8173) 2021-09-29 14:04:33.716 | INFO | fisher.predictor:inference:77 - Infer time: 0.1386s tensor(-63.7857) tensor(-19.7147) 2021-09-29 14:04:34.126 | INFO | fisher.predictor:inference:77 - Infer time: 0.1308s tensor(-49.4913) tensor(-13.4689) 2021-09-29 14:04:34.552 | INFO | fisher.predictor:inference:77 - Infer time: 0.1351s tensor(-9.9929) tensor(-12.8926) 2021-09-29 14:04:50.043 | INFO | fisher.predictor:inference:77 - Infer time: 0.1304s 2021-09-29 14:04:50.463 | INFO | fisher.predictor:inference:77 - Infer time: 0.1243s 2021-09-29 14:04:50.872 | INFO | fisher.predictor:inference:77 - Infer time: 0.1261s 2021-09-29 14:04:51.320 | INFO | fisher.predictor:inference:77 - Infer time: 0.1425s 2021-09-29 14:04:51.732 | INFO | fisher.predictor:inference:77 - Infer time: 0.1271s 2021-09-29 14:04:52.149 | INFO | fisher.predictor:inference:77 - Infer time: 0.1273s 2021-09-29 14:04:52.563 | INFO | fisher.predictor:inference:77 - Infer time: 0.1249s 2021-09-29 14:04:52.978 | INFO | fisher.predictor:inference:77 - Infer time: 0.1312s 2021-09-29 14:04:53.399 | INFO | fisher.predictor:inference:77 - Infer time: 0.1336s 2021-09-29 14:04:53.803 | INFO | fisher.predictor:inference:77 - Infer time: 0.1252s 2021-09-29 14:04:54.235 | INFO | fisher.predictor:inference:77 - Infer time: 0.1354s 2021-09-29 14:04:54.662 | INFO | fisher.predictor:inference:77 - Infer time: 0.1318s Traceback (most recent call last): File "fishing.py", line 190, in main(exp, args) File "fishing.py", line 148, in main start_fishing(predictor, agent) File "fishing.py", line 158, in start_fishing ff.do_fish() File "**\environment.py", line 103, in do_fish if self.fish_list[0]!=self.last_fish_type: IndexError: list index out of range

Jerrien commented 3 years ago

好像训练样本里没有赤魔王

ghost commented 2 years ago

145