Beispiel #1
0
//
// ReadInput
//
static void ReadInput(const char *filename)
{
   FILE *infile;

   if(!(infile = fopen(filename, "rb")))
      FatalError("Cannot open input file.");

   inputsize = GetInputSize(infile);

   // allocate input buffer
   if(!(inputbuffer = malloc((size_t)inputsize)))
      FatalError("Could not allocate input buffer.");

   // read input
   fread(inputbuffer, 1, inputsize, infile);

   // done with the input file
   fclose(infile);
}
Beispiel #2
0
void cScenarioArmTrainMACE::SetupActorScale()
{
	auto trainer = std::static_pointer_cast<cMACETrainer>(mTrainer);
	if (!trainer->HasInitModel())
	{
		auto ctrl = GetController();
		int state_size = trainer->GetInputSize();
		int action_size = trainer->GetOutputSize();

		Eigen::VectorXd input_offset = Eigen::VectorXd::Zero(state_size);
		Eigen::VectorXd input_scale = Eigen::VectorXd::Ones(state_size);
		ctrl->BuildNNInputOffsetScale(input_offset, input_scale);
		trainer->SetInputOffsetScale(input_offset, input_scale);

		Eigen::VectorXd output_offset = Eigen::VectorXd::Zero(action_size);
		Eigen::VectorXd output_scale = Eigen::VectorXd::Ones(action_size);
		ctrl->BuildNNOutputOffsetScale(output_offset, output_scale);
		trainer->SetOutputOffsetScale(output_offset, output_scale);
	}
}
Beispiel #3
0
	void KTPStream::NotifyDependentTasks()
	{
		UINT32 uiInputCount = GetInputSize();
		for (UINT32 i = 0; i < uiInputCount; i++)
		{
			KTPTask* pTask = GetInputAt(i);
			if (pTask)
			{
				pTask->m_bNeedReset = true;
			}
		}
		UINT32 uiOutputCount = GetOutputSize();
		for (UINT32 i = 0; i < uiOutputCount; i++)
		{
			KTPTask* pTask = GetOutputAt(i);
			if (pTask)
			{	
				pTask->m_bNeedReset = true;
			}
		}
	}
Beispiel #4
0
	void KTPStream::RemoveFromDependentTasks()
	{
		UINT32 uiInputCount = GetInputSize();
		for (UINT32 i = 0; i < uiInputCount; i++)
		{
			KTPTask* pkTask = GetInputAt(i);
			if (NULL != pkTask)
			{
				pkTask->RemoveInputImp(this);
			}
		}

		UINT32 uiOutputCount = GetOutputSize();
		for (UINT32 i = 0; i < uiOutputCount; i++)
		{
			KTPTask* pkTask = GetOutputAt(i);
			if (NULL != pkTask)
			{
				pkTask->RemoveOutputImp(this);
			}
		}
	}
int cTrainerInterface::GetActorInputSize() const
{
	return GetInputSize();
}
int cTrainerInterface::GetCriticInputSize() const
{
	return GetInputSize();
}