TorchCraftAI
A bot for machine learning research on StarCraft: Brood War
|
Sparse featurizer for unit flags. More...
#include <unitsfeatures.h>
Inherits cherrypi::UnitAttributeFeaturizer.
Public Member Functions | |
UnitFlagsFeaturizer () | |
Public Member Functions inherited from cherrypi::UnitAttributeFeaturizer | |
virtual | ~UnitAttributeFeaturizer ()=default |
virtual Data | extract (State *state, UnitsInfo::Units const &units, Rect const &boundingBox=Rect()) |
Extract unit features for a given set of units. More... | |
Data | extract (State *state, Rect const &boundingBox=Rect()) |
Extract unit features for all live units. More... | |
Data | extract (State *state, UnitFilter filter, Rect const &boundingBox=Rect()) |
Extract unit features for all live units that pass the given filter. More... | |
FeatureData | toSpatialFeature (Data const &data, SubsampleMethod pooling=SubsampleMethod::Sum) const |
Embeds the unit attribute data into a spatial feature. More... | |
void | toSpatialFeature (FeatureData *dest, Data const &data, SubsampleMethod pooling=SubsampleMethod::Sum) const |
Embeds the unit attribute data into a spatial feature. More... | |
Static Public Attributes | |
static int constexpr | kNumUnitFlags = 52 |
Protected Member Functions | |
virtual void | extractUnit (TensorDest acc, Unit *unit) override |
Reimplement this in actual featurizers. More... | |
Additional Inherited Members | |
Public Types inherited from cherrypi::UnitAttributeFeaturizer | |
using | UnitFilter = std::function< bool(Unit *)> |
using | TensorDest = torch::TensorAccessor< float, 1 > |
Public Attributes inherited from cherrypi::UnitAttributeFeaturizer | |
std::shared_ptr< BaseJitter > | jitter = std::make_shared<NoJitter>() |
Optional jittering of unit positions. More... | |
CustomFeatureType | type |
std::string | name |
int | numChannels |
Sparse featurizer for unit flags.
This will produce a feature with 52 channels, where each channel corresponds to a flag of torchcraft::replayer::Unit. Each channel is binary, i.e. it's 1 if the flag is set and 0 otherwise.
|
inline |
|
inlineoverrideprotectedvirtual |
Reimplement this in actual featurizers.
This function is expected to set acc[0], ..., acc[numChannels-1]
Implements cherrypi::UnitAttributeFeaturizer.
|
static |