出版時(shí)間:2009-9 出版社:清華大學(xué)出版社 作者:勞爾 頁數(shù):734
Tag標(biāo)簽:無
前言
仿真建模與分析(Simulation Modeling&Analysis)的第四版問世了。正如作者在序言中所言,與第三版一樣,第四版對(duì)離散事件系統(tǒng)仿真研究的所有重要方面給出了綜合性的最新論述,包括建模、仿真軟件、模型校驗(yàn)和確認(rèn)、輸入建模、隨機(jī)數(shù)發(fā)生器、隨機(jī)變量與隨機(jī)過程的產(chǎn)生、統(tǒng)計(jì)設(shè)計(jì)與仿真實(shí)驗(yàn)分析,以及像制造這一類主要工業(yè)領(lǐng)域的應(yīng)用等?! ∧敲?,第四版的內(nèi)容有何新變化和新特點(diǎn)呢?較之第三版,第四版基本保持了第三版的體系結(jié)構(gòu),因而仍具有第三版的許多特點(diǎn),但在內(nèi)容上做了許多調(diào)整。所有章節(jié)的相關(guān)內(nèi)容的最新進(jìn)展均得到補(bǔ)充,給出了最新論述和結(jié)果,各章的習(xí)題也做了相應(yīng)的調(diào)整和補(bǔ)充,其中主要包括: ?。?)將第三版中所有FORTRAN程序刪除了,以反映當(dāng)前主流編程語言是c語言這樣一種情況,使相關(guān)章節(jié)變得更為簡(jiǎn)練。對(duì)FORTRAN仍感興趣的讀者,可以從www.mhhe.com/Law網(wǎng)址下載相關(guān)代碼?! 。?)對(duì)仿真軟件的介紹進(jìn)行了重新改寫,以反映第三版以來,國際上流行的幾種仿真軟件如Arena、Extend等的最新進(jìn)展?! 。?1近些年來,模型的校驗(yàn)、驗(yàn)證及確認(rèn)技術(shù)(VV&A)得到廣泛的注意并取得了許多進(jìn)展,因此作者對(duì)該部分進(jìn)行了重新編寫,例如,第四版大大擴(kuò)充了關(guān)于如何由仿真模型的輸出數(shù)據(jù)來確定仿真模型的有效性,包括與已有系統(tǒng)的輸出進(jìn)行比較、與專家的意見比較,以及與其它模型進(jìn)行比較等技術(shù)?! 。?1關(guān)于隨機(jī)數(shù)發(fā)生器,第四版詳細(xì)討論了反饋移位寄存器發(fā)生器(第三版稱為Tausworthe發(fā)生器)的實(shí)現(xiàn),包括LFSR.、GFSR以及TGFSR等?! 。?)關(guān)于隨機(jī)變量的產(chǎn)生,第四版增加了一種新舍選法一一均勻比法(ratio-of-uniforms method)?! 。?1在多系統(tǒng)比較方面,第四版修訂了排序及選擇程序(ranking and selection procedure),以允許公共隨機(jī)數(shù)(CRN)用于跨系統(tǒng)配置等,對(duì)基于公共隨機(jī)數(shù)的方差減少技術(shù)的實(shí)現(xiàn)給出了更為詳細(xì)且實(shí)用的討論。
內(nèi)容概要
本書自1982年首次出版以來,在世界范圍內(nèi)得到廣泛采用,被譽(yù)為仿真領(lǐng)域的“圣經(jīng)”。最新版(第4版)對(duì)離散事件系統(tǒng)仿真研究的所有重要方面給出了綜合性的最新論述,包括建模。仿真軟件、模型校驗(yàn)和確認(rèn)。輸入建模,隨機(jī)數(shù)發(fā)生器。隨機(jī)變量與隨機(jī)過程的產(chǎn)生。統(tǒng)計(jì)設(shè)計(jì)與仿真實(shí)驗(yàn)分析,以及像制造這一類主要工業(yè)領(lǐng)域的應(yīng)用等。
書籍目錄
Chapter 1 Basic Simulation Modeling 1.1 The Nature of Simulation 1.2 Systems, Models, and Simulation 1.3 Discrete-Event Simulation 1.3.1 Time-Advance Mechanisms 1.3.2 Components and Organization of a Discrete-Event Simulation Model 1.4 Simulation of a Single-Server Queueing System 1.4.1 Problem Statement 1.4.2 Intuitive Explanation 1.4.3 Program Organization and Logic 1.4.4 C Program 1.4.5 Simulation Output and Discussion 1.4.6 Alternative StoplSing Rules 1.4.7 Determining the Events and Variables 1.5 Simulation of an Inventory System 1.5.1 Problem Statement 1.5.2 Program Organization and Logic 1.5.3 C Program 1.5.4 Simulation Output and Discussion 1.6 Steps in a Sound Simulation Study 1.7 Other Types of Simulation 1.7.1 Continuous Simulation 1.7.2 Combined Discrete-Continuous Simulation 1.7.3 Monte Carlo Simulation 1.8 Advantages, Disadvantages, and Pitfalls of Simulation Appendix 1A: A Primer on Queueing Systems 1A.1 Components of a Queueing System 1A.2 Notation for Queueing Systems 1A.3 Measures of Performance for Queueing Systems ProblemsChapter 2 Modeling Complex Systems 2.1 Introduction 2.2 List Processing in Simulation 2.2.1 Approaches to Storing Lists in a Computer 2.2.2 Linked Storage Allocation 2.3 A Simple Simulation Language: simlib 2.4 Single-Server Queueing Simulation with simlib 2.4.1 Problem Statement 2.4.2 simlib Program 2.4.3 Simulation Output and Discussion 2.5 Time-Shared Computer Model 2.5.1 Problem Statement 2.5.2 simlib Program 2.5.3 Simulation Output and Discussion 2.6 Multiteller Bank With Jockeying 2.6.1 Problem Statement 2.6.2 simlib Program 2.6.3 Simulation Output and Discussion " 2.7 Job-Shop Model 2.7.1 Problem Statement 2.7.2 simlib Program 2.7.3 Simulation Output and Discussion 2.8 Efficient Event-List Manipulation Appendix 2A: C Code for simlib ProblemsChapter 3 Simulation Software 3.1 Introduction 3.2 Comparison of Simulation Packages with Programming Languages 3.3 Classification of Simulation Software 3.3.1 General-Purpose vs. Application-Oriented Simulation Packages 3.3.2 Modeling Approaches 3.3.3 Common Modeling Elements 3.4 Desirable Software Features 3.4.1 General Capabilities 3.4.2 Hardware and Software Requirements 3.4.3 Animation and Dynamic Graphics 3.4.4 Statistical Capabilities 3.4.5 Customer Support and Documentation ……Chapter 4 Review of Basic Probability and StatisticsChapter 5 Building Valid,Credible,and Appropriately Detailed Simulation ModelsChapter 6 Selection Input Probability DistributionsChapter 7 Random-Number GeneratorsChapter 8 Generating Random VariatesChapter 9 Output Data Anlaysis for a Single SystemChapter 10 Comparing Alternative System ConfigurationsChapter 11 Variance-Reduction TechniquesChapter 12 Experimental Design and OptimizationChapter 13 Simulation of Manufacturing SystemsAppendixReferences
章節(jié)摘錄
Figure 2.8 shows init_model, which begins by setting the num_custs_delayed counter to 0 for the number of delays observed. The first arrival event is then sched-uled by invoking event_schedule with the desired event time (a float) as the first ar-gument and the event type (an int) as the second argument; note that adding sire_time to the generated exponential interarrival time in the first argument is not strictly necessary here since sim_time is now zero, but we write it this way to show the general form and to emphasize that the first argument of event_schedule is the (absolute) time in the simulated future when the event is to occur, not the interval of time from now until then. In Chap. 1 wehad to set the time of impossible events to(actually, 1030), but now we simply leave them out of the event list, ensuring that they cannot be chosen to happen next. Thus, we just do not schedule a departure event at all here. In Fig. 2.9 is the code for event function arrive, which begins by using event_schedule to schedule the next arrival event, in a manner similar to that in init_model (here, adding sim_time to the generated exponential interarrival time is necessary since sim_time will be positive). We then check to see whether the server is busy, by asking whether the server list contains a (dummy) record; this is done by checking whether list_size[LIST_SERVER] is equal to 1. If so, the arriving cus- tomer must join the end of the queue, which is done by placing the time of arrival (the current clock value, sim time) into the first location of the transfer array, and by filing this record at the end (option = LAST = 2) of the queue list (list = LIST_QUEUE = 1). Note that we do not have to check for overflow of the queue here since simlib is automaticallyallocating storage dynamically for the lists as it is needed. On the other hand, if the server is idle, the customer experiences a delay of 0, which is noted by invoking sampst; this is necessary even though the delay is 0, since sampst will also increment the number of observations by 1. We increment num_custs_delayed since a delay is being observed, and a departure event is sched-uled into the event list; note that we are dedicating stream EVENT_DEPARTURE (=2) to generating service times.
圖書封面
圖書標(biāo)簽Tags
無
評(píng)論、評(píng)分、閱讀與下載