DataGenerator/DeterministicGoalDirectedTraj.py [29:62]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
for i in range(number_datapoints):

	if i%1000==0:
		print("Processing Datapoint: ",i)

	# b_array_dataset[i,0] = 1.	
	goal_array_dataset[i] = np.random.random_integers(0,high=3)

	# Adding random noise to start state.
	x_array_dataset[i,-1] = goal_states[goal_array_dataset[i]] + 0.1*(np.random.random(2)-0.5)	
	goal = goal_states[goal_array_dataset[i]]

	reset_counter = 0
	# for t in range(number_timesteps-1):
	for t in reversed(range(number_timesteps-1)):

		# GET B	# Must end on b==0. 
		if t<(number_timesteps-2):
			# b_array[t] = np.random.binomial(1,prob_b_given_x)
			# b_array_dataset[i,t] = np.random.binomial(1,pb_x[0,x_array_dataset[i,t]])

			# If 3,4,5 timesteps have passed, terminate. 
			if t<3:
				b_array_dataset[i,t] = 0
			elif reset_counter>=3 and reset_counter<5:
				b_array_dataset[i,t] = np.random.binomial(1,0.33)
			elif reset_counter==5:
				b_array_dataset[i,t] = 1				
		elif t==(number_timesteps-2):
			b_array_dataset[i,t] = 1

		# GET Y
		if b_array_dataset[i,t]:
			current_state = x_array_dataset[i,t+1]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



DataGenerator/GoalDirectedTrajs.py [27:60]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
for i in range(number_datapoints):

	if i%1000==0:
		print("Processing Datapoint: ",i)

	# b_array_dataset[i,0] = 1.	
	goal_array_dataset[i] = np.random.random_integers(0,high=3)

	# Adding random noise to start state.
	x_array_dataset[i,-1] = goal_states[goal_array_dataset[i]] + 0.1*(np.random.random(2)-0.5)	
	goal = goal_states[goal_array_dataset[i]]

	reset_counter = 0
	# for t in range(number_timesteps-1):
	for t in reversed(range(number_timesteps-1)):

		# GET B	# Must end on b==0. 
		if t<(number_timesteps-2):
			# b_array[t] = np.random.binomial(1,prob_b_given_x)
			# b_array_dataset[i,t] = np.random.binomial(1,pb_x[0,x_array_dataset[i,t]])

			# If 3,4,5 timesteps have passed, terminate. 
			if t<3:
				b_array_dataset[i,t] = 0
			elif reset_counter>=3 and reset_counter<5:
				b_array_dataset[i,t] = np.random.binomial(1,0.33)
			elif reset_counter==5:
				b_array_dataset[i,t] = 1				
		elif t==(number_timesteps-2):
			b_array_dataset[i,t] = 1

		# GET Y
		if b_array_dataset[i,t]:
			current_state = x_array_dataset[i,t+1]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



