-
Notifications
You must be signed in to change notification settings - Fork 3
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
BF-Systems: Design for Hierarchical Systems #671
Comments
Hi @laxmikantbaheti, I concretized the issue based on our last discussion. I propose to avoid the term "complex" due to two reasons:
|
Hi @detlefarend , thanks for making it more concrete. |
Hi @detlefarend , @steveyuwono , I have added the first draft for the class diagrams Hierarchical Systems in bf/systems/system_enhancements. Currently its a separate file named BF-Systmes-MultiSystems_class_diagram.drawio, after agreeing to the changes I will move them into the single file for BF-Systems. Currently, I think there is no need for a new state object MultiState, instead I propose to have a SystemShared object that has a dictionary for each system and also performs the mapping task. Please let me know your opinion. Thanks in advance! |
Hi @laxmikantbaheti , thank you for the updates. I have checked the class diagram. In my opinion, it looks good and I agree with the introduction of the SystemShared object which makes the MultiState object not necessary. Is the setup_spaces intended to be a method to set up the multisystem by calling the add_system method? If yes, is it possible to combine both methods? It means, when we add_system, it is directly setting up and adjusting the multisystem at the same time. |
Hi @steveyuwono , thanks for the feedback. I think the setup_spaces() method of the MultiSystem can be a predefined method and not a custom method. It is responsible to collect all the substates and setup the shared object with mappings and state dictionaries. But, also, there needs to be a way to assign the action and state space of a multisystem. Like when considered a blackbox, it has an action and state space. Maybe a parameter for multisystem. I'll think of this and update you... |
Hi @laxmikantbaheti , I just took a look at the class diagram. It is a clean design! Here are some annotations from my side:
Hope that helps... |
Hi @detlefarend , thanks for the review, it was very helpful. Sorry, I will clean the file a bit.
|
Description/Motivation
Extension of Systems class for complex systems (Cascaded, , Parallel, Hierarchical, etc.) with possibilities to add tasks with dependencies.
Task list
1. Updates on the System Class:
1. New class bf.systems.MultiSystem (or ComplexSystem)
... calls internally the method add_task()
The simulate reaction of the multisystem simulates each of the subsystems by an amount equal to t_step in each cycle. This t_step is the smallest latency of all the subsystems inside
2. Suitable Howtos
3. Updates on RTD
Related issues
#664 #672 #396
The text was updated successfully, but these errors were encountered: