130 likes | 147 Views
This text introduces the basics of simulation, including system concepts and architectures. It covers system modeling, experiment with actual systems and models, physical and mathematical models, analytical solutions, and simulation techniques. It also examines distributed simulation and its architecture, including object interfaces, object managers, and naming services. Comparison between RMI, CORBA, and HLA is also discussed.
E N D
Simulation Basics • System: a collecting of entities that act and interact together toward the accomplishment of some logical end. • State: the collection of variables necessary to describe a system at a particular time, relative to the objectives of a study • Model: a description about how a system behaves, that consist of a collection of assumptions.
System Experiment with the actual system Experiment with a model of the system Physical model Mathematical model Analytical solution Simulation Figure 1. Ways to study a system
Experiment with the actual system vs. Experiment with a Model of the system • Costly, disruptively. • “System” could be only a conceptual matter. • Validity : the accuracy of the model. • Physical model vs. Mathematical model • Cockpits, miniatures, etc. are iconic. Sometimes useful in operations research like scale models. • Analytical solution vs. Simulation • v = d/t • Large nonsparse matrix inversion, manufacturing system, the Matrix
Simulation models • Static vs. Dynamic simulation models • Whether time plays an role in the model • Deterministic vs. stochastic simulation models • Whether random elements are taken into account • One of the main disadvantage of simulation • Continuous vs. discrete simulation models • Whether state changes happen instantaneously in countable time points.
Time advance mechanisms for discrete-event models • Next-event time advance ….while ( !done) { System->next_Event(); Simulation_clock->update(); }….. • Fixed-increment time advance ….while (time <= end_time) { System->update_states(); time++; }….
Distributed simulation • Why distributed simulation? • Ever-complex system and simulation models require more computing power • Advance in hardware and software technologies • Lower cost of hardware • Network computing capabilities
Users don’t know where the resources are located • Resources can be moved without changing their names • Users don’t know the number of existing instances of the object • Many users can share the resources automatically • Some processes may execute in parallel on the network. • Distributed systems: the middle tier contains computers without shared memories. Acts as one single machine to users. • Dialogue between computers is make possible by a unique inter-process communication mechanism
Distributed simulation architecture Basic elements: • An object interface language : describe interface. • Distributed applications require more abstract level of communications than ordinary ones. • Provide interoperability between distributed objects • An object manager : • Passing references to requesting clients • Instantiating objects and marshalling(coordinating) object requests between different machines. • Objects therefore become indifferent to invokers. • A naming service • The mechanism by which a server informs clients about objects available for access. • Making the communications between objects can be delayed until runtime.
J2EE’s RMI Remote Method Invocation/Internet Inter-ORB Protocol (RMI/IIOP)—Protocol that enables Remote Method Invocation (RMI) • Programmers to combine the benefits of using the RMI APIs and robust • CORBA IIOP communications protocol to communicate with • CORBA-compliant clients that have been developed using any language • compliant with CORBA.
Comparison • Both CORBA and HLA are concerned with legacy applications, possibly in different languages. C++, Ada, Java, etc. • RMI keeps to single language, now has common interface with CORBA • HLA is more simulation specific, whereas CORBA and RMI are designed for general applications. • HLA’ s notion of transfer of object ownership is unique . • RMI uses TCP/IP, CORBA uses IIOP, HLA leaves the choice to RTI developers/vendors (which is considered a disadvantage to interoperability). • RMI has unique security Manager.