How to create one generlized Model

49 views
Skip to first unread message

abid ghaffar

unread,
Oct 21, 2016, 4:42:19 AM10/21/16
to Brahms Forum
Hi Ejenta Team,

I have some question about Generalized Model for different scenarios being observed. Let's suppose we have one month observation for a given situation like scenario-1, scenario-2, scenario-3.....scenario-n. We simulated each scenario and got the output in Agent Viewer program by creating single separate model for each scenario. Now we have scenario-1, scenario-2....scenario-n correspondingly model-1, model-2...........model-n. Right now, there is no connection among model-1, model-2........model-n. Each model has separate database and run independently. How can we create one single model by combining model-1 to model-n so that all the features of model-1 to model-n could be covered in one single model. In other words, we would like to know, how could we get simulator training concept inside one combined model which reflects all the features of scenario-1 to scenario-n?

Please guide, I shall be grateful and obliged.

Best Regards,


Abid Ghaffar

Maarten Sierhuis

unread,
Oct 22, 2016, 2:13:06 PM10/22/16
to brahms...@googlegroups.com, Dr. Shaharyar Wani IIUM
Dear Abid,

You ask a good question. Indeed when you simulate separate models, different history files are created and therefore if you use the AgentViewer separate MySQL databases are created. Thus, if you want to compare different simulation runs together in one database, you will have to create one model that executes multiple simulation runs (i.e. scenarios) in one model.

This is of course possible, but you will have to develop your model to do this. It depends of course completely on what you are simulating and how your different runs are based on the same or different scenarios; Meaning you can have one model that runs the same scenario a number of times (this is more like a Monte Carlo simulation, where each run is created based on different inputs (mostly beliefs or facts about objects) that are generated with different probability functions. Another possibility is that you have different scenarios where you have different agents models that you want to compare for the same inputs (mostly developed as different workframes and thoughtframes). Think of it as an within subject versus a between subject experimental design.

Both types are possible. The way I have done both before is using the following general idea; Create an agent that is the manager of the simulation; call it the SimulationManager agent. The role of this agent is to generate the scenario run for you, generating whatever you need to populate you model. i.e. create objects and/or agents, generate beliefs, facts as initial facts/beliefs before the scenario start executing. Then have the SimulationManager agent create a model state to start the scenario (possibly as facts, or as a belief that is communicated to each agent in the scenario).

If you have a simulation study you want to do where you want to compare different agents with different capabilities, a between subject study (i.e. have different workframes/thoughtframes for each type of agent), then you can easily have these execute at the same time in the same run. You simply create each scenario as a separate set of agents (and groups) that execute in parallel, but completely independent. With the right agent model design, using groups and group membership you can create a very sophisticated multi-scenario simulation in one model.

In the end, building a Brahms simulation model is about the design of your model and your simulation experiment. Think about it as a set of people (your population) performing your experiment in parallel, but they don’t know about each other (just as if you have different co-horts in your study).

I hope this helps.


Maarten Sierhuis.
> --
> You received this message because you are subscribed to the Google Groups "Brahms Forum" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to brahms-forum...@googlegroups.com.
> To post to this group, send email to brahms...@googlegroups.com.
> Visit this group at https://groups.google.com/group/brahms-forum.
> For more options, visit https://groups.google.com/d/optout.

abid ghaffar

unread,
Oct 28, 2016, 9:17:19 AM10/28/16
to Brahms Forum
Dear Dr. Maarten Sierhuis,

Thank you very much for the detailed reply. Its really helpful to proceed further in designing one combined model (Generic Model) keeping in view scenario-1 to scenario-n. However, I have few questions to verify the concept of one combined Brahms Model(Generic Model) representing all the features of scenario-1 to scenario-n.

1. Do we need to create brahms model and simulation run separately for each scenario from 1 to n before creating one single combined brahms model (Generic Model)?

2. I have understanding like, once we create one single combined brahms model (Generalized Model) for all scenarios from 1 to n, we can test all our scenarios from 1 to n on the same generalized Brahms Model. Am I right?

3. Generally speaking, If I remember the concept of Machine Intelligence, we have to train our machine by giving lots of inputs and data. Consequently, we can predict our model based on the database history. However, in case of Generic Model of Brahms, we are creating one general model which is representing all the features of scenario-1 to scenario-n. Do we consider this general model of Brahms in terms of Machine Intelligence or its just simple intelligence?

4. I have studied your Ph.D thesis which you sent me before. There is a concept of Predictive Modeling in the thesis. If I want to create Predictive Model like, I observed one situation in the work practice system having 40 scenarios, should I use concept of Machine learning or simply create Generic model which represents all the features of scenario1 to scenario-40?

or Where is the concept of Machine Intelligence in this regard? Please guide and suggest


5. What features of Brahms distinguishes it from other Multi Agent Systems so that I can be strongly convinced that without Brahms, I wouldn't be able to create predictive model/Generic Model as mentioned above? Please shed light on it. Please remember, I have gone through your research papers but I want to make it more clear from your side.

6. Recently, I switched over from Windows 8.1 to Windows 10. Brahms simulator is not running in Windows 10 while it was working well in Windows 8.1. Is there any solution?

Once again thank you very much for supporting and detailed reply. I am grateful and obliged.

Maarten Sierhuis

unread,
Oct 31, 2016, 12:17:11 AM10/31/16
to Brahms Forum
Dear Abid,

I'll try to answer your questions below:

Maarten Sierhuis.


On Friday, October 28, 2016 at 6:17:19 AM UTC-7, abid ghaffar wrote:
Dear Dr. Maarten Sierhuis,

Thank you very much for the detailed reply. Its really helpful to proceed further in designing one combined model (Generic Model) keeping in view scenario-1 to scenario-n. However, I have few questions to verify the concept of one combined Brahms Model(Generic Model) representing all the features of scenario-1 to scenario-n.

1. Do we need to create brahms model and simulation run separately for each scenario from 1 to n before creating one single combined brahms model (Generic Model)?

No, you can do it all in one model right away, but it might become difficult to debug. Especially if N is large. It also depends on what you are simulating. As I mentioned before; Are all the scenarios the same, i.e. more like a Monte Carlo sim? If so, I would do it right away in one model. If not, then maybe not, then make them fist work separately and then simply create a separate model.b file where you import all models in one file, compile that model.b file and run the model.
 

2. I have understanding like, once we create one single combined brahms model (Generalized Model) for all scenarios from 1 to n, we can test all our scenarios from 1 to n on the same generalized Brahms Model. Am I right?

Yes. Of course, the generalized model needs to generate all the scenarios.
 

3. Generally speaking, If I remember the concept of Machine Intelligence, we have to train our machine by giving lots of inputs and data. Consequently, we can predict our model based on the database history. However, in case of Generic Model of Brahms, we are creating one general model which is representing all the features of scenario-1 to scenario-n. Do we consider this general model of Brahms in terms of Machine Intelligence or its just simple intelligence?

I am not sure what you are asking here. Without knowing more about what you are trying to accomplish with your simulation, I cannot give you an answer on this question.
 

4. I have studied your Ph.D thesis which you sent me before. There is a concept of Predictive Modeling in the thesis. If I want to create Predictive Model like, I observed one situation in the work practice system having 40 scenarios, should I use concept of Machine learning or simply create Generic model which represents all the features of scenario1 to scenario-40?

or Where is the concept of Machine Intelligence in this regard? Please guide and suggest

Again, it all depends on what you are trying to do. What are you predicting? If you have enough data and you are able to learn a general model using some machine learning algorithm, that can predict your answer when you give it new data (i.e. a new scenario) than that is an approach you can take. 

The predictive model in my thesis was developed by observing a general practice behavior by people on the moon. Using this model I created a scenario that simulated a situation that was not used in creating the predictive model and then compared the predicted behavior with the observed behavior from that particular lunar mission. I did not, however, proved that this model would predict the correct behavior in all possible future lunar missions. The experiment was merely to show that Brahms could be used to develop a predictive model.

I think it will be hard to use a machine learning algorithm to create a general model that will predict human work practice behavior, because it will be hard to get enough data to learn such a model, but maybe I am mistaken.
 


5. What features of Brahms distinguishes it from other Multi Agent Systems so that I can be strongly convinced that without Brahms, I wouldn't be able to create predictive model/Generic Model as mentioned above? Please shed light on it. Please remember, I have gone through your research papers but I want to make it more clear from your side.

Brahms was developed to model human work practice, i.e. model people working together in an environment. It's the combination of being able to model belief-based agents with activities, detectables and activity subsumption (enabling the modeling of people's composite activities, context switching and multi-tasking), groups (i.e. communities of practice), objects  and classes (artifacts and data), agent and object communication, and geography concepts, that make Brahms suited for modeling people's work practice. I wouldn't say that you could not model this with other multi-agent languages, but it is harder, because you don't necessarily have all these language features and thus will have to create these yourself in some fashion, using the language constructs available in the language.
 

6. Recently, I switched over from Windows 8.1 to Windows 10. Brahms simulator is not running in Windows 10 while it was working well in Windows 8.1. Is there any solution?

I am not sure. It might have to do with the Java version that is supported on Windows 10.  I will have to ask our engineers. We are not really working with Windows, so maintaining Windows is not a priority. It's better to use OS X or Linux.

abid ghaffar

unread,
Nov 1, 2016, 8:47:35 AM11/1/16
to brahms...@googlegroups.com
Dear Dr. Maarten Sierhuis,

Once again so nice of you for your kind guidance and support. Its really helping me to proceed in the right direction. I am creating Brahms Predictive Model at some Malaysian University Department where we have around 12 people working in the work practice system. Activities are not that much complex as in your case for the Mars Exploration Mission. I am trying to simulate the work practice system through predictive modelling as per research available from your side in particular. 

Ethnography, I have completed and now I am simulating the scenarios. I would like to ask you the question here, generally how many scenarios approx needed to create generic model (Prediictive Model)? For example, in my case all the activities monitored in two weeks may complete all the observations, however more observations are also available upto three months for a particular situation.

1)
Do you think two weeks scenarios would be enough to simulate the generic model assuming scenario-1 to scenario-10, as we have 10 working days in two weeks. Scenario-10 reflects all the other activities from scenario-1 to scenario-9. Is it necessary we should get scenarios for six months or more (160 scenarios for six months period) to create generic/predictive modelling. What if, our 10 scenarios have complete observations? Please suggest and guide here. What is the practice in general?

2) In case of generic model, the time line would be reflected from 8am to 5 p.m.(Lets assume office timings from 8 am to 5pm). How can we get the exact timing of each activity from scenario-1 to scenario-10 in the Agent Viewer?. Do you think we can print exact timings of activities as it happens in real work practice situation in the Agent Viewer Program. In my experience with Brahms and also from your Thesis, I see the timings are written in SECONDS like 20seconds or 5 seconds; not like 09:45:50 format. Activities are occurred at some particular time like 3:30pm or 10:30am. Is it possible, we could know about the exact time of happening of activities? Please shed light on it.


Best Regards,

Abid Ghaffar

--
You received this message because you are subscribed to a topic in the Google Groups "Brahms Forum" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/brahms-forum/2WxZ0dNnYcQ/unsubscribe.
To unsubscribe from this group and all its topics, send an email to brahms-forum+unsubscribe@googlegroups.com.

abid ghaffar

unread,
Nov 3, 2016, 6:17:25 AM11/3/16
to brahms...@googlegroups.com

Dear Dr. Maarten Sierhuis,


Once again so nice of you for your kind guidance and support. Its really helping me to proceed in the right direction. I am creating Brahms Predictive Model at some Malaysian University Department where we have around 12 people working in the work practice system. Activities are not that much complex as in your case for the Mars Exploration Mission. I am trying to simulate the work practice system through predictive modelling as per research available from your side in particular. 

Ethnography, I have completed and now I am simulating the scenarios. I would like to ask you the question here, generally how many scenarios approx needed to create generic model (Prediictive Model)? For example, in my case all the activities monitored in two weeks may complete all the observations, however more observations are also available upto three months for a particular situation.

1)
Do you think two weeks scenarios would be enough to simulate the generic model assuming scenario-1 to scenario-10, as we have 10 working days in two weeks. Scenario-10 reflects all the other activities from scenario-1 to scenario-9. Is it necessary we should get scenarios for six months or more (160 scenarios for six months period) to create generic/predictive modelling. What if, our 10 scenarios have complete observations? Please suggest and guide here. What is the practice in general?

2) In case of generic model, the time line would be reflected from 8am to 5 p.m.(Lets assume office timings from 8 am to 5pm). How can we get the exact timing of each activity from scenario-1 to scenario-10 in the Agent Viewer?. Do you think we can print exact timings of activities as it happens in real work practice situation in the Agent Viewer Program. In my experience with Brahms and also from your Thesis, I see the timings are written in SECONDS like 20seconds or 5 seconds; not like 09:45:50 format. Activities are occurred at some particular time like 3:30pm or 10:30am. Is it possible, we could know about the exact time of happening of activities? Please shed light on it.

Best Regards,


Abid Ghaffar

Maarten Sierhuis

unread,
Nov 4, 2016, 12:07:19 PM11/4/16
to brahms...@googlegroups.com
Dear Abid,

Let me try to provide some answers in between your questions below.

Maarten.

Sent from my iPhone

On Nov 3, 2016, at 5:17 AM, abid ghaffar <aghaff...@gmail.com> wrote:

Dear Dr. Maarten Sierhuis,


Once again so nice of you for your kind guidance and support. Its really helping me to proceed in the right direction. I am creating Brahms Predictive Model at some Malaysian University Department where we have around 12 people working in the work practice system. Activities are not that much complex as in your case for the Mars Exploration Mission. I am trying to simulate the work practice system through predictive modelling as per research available from your side in particular. 

Ethnography, I have completed and now I am simulating the scenarios. I would like to ask you the question here, generally how many scenarios approx needed to create generic model (Prediictive Model)? For example, in my case all the activities monitored in two weeks may complete all the observations, however more observations are also available upto three months for a particular situation.

How many observations are enough to have a full coverage of a practice? Ethnography is a method applied in the social sciences as part of a grounded theoretical framework. This means that it is a qualitative approach and not quantitative. There are therefore no hard and fast rules to give. 

Brahms provides a method to make your observations more formal by describing what you have observed in an agent activity model that can be executed. Thus, if you have created a Brahms model that you can execute and the execution of the model (the simulation run) provides you with the same results as your observation, you can say that your model is a formal theory of the practice you have observed.

Now, one particular observation is not enough to say that your theory covers the complete practice of the domain, just one observation. Therefore, multiple observations and multiple models will increase the validity of your theory of the practice. The trick is now to create one model that covers all your observations. The more, the better. However, it is most likely that there are general patterns in the observations of the practice. So, if you can generalize and uncover the patterns from your observations and model the patterns of agent activities, you can create a general model that covers all observations. This you can now see as your predictive model, because it should be able to simulate all observations. Model validation is of course difficult, and it depends on the purpose of the model when you can feel comfortable with its predictive powers. Only real life is a perfect predictive model of our practice ... it's always correct 😉


1)
Do you think two weeks scenarios would be enough to simulate the generic model assuming scenario-1 to scenario-10, as we have 10 working days in two weeks. Scenario-10 reflects all the other activities from scenario-1 to scenario-9. Is it necessary we should get scenarios for six months or more (160 scenarios for six months period) to create generic/predictive modelling. What if, our 10 scenarios have complete observations? Please suggest and guide here. What is the practice in general?

Are your observations all of the same activity, but on different days? If so, do you see enough of a pattern in the activity performance over the 10 days? If so, do you think that more observations will result in new data or just more of the same? If so, you probably have enough to create your general model. 


2) In case of generic model, the time line would be reflected from 8am to 5 p.m.(Lets assume office timings from 8 am to 5pm). How can we get the exact timing of each activity from scenario-1 to scenario-10 in the Agent Viewer?. Do you think we can print exact timings of activities as it happens in real work practice situation in the Agent Viewer Program. In my experience with Brahms and also from your Thesis, I see the timings are written in SECONDS like 20seconds or 5 seconds; not like 09:45:50 format. Activities are occurred at some particular time like 3:30pm or 10:30am. Is it possible, we could know about the exact time of happening of activities? Please shed light on it.

Yes, you should be able to do this. First of all, you should run your simulation in Brahms with the start date and time to be that of your observation. You can do this by providing the -date option in the BVM when starting the simulation.

Then in the Agentviewer you can set the times to be human readable date and time. You can also use database queries in MySQL to get the data out of the simulation database. That requires some SQL programming.

abid ghaffar

unread,
Nov 6, 2016, 6:22:32 PM11/6/16
to Brahms Forum
Dear Dr. Maarten Sierhuis,

Thank you very much for your time and help. Its working for me.

Best Regards,

Abid Ghaffar 

Best Regards,


Abid Ghaffar


To unsubscribe from this group and all its topics, send an email to brahms-forum...@googlegroups.com.

To post to this group, send email to brahms...@googlegroups.com.
Visit this group at https://groups.google.com/group/brahms-forum.
For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages