Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhancing the model architecture customization? #106

Closed
Morphlng opened this issue May 16, 2023 · 1 comment
Closed

Enhancing the model architecture customization? #106

Morphlng opened this issue May 16, 2023 · 1 comment
Assignees
Labels
question Further information is requested

Comments

@Morphlng
Copy link

Hi! We are trying to apply MARLlib to fulfill our task. The observation from our custom environment can be a little too complicated for a simple MLP/CNN encoder. We want to apply a pretrained model to improve the feature extraction.

Furthermore, the decision network, which is currently RNN based or MLP based, can only tune a little parameter in the config file. It would be great if we can directly use a self-designed torch model (and this can solve the problem of loading pretrained model), or at least release the full customization ability like in Ray.

Wondering if there is any plan to enhance these kinds of ability?

@Theohhhu Theohhhu self-assigned this May 17, 2023
@Theohhhu Theohhhu added the question Further information is requested label May 17, 2023
@Ivan-Zhong
Copy link
Collaborator

Hi there! Thank you for reaching out and sharing your feedback on MARLlib.

The reason why MARLlib does not support highly customizable models for complex data structures, such as NeuralMMO, is due to the need for data sharing in MARLlib's algorithms, which is essential for centralized training methods like MAPPO and QMIX. Achieving a unified pipeline for handling diverse data sharing strategy becomes impractical in this context.

That being said, it is indeed possible to implement more customized models, especially if you are familiar with RLlib and are focusing on specific algorithm in MARLlib. But this may impact other parts of the code and introduce bugs that require fixing.

My suggestion is to begin with independent learning algorithms such as IPPO and customize the model for your environment, as they are quite similar to RLlib. Once you have gained familiarity and confidence, you can then explore more complex algorithms like MAPPO or HAPPO. I welcome any further concerns or questions you may have.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

4 participants