Skip to content

🐛 Signature for Trajectory.on_env_feedback() Interface should include the arguments used by the Actor class #373

@jreynolds01

Description

@jreynolds01

Description

The Trajectory.on_env_feedback() interface defined here
only includes self as an argument.

However, the Actor() class defined here requires that the on_env_feedback() method include additional arguments:

self.trajectory.on_env_feedback(
                event, state_by_agent, action_by_agent, reward if reward is not None else self.env.metrics
            )

When we define a custom Trajectory, we can overwrite this method (and we do), but the difference in signature produces pylint errors:

W0221:Parameters differ from overridden 'on_env_feedback' method

As far as I can tell, every use of on_env_feedback requires that same signature, so it should be represented in the interface.

Screenshots

To Reproduce

Steps to reproduce the behavior:

  1. Write a custom

Expected Behavior

Environment

  • MARO version (e.g., v0.1.1a1):
  • MARO scenario (CIM, Citi Bike):
  • MARO component (Simulation, RL, Distributed Training):
  • Orchestration platform (GraSS on Azure, AKS on Azure):
  • How you installed MARO (pip, source):
  • OS (Linux, Windows, macOS):
  • Python version (3.6, 3.7):
  • Docker image (e.g., maro2020/maro:latest):
  • CPU/GPU:
  • Any other relevant information:

Additional Context

Metadata

Metadata

Assignees

Labels

🐛 bugSomething isn't working.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions