kimbring2 / AlphaStar_Implementation

This project is implementation code of AlphaStar
Apache License 2.0
187 stars 26 forks source link

about the spatial encoder #3

Closed SongleChen2015 closed 3 years ago

SongleChen2015 commented 3 years ago

according https://ychai.uk/notes/2019/07/21/RL/DRL/Decipher-AlphaStar-on-StarCraft-II/ , the spatial encoder may be not consistant with the description of the paper presented below:

Spatial encoder Inputs: map, entity_embeddings Outputs: embedded_spatial - A 1D tensor of the embedded map map_skip - output tensors of intermediate computation, used for skip connections. map: add two features

cameral: whether a location is inside/outside the virtual camera; scattered entities. Pass entity_embeddings through a size 32 conv1D followed by a ReLU, then scattered into a map layer so that the 32 vector at a specific location corresponds to the units placed there. Concatenated all planes including camera, scattered_entities, vasibility, entity_owners, buildable, etc. Project to 32 channels by 2D conv with kernel size 1, followed by a ReLU. Then downsampled from 128x128 to 16x16 through 3 conv2D and ReLUs with different channel sizes (i.e., 64, 128, and 128).

embedded_spatial: The ResBlock output is embedded into a 1D tensor of size 256 by a MLP and a ReLU.

kimbring2 commented 3 years ago

Hello, sorry for late response.

Spatial encoder consist of only CNN works well in the minigame using only unit_id, player feature of screen observation. However, I need to use all feature of paper in full game case as you said.

I am currently developing agent for Simple64 map. Maybe, I am going to add more feature soon.

Thank you for your patience