There are 120 scenes in iTHOR, evenly spread across kitchens, living rooms, bedrooms, and bathrooms. The list of scenes is defined as:

kitchens = [f"FloorPlan{i}" for i in range(1, 31)]
living_rooms = [f"FloorPlan{200 + i}" for i in range(1, 31)]
bedrooms = [f"FloorPlan{300 + i}" for i in range(1, 31)]
bathrooms = [f"FloorPlan{400 + i}" for i in range(1, 31)]

scenes = kitchens + living_rooms + bedrooms + bathrooms
Response
["FloorPlan1", "FloorPlan2", "FloorPlan3", {...}, "FloorPlan430"]
Remark
Explore the scenes in the demo!

We provide a cached alias to the above definitions using the

ithor_scenes
method:

controller.ithor_scenes(
    include_kitchens=True,
    include_living_rooms=True,
    include_bedrooms=True,
    include_bathrooms=True
)
Response
[
    "FloorPlan1",
    "FloorPlan2",
    {...},
    "FloorPlan201",
    {...},
    "FloorPlan301",
    {...},
    "FloorPlan430",
]

Parameters

Includes the 30 living rooms (i.e., FloorPlan[201:230]) in the returned list when

True
.

Includes the 30 bedrooms (i.e., FloorPlan[301:330]) in list when

True

Includes the 30 bathrooms (i.e., FloorPlan[401:430]) in list when

True
.

It is common to train agents on a subset of scenes, in order to validate and test how well they generalize to new scenes and environments. For each room type, it is standard practice to treat the first 2020 scenes as training scenes, the next 55 scenes as validation scenes, and the last 55 scenes as testing scenes.