Sold Out
Book Categories |
1 | Introduction to Simulation | 1 |
1.1 | Introduction | 1 |
1.2 | Simulation with Java | 1 |
1.2.1 | Overview | 1 |
1.2.2 | Implementing Simulation Models with Java and Psim-J | 3 |
1.3 | Systems, Models, and Modeling | 4 |
1.4 | Categories of Models | 5 |
1.5 | Conceptual Models | 5 |
1.6 | Simulation Models | 6 |
1.6.1 | General Concepts | 6 |
1.6.2 | Designing Simulation Models | 8 |
1.6.3 | Implementing Simulation Models | 9 |
1.7 | Simulation Results | 9 |
1.8 | Types of Simulation Models | 10 |
1.9 | Phases in Model Development | 11 |
1.10 | Performance Measures and Performance Modeling | 13 |
1.10.1 | Performance Metrics | 13 |
1.10.2 | Workload | 14 |
1.10.3 | Additional Performance Concepts | 14 |
1.11 | Summary | 15 |
1.12 | Exercises | 15 |
2 | Objects, Classes and UML | 17 |
2.1 | Introduction | 17 |
2.2 | Object-Oriented Modeling | 17 |
2.2.1 | Conceptual Model | 17 |
2.2.2 | Modeling Objects | 18 |
2.2.3 | Encapsulation | 19 |
2.2.4 | Interfaces | 19 |
2.2.5 | Objects and Classes | 19 |
2.3 | Using UML For Object-Oriented Modeling | 20 |
2.4 | Use Case Diagrams | 21 |
2.5 | Static Modeling Diagrams | 22 |
2.5.1 | Class Diagrams | 22 |
2.5.2 | Associations | 23 |
2.5.3 | Multiplicity of the Association | 24 |
2.5.4 | Aggregation | 24 |
2.5.5 | Generalization and Inheritance | 25 |
2.5.5.1 | Class Inheritance | 25 |
2.5.5.2 | Generalization | 25 |
2.6 | Dynamic Modeling Diagrams | 26 |
2.6.1 | Collaboration Diagrams | 26 |
2.6.2 | Sequence Diagrams | 27 |
2.6.3 | State Diagrams | 27 |
2.7 | Concurrency | 28 |
2.8 | Summary | 29 |
2.9 | Exercises | 30 |
3 | Relevant Aspects Of The Java Programming Language | 31 |
3.1 | Introduction | 31 |
3.2 | Types Of Java Programs | 31 |
3.3 | Basic Object-Oriented Concepts Of Java | 32 |
3.3.1 | Java Classes | 32 |
3.3.2 | Java Packages | 33 |
3.3.3 | Constructors | 33 |
3.4 | A Simple Application With Two Classes | 34 |
3.5 | Dealing With Global Variables | 37 |
3.5.1 | Need For Global Variables | 37 |
3.5.2 | Global Constants | 37 |
3.6 | Arrays and Collection Classes | 38 |
3.6.1 | Collection Classes | 40 |
3.7 | Inheritance | 40 |
3.7.1 | Base and derived classes | 40 |
3.7.2 | Constructors of the Subclasses | 42 |
3.8 | Abstract Classes | 42 |
3.9 | Polymorphism | 43 |
3.10 | Classes and Interfaces | 43 |
3.11 | Exceptions | 44 |
3.12 | Java Threads | 45 |
3.12.1 | Using Threads | 45 |
3.12.2 | Inheriting the Thread Class | 46 |
3.12.3 | Other Basic Thread Methods | 47 |
3.12.4 | Thread Suspending Itself | 48 |
3.12.5 | Implementing the Runnable Interface | 48 |
3.12.6 | Interrupting a Thread Object | 49 |
3.12.7 | Thread Priorities | 51 |
3.12.8 | Simple Thread Synchronization | 51 |
3.12.9 | Wait/Notify Mechanism in Threads | 52 |
3.13 | Summary | 53 |
3.14 | Exercises | 53 |
4 | Discrete-Event Simulation | 55 |
4.1 | Introduction | 55 |
4.2 | Modeling System Behavior | 55 |
4.3 | Implementation of Discrete-Event Simulation | 56 |
4.4 | The Time Dimension | 57 |
4.5 | World Views For Discrete-Event Simulation | 58 |
4.5.1 | The Activity World View | 59 |
4.5.2 | The Event World View | 59 |
4.5.3 | The Process Interaction World View | 59 |
4.6 | Implementing The Process Worldview | 60 |
4.7 | Object-Oriented Simulation | 62 |
4.8 | Software For Discrete-Event Simulation | 63 |
4.9 | Discrete Event Simulation Packages | 64 |
4.9.1 | SimPack and Sim++ | 64 |
4.9.2 | CSIM | 64 |
4.9.3 | ModSim | 64 |
4.9.4 | GPSS | 65 |
4.9.5 | Simula | 65 |
4.9.6 | Simscript | 65 |
4.9.7 | GASP | 66 |
4.9.8 | SLAM | 66 |
4.9.9 | Task Library | 66 |
4.9.10 | The Simulation Package and Language, Psim and PsimL | 66 |
4.9.11 | Other Simulation Packages | 67 |
4.10 | Simulation Packages in Java | 67 |
4.10.1 | Java version of Psim | 67 |
4.10.2 | Other Sources on Simulation Languages, Conferences, and Courses | 67 |
4.11 | Summary | 68 |
4.12 | Exercises | 69 |
5 | Simulation With The Process Worldview | 71 |
5.1 | Introduction | 71 |
5.2 | Processes and Simulation Models | 71 |
5.2.1 | Entities and Objects | 71 |
5.2.2 | Single-Server Models | 72 |
5.3 | A Model For The Car-Wash System | 73 |
5.3.1 | The Conceptual Model | 73 |
5.3.2 | The Car-Wash Deterministic Model | 75 |
5.3.3 | The Car-Wash Stochastic Model | 80 |
5.4 | Performance and Workload Characterization | 84 |
5.5 | Implementing The Simulation Model | 85 |
5.5.1 | Using Java And Psim-J | 85 |
5.5.2 | Java Implementation Of The Car-wash Model | 87 |
5.6 | Graphical User Interfaces | 93 |
5.7 | Summary | 93 |
5.8 | Exercises | 95 |
6 | Models of Multi-Server Systems | 97 |
6.1 | Introduction | 97 |
6.2 | Queuing Models | 97 |
6.3 | Multi-Server Queuing Models | 98 |
6.4 | The Multi-Server Model of the Car-Wash System | 99 |
6.4.1 | Description Of The Server Process | 100 |
6.4.2 | Description Of The Customer Process | 100 |
6.4.3 | Description Of The Arrivals Process | 101 |
6.4.4 | Simulation Results | 102 |
6.5 | Java Implementation of the Multi-Server Model | 105 |
6.6 | Multi-Server Models With Multiple Queues | 108 |
6.6.1 | Description Of The Server Process | 108 |
6.6.2 | Description of the Customer Process | 109 |
6.7 | Queuing Networks | 109 |
6.8 | Summary | 110 |
6.9 | Exercises | 111 |
7 | Multi-Class Queuing Models | 113 |
7.1 | Introduction | 113 |
7.2 | Priorities With Single-Server Models | 114 |
7.2.1 | Description of the Server Process | 114 |
7.2.2 | Description of the Arrivals Process | 115 |
7.2.3 | Description of the Car Process | 115 |
7.2.4 | Results from the Simulation | 116 |
7.2.5 | Implementation Of The Car-Wash Model | 120 |
7.3 | Multi-Server Models with Priorities | 123 |
7.4 | Summary | 123 |
7.5 | Exercises | 124 |
8 | Resources | 127 |
8.1 | Introduction | 127 |
8.2 | Resource Manipulation | 127 |
8.3 | Software Implementation of Resources | 128 |
8.4 | Model Implementation in Psim-J | 130 |
8.5 | A Model of a Busy Warehouse | 131 |
8.6 | Allocating Resources with Priorities | 136 |
8.7 | Deadlock | 136 |
8.8 | Summary | 137 |
8.9 | Exercises | 138 |
9 | Basic Process Cooperation | 139 |
9.1 | Introduction | 139 |
9.2 | Producer-Consumer Cooperation | 139 |
9.3 | Producer and Consumer Objects | 140 |
9.4 | Implementing Process Cooperation | 141 |
9.4.1 | Producer Implementation | 141 |
9.4.2 | Consumer Implementation | 142 |
9.5 | Model Of A Machine Parts-Replacement System | 142 |
9.6 | Summary | 147 |
9.7 | Exercises | 147 |
10 | Synchronous Cooperation | 149 |
10.1 | Introduction | 149 |
10.2 | Master-Slave Synchronization | 149 |
10.2.1 | General Synchronous Cooperation | 149 |
10.2.2 | Synchronous Communication | 150 |
10.3 | Implementing Process Cooperation in Java | 151 |
10.4 | Model With Synchronous Communication | 152 |
10.5 | Cooperation with Several Slaves | 156 |
10.6 | Summary | 157 |
10.7 | Questions | 157 |
11 | Conditional Waiting | 159 |
11.1 | Introduction | 159 |
11.2 | Modeling With Conditional Synchronization | 159 |
11.3 | Implementation with Java and Psim-J | 160 |
11.3.1 | General Approach | 160 |
11.3.2 | Implementing Simulation Models | 161 |
11.4 | A Model Of A Port System | 162 |
11.5 | Summary | 166 |
11.6 | Exercises | 166 |
12 | Interrupts | 167 |
12.1 | Introduction | 167 |
12.2 | Basic Notion of Interruptions | 167 |
12.3 | Interrupt Handling | 168 |
12.4 | Interrupts using Java and Psim-J | 169 |
12.5 | The Parts-Replacement Model With Interrupts | 171 |
12.6 | Car-Wash Model with Interrupts | 175 |
12.7 | Summary | 181 |
12.8 | Exercises | 181 |
13 | More Simulation Models | 183 |
13.1 | Introduction | 183 |
13.2 | Model of a Simple Client-Server System | 183 |
13.3 | Model of an Ethernet Client-Server System | 191 |
13.3.1 | The Ethernet Protocol | 191 |
13.3.2 | Network Performance | 192 |
13.3.3 | Model Implementation | 192 |
13.4 | Summary | 196 |
13.5 | Exercises | 196 |
14 | Basic Probability Theory and Random Numbers | 197 |
14.1 | Introduction | 197 |
14.2 | Experiments and Outcomes | 197 |
14.3 | Long-term Behavior of Systems | 198 |
14.4 | Overview of Set Theory | 198 |
14.5 | Probabilities | 199 |
14.6 | Random Variable and Distribution Functions | 199 |
14.7 | Expected Values, Variance and Covariance | 200 |
14.8 | The Geometric distribution | 201 |
14.9 | The Binomial Distribution | 202 |
14.10 | The Exponential Distribution | 203 |
14.11 | The Poisson Distribution | 203 |
14.12 | The Uniform Distribution | 204 |
14.13 | The Normal Distribution | 204 |
14.14 | Stochastic Processes | 204 |
14.15 | Random Numbers in Simulation Models | 205 |
14.16 | Markov Models | 206 |
14.16.1 | State Dependencies | 206 |
14.16.2 | Markov Chains | 207 |
14.17 | Summary Statistics | 208 |
14.18 | Comparing Sample Data | 209 |
14.19 | Summary | 210 |
14.20 | Questions | 211 |
15 | Overview of Model Verification and Validation | 213 |
15.1 | Introduction | 213 |
15.2 | Verification Techniques For Simulation Models | 213 |
15.2.1 | Object-Oriented Modeling and Programming | 213 |
15.2.2 | Using Traces | 214 |
15.2.3 | Graphical Outputs | 214 |
15.2.4 | Testing for Verification | 214 |
15.3 | Validation Techniques For Simulation Models | 215 |
15.3.1 | Importance | 215 |
15.3.2 | General Validation Approach | 215 |
15.3.3 | Black Box Validation | 216 |
15.3.4 | White Box Validation | 216 |
15.4 | Summary | 217 |
Appendix A | A Short Manual For Psim-J | 219 |
A.1 | Introduction to The Psim-J Library | 219 |
A.2 | List Of Classes | 220 |
A.3 | Defining Processes in a Simulation Model | 221 |
A.4 | The Time Dimension | 222 |
A.5 | Other Process Methods | 222 |
A.6 | Starting and Running a Simulation | 226 |
A.7 | Priority of a Process | 226 |
A.8 | Process States | 227 |
A.9 | Scheduling Processes | 228 |
A.10 | Handling Queues | 228 |
A.10.1 | <
Login|Complaints|Blog|Games|Digital Media|Souls|Obituary|Contact Us|FAQ
CAN'T FIND WHAT YOU'RE LOOKING FOR? CLICK HERE!!! X
You must be logged in to add to WishlistX
This item is in your Wish ListX
This item is in your CollectionObject-Oriented Discrete-Event Simulation with Java: A Practical Introduction
X
This Item is in Your InventoryObject-Oriented Discrete-Event Simulation with Java: A Practical Introduction
X
You must be logged in to review the productsX
X
X
Add Object-Oriented Discrete-Event Simulation with Java: A Practical Introduction, This book introduces the application of the Java programming language in discrete-event simulation. In addition, the fundamental concepts and practical simulation techniques for modeling different types of systems to study their general behavior and their, Object-Oriented Discrete-Event Simulation with Java: A Practical Introduction to the inventory that you are selling on WonderClubX
X
Add Object-Oriented Discrete-Event Simulation with Java: A Practical Introduction, This book introduces the application of the Java programming language in discrete-event simulation. In addition, the fundamental concepts and practical simulation techniques for modeling different types of systems to study their general behavior and their, Object-Oriented Discrete-Event Simulation with Java: A Practical Introduction to your collection on WonderClub |