예제 #1
0
def two_agent_capture_offset_tenth_of_second():
    with temp_scenario(name="straight",
                       map="maps/straight.net.xml") as scenario_root:
        missions = [
            t.Mission(
                t.Route(begin=("west", 1, 20), end=("east", 1, "max")),
                entry_tactic=t.TrapEntryTactic(
                    wait_to_hijack_limit_s=0,
                    zone=t.MapZone(start=("west", 0, 1), length=100,
                                   n_lanes=3),
                ),
            ),
            t.Mission(
                t.Route(begin=("west", 2, 10), end=("east", 1, "max")),
                entry_tactic=t.TrapEntryTactic(
                    wait_to_hijack_limit_s=0.1,
                    zone=t.MapZone(start=("west", 0, 1), length=100,
                                   n_lanes=3),
                ),
            ),
        ]

        scenario = t.Scenario(
            traffic={},
            ego_missions=missions,
        )

        gen_scenario(scenario, output_dir=scenario_root)
        yield Scenario.variations_for_all_scenario_roots(
            [str(scenario_root)], [AGENT_ID, AGENT_ID_2])
예제 #2
0
def scenarios():
    with temp_scenario(name="straight",
                       map="maps/straight.net.xml") as scenario_root:
        traffic = t.Traffic(flows=[
            t.Flow(
                route=t.Route(
                    begin=("west", 1, 0),
                    end=("east", 1, "max"),
                ),
                rate=50,
                actors={t.TrafficActor("car"): 1},
            )
        ])

        missions = [
            t.Mission(
                t.Route(begin=("west", 1, 10), end=("east", 1, "max")),
                entry_tactic=t.TrapEntryTactic(
                    wait_to_hijack_limit_s=3,
                    zone=t.MapZone(start=("west", 0, 1), length=100,
                                   n_lanes=3),
                ),
            )
        ]
        scenario = t.Scenario(
            traffic={"all": traffic},
            ego_missions=missions,
        )

        gen_scenario(scenario, output_dir=scenario_root)
        yield Scenario.variations_for_all_scenario_roots([str(scenario_root)],
                                                         [AGENT_ID])
예제 #3
0
파일: scenario.py 프로젝트: LUMO666/Highway
laner_actor = t.SocialAgentActor(
    name="keep-lane-agent", agent_locator="zoo.policies:keep-lane-agent-v0",
)

travelling_bubbles = [
    t.Bubble(
        zone=t.PositionalZone(pos=(50, 0), size=(10, 50)),
        margin=5,
        actor=open_agent_actor,
        follow_actor_id=t.Bubble.to_actor_id(laner_actor, mission_group="all"),
        follow_offset=(-7, 10),
    )
]

static_bubbles = [
    t.Bubble(zone=t.MapZone((id_, 0, 10), 200, 1), margin=5, actor=laner_actor,)
    for id_ in ["21675239", "126742590#1", "-77720372", "-263506114#6", "-33002812#1"]
]

gen_scenario(
    t.Scenario(
        traffic={"basic": traffic},
        social_agent_missions={
            "all": ([laner_actor, open_agent_actor], [t.Mission(route=t.RandomRoute())])
        },
        bubbles=[*travelling_bubbles, *static_bubbles],
    ),
    output_dir=Path(__file__).parent,
)
예제 #4
0
                      end=("edge-east-WE", 0, "max")),
        rate=400,
        actors={t.TrafficActor("car"): 1},
    ),
    t.Flow(
        route=t.Route(begin=("edge-east-EW", 0, 10),
                      end=("edge-west-EW", 0, "max")),
        rate=400,
        actors={t.TrafficActor("car"): 1},
    ),
])

agent_prefabs = "scenarios.intersections.4lane_t.agent_prefabs"
bubbles = [
    t.Bubble(
        zone=t.MapZone(start=("edge-west-WE", 0, 50), length=10, n_lanes=1),
        margin=2,
        actor=t.SocialAgentActor(
            name="zoo-agent",
            agent_locator=f"{agent_prefabs}:zoo-agent-v0",
        ),
    ),
    t.Bubble(
        zone=t.PositionalZone(pos=(100, 100), size=(20, 20)),
        margin=2,
        actor=t.SocialAgentActor(
            name="motion-planner-agent",
            agent_locator=f"{agent_prefabs}:motion-planner-agent-v0",
        ),
    ),
]
예제 #5
0
    agent_locator="zoo.policies:keep-lane-agent-v0",
)

travelling_bubbles = [
    t.Bubble(
        zone=t.PositionalZone(pos=(50, 0), size=(10, 50)),
        margin=5,
        actor=laner_actor,
        follow_actor_id=t.Bubble.to_actor_id(laner_actor, mission_group="all"),
        follow_offset=(-7, 10),
    )
]

static_bubbles = [
    t.Bubble(
        zone=t.MapZone((id_, 0, 10), 200, 1),
        margin=5,
        actor=laner_actor,
    ) for id_ in
    ["21675239", "126742590#1", "-77720372", "-263506114#6", "-33002812#1"]
] + [
    t.Bubble(
        zone=t.PositionalZone(pos=(1012.19, 1084.20), size=(30, 30)),
        margin=5,
        actor=laner_actor,
    )
]

gen_scenario(
    t.Scenario(
        traffic={"basic": traffic},