def _get_obs()

in gym-compete/gym_compete/new_envs/sumo.py [0:0]


    def _get_obs(self):
        obs = []
        dists = []
        for i in range(self.n_agents):
            xy = self.agents[i].get_qpos()[:2]
            r = np.sqrt(np.sum(xy**2))
            d = self.RADIUS - r
            # print(r, d)
            dists.append(d)
        for i in range(self.n_agents):
            ob = self.agents[i]._get_obs()
            mydist = np.asarray(dists[i])
            if self.n_agents == 1:
                other_dist = np.asarray(self.RADIUS)
            elif self.n_agents == 2:
                other_dist = np.asarray(dists[1-i])
            else:
                other_dist = np.asarray([dists[j] for j in range(self.n_agents) if j != i])
            ob = np.concatenate(
                [ob.flat, np.asarray(self.RADIUS).flat,
                 mydist.flat, other_dist.flat,
                np.asarray(self._max_episode_steps - self._elapsed_steps).flat
                ]
            )
            obs.append(ob)
        return tuple(obs)