00001 /* weights.cc 00002 */ 00003 #include "osl/eval/weights.h" 00004 #include "osl/random.h" 00005 00006 osl::eval::ml:: 00007 Weights::Weights(size_t idim) 00008 : values(idim), dim(idim) 00009 { 00010 std::fill(&values[0], &values[0]+dim, 0); 00011 } 00012 osl::eval::ml:: 00013 Weights::~Weights() 00014 { 00015 } 00016 00017 void osl::eval::ml::Weights:: 00018 setRandom() 00019 { 00020 for (size_t i=0; i<dim; ++i) 00021 values[i] = osl::random() % 256 - 128; 00022 } 00023 00024 00025 void osl::eval::ml:: 00026 Weights::resetDimension(size_t new_dim) 00027 { 00028 dim = new_dim; 00029 values.resize(new_dim); 00030 std::fill(&values[0], &values[0]+dim, 0); 00031 } 00032 00033 00034 00035 osl::eval::ml:: 00036 MultiWeights::MultiWeights(size_t idim) 00037 : values(idim), one_dim(idim) 00038 { 00039 } 00040 osl::eval::ml:: 00041 MultiWeights::~MultiWeights() 00042 { 00043 } 00044 00045 void osl::eval::ml:: 00046 MultiWeights::resetDimension(size_t new_dim) 00047 { 00048 one_dim = new_dim; 00049 values.resize(new_dim); 00050 std::fill(&values[0], &values[0]+one_dim, MultiInt()); 00051 } 00052 00053 void osl::eval::ml::MultiWeights:: 00054 setRandom() 00055 { 00056 for (size_t i=0; i<one_dim; ++i) 00057 for (size_t s=0; s<MultiInt::size(); ++s) 00058 values[i][s] = osl::random() % 256 - 128; 00059 } 00060 00061 /* ------------------------------------------------------------------------- */ 00062 // ;;; Local Variables: 00063 // ;;; mode:c++ 00064 // ;;; c-basic-offset:2 00065 // ;;; End: