-1

I am simulating an online shop having potential users, consumers, vendors and products as agents. each potential user can decide to join our online shop as consumer, vendor or both of them. the behaviour of each agent is modeled using Statecharts (and also Actioncharts), and population of these agents are available in the Main agent. as an example I have modeled a purchase behaviour of each consumer in a way that at first it chose a vendor and send order to it, the vendor (based on its statechart) issues an invoice and send it to consumer (using message passing). if the payment was successful and products were available in the vendor side, the order is done. otherwise (if products are not ready) vendor start to make them. the problem here is the speed of simulation! I start the simulation very simple in a way that each hour 50 to 100 users are joined but the speed is low. the biggest problem is that currently we have near 70000 active vendors and 1milion consumers and the manager wants the model starts from this stage!

I think maybe using agent based modeling wasn't a good choice. but I'm not sure what should I do :(

  • Hi, welcome to StackOverflow. This place works best for you if you ask very specific questions, show exactly what you tried already and where you are stuck. Your question if far too broad and would need a full lecture to tell you all about it. I suggest you read up here to learn how to ask great questions: https://stackoverflow.com/help/how-to-ask Treat us as very busy colleagues that are happy to help. The more effort you put into your question, the more likely you will get a good, fast reply :) – Benjamin Feb 20 '21 at 17:32

1 Answers1

1

You didn't say what is your model time unit but I think choosing "days" as the Model time units can help you. also if necessary you can use 1200 (50*24) user per day instead of 50 user per hour. At last you can reduce your model running time by using speed up button in model running window as shown in the picture. it can increase your model’s execution speed up to one thousand times as fast as the specified model speed. also you can set it up to virtual time mode that run the model at its maximum speed.

M.Saedi
  • 53
  • 7