{"id":16214383,"url":"https://github.com/edbeeching/ego_map","last_synced_at":"2026-03-05T11:33:32.060Z","repository":{"id":37648266,"uuid":"273436629","full_name":"edbeeching/ego_map","owner":"edbeeching","description":"EgoMap: Projective mapping and structured egocentric memory for Deep RL","archived":false,"fork":false,"pushed_at":"2022-12-08T01:53:02.000Z","size":24113,"stargazers_count":7,"open_issues_count":12,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-29T00:48:25.628Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://edbeeching.github.io/papers/egomap","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/edbeeching.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-06-19T07:50:58.000Z","updated_at":"2025-03-13T15:23:56.000Z","dependencies_parsed_at":"2023-01-25T02:15:39.486Z","dependency_job_id":null,"html_url":"https://github.com/edbeeching/ego_map","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/edbeeching/ego_map","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edbeeching%2Fego_map","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edbeeching%2Fego_map/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edbeeching%2Fego_map/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edbeeching%2Fego_map/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/edbeeching","download_url":"https://codeload.github.com/edbeeching/ego_map/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edbeeching%2Fego_map/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30122187,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-05T11:11:57.947Z","status":"ssl_error","status_checked_at":"2026-03-05T11:11:29.001Z","response_time":93,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-10T11:10:29.117Z","updated_at":"2026-03-05T11:33:32.025Z","avatar_url":"https://github.com/edbeeching.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EgoMap: Projective mapping and structured egocentric memory for Deep RL\n[Project Page](https://edbeeching.github.io/papers/egomap)\n\nCode base for paper [EgoMap: Projective mapping and structured egocentric memory for Deep RL](https://arxiv.org/abs/2002.02286) (ECML 2020)\n# Installation\nInstructions to run the code for Baseline, Neural Map and EgoMap for the 4 scenarios:\n\nThe code has been testing on linux (ubuntu 16.04 LTS) with python3\n\nInstall dependencies detailed in requirements.txt\n\nThe scenarios themselves are from [this repo](https://github.com/edbeeching/3d_control_deep_rl), but have been included for convenience.\n\n## Scenarios\nPossible scenarios/directorys are:\n###    labyrinth:\n        labyrinth_maze{:003}.cfg\n        resources/scenarios/custom_scenarios/labyrinth13\n###    find return:\n        mino_maze{:003}.cfg\n        resources/scenarios/custom_scenarios/mino11\n###    4-item:\n        four_item_maze{:003}.cfg\n        resources/scenarios/custom_scenarios/four_item5\n###   6-item:\n        six_item_maze{:003}.cfg\n        resources/scenarios/custom_scenarios/six_item5\n\n\nset $SCENARIO_DIR as your chosen scenario directory and $SCENARIO as the scenario.\ne.g. \n```\nSCENARIO_DIR=resources/scenarios/custom_scenarios/labyrinth13\nSCENARIO=labyrinth_maze{:003}.cfg\n```\n\n## Training\n\nset your username\ne.g. NAME=my_name\n\n### Baseline recurrent agent\n\n```\npython train_a2c.py --num_steps 128 --log_interval 10 --eval_freq 1000 --model_save_rate 1000 --eval_games 50 --num_frames 300000000 --gamma 0.99 --recurrent_policy --num_stack 1 --norm_obs --scenario_dir  $SCENARIO_DIR/train/ --scenario $SCENARIO --limit_actions --conv1_size 16 --conv2_size 32 --conv3_size 16 --hidden_size 128 --entropy_coef 0.001 --test_scenario_dir  $SCENARIO_DIR/test/ --multimaze --num_mazes_train 256 --num_mazes_test 64 --fixed_scenario --use_pipes --depth_as_obs --user_dir $NAME\n```\n\n### Neural Map agent\n```\npython train_a2c.py --num_steps 128 --log_interval 10 --eval_freq 1000 --model_save_rate 1000 --eval_games 50 --num_frames 300000000 --gamma 0.99 --recurrent_policy --num_stack 1 --norm_obs --scenario_dir  $SCENARIO_DIR/train/ --scenario $SCENARIO --limit_actions --conv1_size 16 --conv2_size 32 --conv3_size 16 --hidden_size 128 --entropy_coef 0.001 --test_scenario_dir  $SCENARIO_DIR/test/ --multimaze --num_mazes_train 256 --num_mazes_test 64 --fixed_scenario --use_pipes --ego_bin_dim 64 --ego_half_size 32 --ego_skip --reduce_blur --shift_thresh 120 --ego_hidden_size 32 --skip_world_shift --merge_later --ego_query --ego_num_chans 16 --ego_use_tanh --skip_cnn_relu --query_position --ego_query_cosine  --ego_query_scalar --neural_map 0 --nm_gru_op --nm_skip --depth_as_obs --user_dir $NAME\n```\n\n### EgoMap agent\n```\npython train_a2c.py --num_steps 128 --log_interval 10 --eval_freq 1000 --model_save_rate 1000 --eval_games 50 --num_frames 300000000 --gamma 0.99 --recurrent_policy --num_stack 1 --norm_obs --scenario_dir  $SCENARIO_DIR/train/ --scenario $SCENARIO --limit_actions --conv1_size 16 --conv2_size 32 --conv3_size 16 --hidden_size 128 --entropy_coef 0.001 --test_scenario_dir  $SCENARIO_DIR/test/ --multimaze --num_mazes_train 256 --num_mazes_test 64 --fixed_scenario --use_pipes --ego_model 0 --ego_bin_dim 64 --ego_half_size 12 --ego_skip --reduce_blur --shift_thresh 120 --ego_hidden_size 32 --skip_world_shift --merge_later --ego_query --ego_num_chans 16 --ego_use_tanh --skip_cnn_relu --query_position --ego_query_cosine  --ego_query_scalar --depth_as_obs --user_dir $NAME\n```\n## Citation\n```\n@inproceedings{beeching2020egomap,\n  title={EgoMap: Projective mapping and structured egocentric memory for Deep RL},\n  author={Beeching, Edward and Dibangoye, Jilles and \n           Simonin, Olivier and Wolf, Christian}\n  booktitle={ECMLPKDD},\n  year={2020}}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedbeeching%2Fego_map","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fedbeeching%2Fego_map","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedbeeching%2Fego_map/lists"}