#ifndef AIP_H #define AIP_H #include #include "CGeniusAI.h" #include "neuralNetwork.h" namespace geniusai { class Network { public: Network(); Network(vector whichFeatures);// random network Network(istream & input); vector whichFeatures; float feedForward(const vector & stateFeatures); neuralNetwork net; //a network with whichFeatures.size() inputs, and 1 output }; class Priorities { public: Priorities(const string & filename); //read brain from file vector stateFeatures; int specialFeaturesStart; int numSpecialFeatures; void fillFeatures(const CGeniusAI::HypotheticalGameState & AI); float getValue(const CGeniusAI::AIObjective & obj); float getCost(vector &resourceCosts,const CGHeroInstance * moved,int distOutOfTheWay); vector > objectNetworks; vector > buildingNetworks; }; } #endif