Philipp K. Janert
Feedback Control for Computer Systems
Introducing Control Theory to Enterprise Programmers
Philipp K. Janert
Feedback Control for Computer Systems
Introducing Control Theory to Enterprise Programmers
- Broschiertes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
How can you take advantage of feedback control for enterprise programming? With this book, author Philipp K. Janert demonstrates how the same principles that govern cruise control in your car also apply to data center management and other enterprise systems. Through case studies and hands-on simulations, you'll learn methods to solve several control issues, including mechanisms to spin up more servers automatically when web traffic spikes. Feedback is ideal for controlling large, complex systems, but its use in software engineering raises unique issues. This book provides basic theory and lots…mehr
Andere Kunden interessierten sich auch für
- Henk NijmeijerNonlinear Dynamical Control Systems108,99 €
- Joseph L HellersteinFeedback Control of Computing Systems232,99 €
- He-Sheng WangH-Infinity Control for Nonlinear Descriptor Systems120,99 €
- Farzin AsadiFeedback Control Systems85,59 €
- Changsheng HuaReinforcement Learning Aided Performance Optimization of Feedback Control Systems52,99 €
- Dynamic Data Driven Applications Systems37,99 €
- Nicholas J RadcliffeGetting Started with Fluidinfo28,99 €
-
-
-
How can you take advantage of feedback control for enterprise programming? With this book, author Philipp K. Janert demonstrates how the same principles that govern cruise control in your car also apply to data center management and other enterprise systems. Through case studies and hands-on simulations, you'll learn methods to solve several control issues, including mechanisms to spin up more servers automatically when web traffic spikes.
Feedback is ideal for controlling large, complex systems, but its use in software engineering raises unique issues. This book provides basic theory and lots of practical advice for programmers with no previous background in feedback control. Learn feedback concepts and controller design Get practical techniques for implementing and tuning controllers Use feedback "design patterns" for common control scenarios Maintain a cache's "hit rate" by automatically adjusting its size Respond to web traffic by scaling server instances automatically Explore ways to use feedback principles with queueing systems Learn how to control memory consumption in a game engine Take a deep dive into feedback control theory
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Feedback is ideal for controlling large, complex systems, but its use in software engineering raises unique issues. This book provides basic theory and lots of practical advice for programmers with no previous background in feedback control. Learn feedback concepts and controller design Get practical techniques for implementing and tuning controllers Use feedback "design patterns" for common control scenarios Maintain a cache's "hit rate" by automatically adjusting its size Respond to web traffic by scaling server instances automatically Explore ways to use feedback principles with queueing systems Learn how to control memory consumption in a game engine Take a deep dive into feedback control theory
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Produktdetails
- Produktdetails
- Verlag: O'Reilly Media
- Seitenzahl: 327
- Erscheinungstermin: 3. Dezember 2013
- Englisch
- Abmessung: 228mm x 151mm x 20mm
- Gewicht: 538g
- ISBN-13: 9781449361693
- ISBN-10: 1449361692
- Artikelnr.: 37011967
- Verlag: O'Reilly Media
- Seitenzahl: 327
- Erscheinungstermin: 3. Dezember 2013
- Englisch
- Abmessung: 228mm x 151mm x 20mm
- Gewicht: 538g
- ISBN-13: 9781449361693
- ISBN-10: 1449361692
- Artikelnr.: 37011967
Philipp K. Janert was born and raised in Germany. He obtained aPh.D. in Theoretical Physics from the University of Washington in 1997and has been working in the tech industry since, including four yearsat Amazon.com, where he initiated and led several projects to improveAmazon's order fulfillment process. He is the author of two books ondata analysis, including the best-selling "Data Analysis with OpenSource Tools" (O'Reilly, 2010), and his writings have appeared onPerl.com, IBM developerWorks, IEEE Software, and in the LinuxMagazine. He has contributed to CPAN and other open-sourceprojects. He lives in the Pacific Northwest.
Preface
What Is Feedback?
Why This Book?
How to Read This Book
Conventions Used in This Book
Using Code Examples
Safari® Books Online
How to Contact Us
Acknowledgments
Foundations
Chapter 1: Why Feedback? An Invitation
1.1 A Hands-On Example
1.2 Hoping for the Best
1.3 Establishing Control
1.4 Adding It Up
1.5 Summary
1.6 Code to Play With
Chapter 2: Feedback Systems
2.1 Systems and Signals
2.2 Tracking Error and Corrective Action
2.3 Stability, Performance, Accuracy
2.4 Uncertainty and Change
2.5 Feedback and Enterprise Systems
2.6 Code to Play With
Chapter 3: System Dynamics
3.1 Lags and Delays
3.2 Dynamics in the Physical World and in the Virtual World
3.3 The Importance of Lags and Delays for Feedback Loops
3.4 Theory and Practice
3.5 Code to Play With
Chapter 4: Controllers
4.1 Block Diagrams
4.2 On/Off Control
4.3 Proportional Control
4.4 Integral Control
4.5 Derivative Control
4.6 The Three-Term or PID Controller
4.7 Code to Play With
Chapter 5: Identifying Input and Output Signals
5.1 Control Input and Output
5.2 Examples
5.3 Criteria for Selecting Control Signals
5.4 A Note on Multidimensional Systems
Chapter 6: Review and Outlook
6.1 The Feedback Idea
6.2 Iteration
6.3 Process Knowledge
6.4 Avoiding Instability
6.5 The Setpoint
6.6 Control, Not Optimization
Practice
Chapter 7: Theory Preview
7.1 Frequency Representation
7.2 The Transfer Function
7.3 Block-Diagram Algebra
7.4 PID Controllers
7.5 Poles of the Transfer Function
7.6 Process Models
Chapter 8: Measuring the Transfer Function
8.1 Static Input/Output Relation: The Process Characteristic
8.2 Dynamic Response to a Step Input: The Process Reaction Curve
8.3 Process Models
8.4 Other Methods of System Identification
Chapter 9: PID Tuning
9.1 Tuning Objectives
9.2 General Effect of Changes to Controller Parameters
9.3 Ziegler-Nichols Tuning
9.4 Semi-Analytical Tuning Methods
9.5 A Closer Look at Controller Tuning Formulas
Chapter 10: Implementation Issues
10.1 Actuator Saturation and Integrator Windup
10.2 Smoothing the Derivative Term
10.3 Choosing a Sampling Interval
10.4 Variants of the PID Controller
10.5 Nonlinear Controllers
Chapter 11: Common Feedback Architectures
11.1 Changing Operating Conditions: Gain Scheduling
11.2 Large Disturbances: Feedforward
11.3 Fast and Slow Dynamics: Nested or "Cascade" Control
11.4 Systems Involving Delays: The Smith Predictor
Case Studies
Chapter 12: Exploring Control Systems Through Simulation
12.1 The Case Studies
12.2 Modeling Time
12.3 The Simulation Framework
Chapter 13: Case Study: Cache Hit Rate
13.1 Defining Components
13.2 Measuring System Characteristics
13.3 Controller Tuning
13.4 Simulation Code
Chapter 14: Case Study: Ad Delivery
14.1 The Situation
14.2 Measuring System Characteristics
14.3 Establishing Control
14.4 Improving Performance
14.5 Variations
14.6 Simulation Code
Chapter 15: Case Study: Scaling Server Instances
15.1 The Situation
15.2 Measuring and Tuning
15.3 Reaching 100 Percent With a Nonstandard Controller
15.4 Dealing with Latency
15.5 Simulation Code
Chapter 16: Case Study: Waiting-Queue Control
16.1 On the Nature of Queues and Buffers
16.2 The Architecture
16.3 Setup and Tuning
16.4 Derivative Control to the Rescue
16.5 Controller Alternatives
16.6 Simulation Code
Chapter 17: Case Study: Cooling Fan Speed
17.1 The Situation
17.2 The Model
17.3 Tuning and Commissioning
17.4 Closed-Loop Performance
17.5 Simulation Code
Chapter 18: Case Study: Controlling Memory Consumption in a Game Engine
18.1 The Situation
18.2 Problem Analysis
18.3 Architecture Alternatives
18.4 Results
18.5 Simulation Code
Chapter 19: Case Study Wrap-Up
19.1 Simple Controllers, Simple Loops
19.2 Measuring and Tuning
19.3 Staying in Control
19.4 Dealing with Noise
Theory
Chapter 20: The Transfer Function
20.1 Differential Equations
20.2 Laplace Transforms
20.3 Using the Laplace Transform to Solve Differential Equations
20.4 The Transfer Function
20.5 What If the Differential Equation Is Not Known?
Chapter 21: Block-Diagram Algebra and the Feedback Equation
21.1 Composite Systems
21.2 The Feedback Equation
21.3 Block-Diagram Algebra
21.4 Limitations and Importance of Transfer Function Methods
Chapter 22: PID Controllers
22.1 The Transfer Function of the PID Controller
22.2 The Canonical Form of the PID Controller
22.3 The General Controller
22.4 Proportional Droop Revisited
Chapter 23: Poles and Zeros
23.1 Structure of a Transfer Function
23.2 Effect of Poles and Zeros
23.3 Pole Positions and Response Patterns
23.4 What to Do About Delays
Chapter 24: Root Locus Techniques
24.1 Construction of Root Locus Diagrams
24.2 Root Locus or "Evans" Rules
24.3 Angle and Magnitude Criteria
24.4 Practical Issues
24.5 Examples
Chapter 25: Frequency Response and the Bode Plot
25.1 Frequency Response
25.2 The Bode Plot
25.3 A Criterion for Marginal Stability
25.4 Other Graphical Techniques
Chapter 26: Topics Beyond This Book
26.1 Discrete-Time Modeling and the z-Transform
26.2 State-Space Methods
26.3 Robust Control
26.4 Optimal Control
26.5 Mathematical Control Theory
Appendices
Glossary
Creating Graphs with Gnuplot
Basic Plotting
Plot Ranges
Inline Transformations
Plotting Simulation Results
Summary
Complex Numbers
Basic Operations
Polar Coordinates
The Complex Exponential
Further Reading
Recommended Reading
Additional References
Mathematical Prerequisites
Colophon
What Is Feedback?
Why This Book?
How to Read This Book
Conventions Used in This Book
Using Code Examples
Safari® Books Online
How to Contact Us
Acknowledgments
Foundations
Chapter 1: Why Feedback? An Invitation
1.1 A Hands-On Example
1.2 Hoping for the Best
1.3 Establishing Control
1.4 Adding It Up
1.5 Summary
1.6 Code to Play With
Chapter 2: Feedback Systems
2.1 Systems and Signals
2.2 Tracking Error and Corrective Action
2.3 Stability, Performance, Accuracy
2.4 Uncertainty and Change
2.5 Feedback and Enterprise Systems
2.6 Code to Play With
Chapter 3: System Dynamics
3.1 Lags and Delays
3.2 Dynamics in the Physical World and in the Virtual World
3.3 The Importance of Lags and Delays for Feedback Loops
3.4 Theory and Practice
3.5 Code to Play With
Chapter 4: Controllers
4.1 Block Diagrams
4.2 On/Off Control
4.3 Proportional Control
4.4 Integral Control
4.5 Derivative Control
4.6 The Three-Term or PID Controller
4.7 Code to Play With
Chapter 5: Identifying Input and Output Signals
5.1 Control Input and Output
5.2 Examples
5.3 Criteria for Selecting Control Signals
5.4 A Note on Multidimensional Systems
Chapter 6: Review and Outlook
6.1 The Feedback Idea
6.2 Iteration
6.3 Process Knowledge
6.4 Avoiding Instability
6.5 The Setpoint
6.6 Control, Not Optimization
Practice
Chapter 7: Theory Preview
7.1 Frequency Representation
7.2 The Transfer Function
7.3 Block-Diagram Algebra
7.4 PID Controllers
7.5 Poles of the Transfer Function
7.6 Process Models
Chapter 8: Measuring the Transfer Function
8.1 Static Input/Output Relation: The Process Characteristic
8.2 Dynamic Response to a Step Input: The Process Reaction Curve
8.3 Process Models
8.4 Other Methods of System Identification
Chapter 9: PID Tuning
9.1 Tuning Objectives
9.2 General Effect of Changes to Controller Parameters
9.3 Ziegler-Nichols Tuning
9.4 Semi-Analytical Tuning Methods
9.5 A Closer Look at Controller Tuning Formulas
Chapter 10: Implementation Issues
10.1 Actuator Saturation and Integrator Windup
10.2 Smoothing the Derivative Term
10.3 Choosing a Sampling Interval
10.4 Variants of the PID Controller
10.5 Nonlinear Controllers
Chapter 11: Common Feedback Architectures
11.1 Changing Operating Conditions: Gain Scheduling
11.2 Large Disturbances: Feedforward
11.3 Fast and Slow Dynamics: Nested or "Cascade" Control
11.4 Systems Involving Delays: The Smith Predictor
Case Studies
Chapter 12: Exploring Control Systems Through Simulation
12.1 The Case Studies
12.2 Modeling Time
12.3 The Simulation Framework
Chapter 13: Case Study: Cache Hit Rate
13.1 Defining Components
13.2 Measuring System Characteristics
13.3 Controller Tuning
13.4 Simulation Code
Chapter 14: Case Study: Ad Delivery
14.1 The Situation
14.2 Measuring System Characteristics
14.3 Establishing Control
14.4 Improving Performance
14.5 Variations
14.6 Simulation Code
Chapter 15: Case Study: Scaling Server Instances
15.1 The Situation
15.2 Measuring and Tuning
15.3 Reaching 100 Percent With a Nonstandard Controller
15.4 Dealing with Latency
15.5 Simulation Code
Chapter 16: Case Study: Waiting-Queue Control
16.1 On the Nature of Queues and Buffers
16.2 The Architecture
16.3 Setup and Tuning
16.4 Derivative Control to the Rescue
16.5 Controller Alternatives
16.6 Simulation Code
Chapter 17: Case Study: Cooling Fan Speed
17.1 The Situation
17.2 The Model
17.3 Tuning and Commissioning
17.4 Closed-Loop Performance
17.5 Simulation Code
Chapter 18: Case Study: Controlling Memory Consumption in a Game Engine
18.1 The Situation
18.2 Problem Analysis
18.3 Architecture Alternatives
18.4 Results
18.5 Simulation Code
Chapter 19: Case Study Wrap-Up
19.1 Simple Controllers, Simple Loops
19.2 Measuring and Tuning
19.3 Staying in Control
19.4 Dealing with Noise
Theory
Chapter 20: The Transfer Function
20.1 Differential Equations
20.2 Laplace Transforms
20.3 Using the Laplace Transform to Solve Differential Equations
20.4 The Transfer Function
20.5 What If the Differential Equation Is Not Known?
Chapter 21: Block-Diagram Algebra and the Feedback Equation
21.1 Composite Systems
21.2 The Feedback Equation
21.3 Block-Diagram Algebra
21.4 Limitations and Importance of Transfer Function Methods
Chapter 22: PID Controllers
22.1 The Transfer Function of the PID Controller
22.2 The Canonical Form of the PID Controller
22.3 The General Controller
22.4 Proportional Droop Revisited
Chapter 23: Poles and Zeros
23.1 Structure of a Transfer Function
23.2 Effect of Poles and Zeros
23.3 Pole Positions and Response Patterns
23.4 What to Do About Delays
Chapter 24: Root Locus Techniques
24.1 Construction of Root Locus Diagrams
24.2 Root Locus or "Evans" Rules
24.3 Angle and Magnitude Criteria
24.4 Practical Issues
24.5 Examples
Chapter 25: Frequency Response and the Bode Plot
25.1 Frequency Response
25.2 The Bode Plot
25.3 A Criterion for Marginal Stability
25.4 Other Graphical Techniques
Chapter 26: Topics Beyond This Book
26.1 Discrete-Time Modeling and the z-Transform
26.2 State-Space Methods
26.3 Robust Control
26.4 Optimal Control
26.5 Mathematical Control Theory
Appendices
Glossary
Creating Graphs with Gnuplot
Basic Plotting
Plot Ranges
Inline Transformations
Plotting Simulation Results
Summary
Complex Numbers
Basic Operations
Polar Coordinates
The Complex Exponential
Further Reading
Recommended Reading
Additional References
Mathematical Prerequisites
Colophon
Preface
What Is Feedback?
Why This Book?
How to Read This Book
Conventions Used in This Book
Using Code Examples
Safari® Books Online
How to Contact Us
Acknowledgments
Foundations
Chapter 1: Why Feedback? An Invitation
1.1 A Hands-On Example
1.2 Hoping for the Best
1.3 Establishing Control
1.4 Adding It Up
1.5 Summary
1.6 Code to Play With
Chapter 2: Feedback Systems
2.1 Systems and Signals
2.2 Tracking Error and Corrective Action
2.3 Stability, Performance, Accuracy
2.4 Uncertainty and Change
2.5 Feedback and Enterprise Systems
2.6 Code to Play With
Chapter 3: System Dynamics
3.1 Lags and Delays
3.2 Dynamics in the Physical World and in the Virtual World
3.3 The Importance of Lags and Delays for Feedback Loops
3.4 Theory and Practice
3.5 Code to Play With
Chapter 4: Controllers
4.1 Block Diagrams
4.2 On/Off Control
4.3 Proportional Control
4.4 Integral Control
4.5 Derivative Control
4.6 The Three-Term or PID Controller
4.7 Code to Play With
Chapter 5: Identifying Input and Output Signals
5.1 Control Input and Output
5.2 Examples
5.3 Criteria for Selecting Control Signals
5.4 A Note on Multidimensional Systems
Chapter 6: Review and Outlook
6.1 The Feedback Idea
6.2 Iteration
6.3 Process Knowledge
6.4 Avoiding Instability
6.5 The Setpoint
6.6 Control, Not Optimization
Practice
Chapter 7: Theory Preview
7.1 Frequency Representation
7.2 The Transfer Function
7.3 Block-Diagram Algebra
7.4 PID Controllers
7.5 Poles of the Transfer Function
7.6 Process Models
Chapter 8: Measuring the Transfer Function
8.1 Static Input/Output Relation: The Process Characteristic
8.2 Dynamic Response to a Step Input: The Process Reaction Curve
8.3 Process Models
8.4 Other Methods of System Identification
Chapter 9: PID Tuning
9.1 Tuning Objectives
9.2 General Effect of Changes to Controller Parameters
9.3 Ziegler-Nichols Tuning
9.4 Semi-Analytical Tuning Methods
9.5 A Closer Look at Controller Tuning Formulas
Chapter 10: Implementation Issues
10.1 Actuator Saturation and Integrator Windup
10.2 Smoothing the Derivative Term
10.3 Choosing a Sampling Interval
10.4 Variants of the PID Controller
10.5 Nonlinear Controllers
Chapter 11: Common Feedback Architectures
11.1 Changing Operating Conditions: Gain Scheduling
11.2 Large Disturbances: Feedforward
11.3 Fast and Slow Dynamics: Nested or "Cascade" Control
11.4 Systems Involving Delays: The Smith Predictor
Case Studies
Chapter 12: Exploring Control Systems Through Simulation
12.1 The Case Studies
12.2 Modeling Time
12.3 The Simulation Framework
Chapter 13: Case Study: Cache Hit Rate
13.1 Defining Components
13.2 Measuring System Characteristics
13.3 Controller Tuning
13.4 Simulation Code
Chapter 14: Case Study: Ad Delivery
14.1 The Situation
14.2 Measuring System Characteristics
14.3 Establishing Control
14.4 Improving Performance
14.5 Variations
14.6 Simulation Code
Chapter 15: Case Study: Scaling Server Instances
15.1 The Situation
15.2 Measuring and Tuning
15.3 Reaching 100 Percent With a Nonstandard Controller
15.4 Dealing with Latency
15.5 Simulation Code
Chapter 16: Case Study: Waiting-Queue Control
16.1 On the Nature of Queues and Buffers
16.2 The Architecture
16.3 Setup and Tuning
16.4 Derivative Control to the Rescue
16.5 Controller Alternatives
16.6 Simulation Code
Chapter 17: Case Study: Cooling Fan Speed
17.1 The Situation
17.2 The Model
17.3 Tuning and Commissioning
17.4 Closed-Loop Performance
17.5 Simulation Code
Chapter 18: Case Study: Controlling Memory Consumption in a Game Engine
18.1 The Situation
18.2 Problem Analysis
18.3 Architecture Alternatives
18.4 Results
18.5 Simulation Code
Chapter 19: Case Study Wrap-Up
19.1 Simple Controllers, Simple Loops
19.2 Measuring and Tuning
19.3 Staying in Control
19.4 Dealing with Noise
Theory
Chapter 20: The Transfer Function
20.1 Differential Equations
20.2 Laplace Transforms
20.3 Using the Laplace Transform to Solve Differential Equations
20.4 The Transfer Function
20.5 What If the Differential Equation Is Not Known?
Chapter 21: Block-Diagram Algebra and the Feedback Equation
21.1 Composite Systems
21.2 The Feedback Equation
21.3 Block-Diagram Algebra
21.4 Limitations and Importance of Transfer Function Methods
Chapter 22: PID Controllers
22.1 The Transfer Function of the PID Controller
22.2 The Canonical Form of the PID Controller
22.3 The General Controller
22.4 Proportional Droop Revisited
Chapter 23: Poles and Zeros
23.1 Structure of a Transfer Function
23.2 Effect of Poles and Zeros
23.3 Pole Positions and Response Patterns
23.4 What to Do About Delays
Chapter 24: Root Locus Techniques
24.1 Construction of Root Locus Diagrams
24.2 Root Locus or "Evans" Rules
24.3 Angle and Magnitude Criteria
24.4 Practical Issues
24.5 Examples
Chapter 25: Frequency Response and the Bode Plot
25.1 Frequency Response
25.2 The Bode Plot
25.3 A Criterion for Marginal Stability
25.4 Other Graphical Techniques
Chapter 26: Topics Beyond This Book
26.1 Discrete-Time Modeling and the z-Transform
26.2 State-Space Methods
26.3 Robust Control
26.4 Optimal Control
26.5 Mathematical Control Theory
Appendices
Glossary
Creating Graphs with Gnuplot
Basic Plotting
Plot Ranges
Inline Transformations
Plotting Simulation Results
Summary
Complex Numbers
Basic Operations
Polar Coordinates
The Complex Exponential
Further Reading
Recommended Reading
Additional References
Mathematical Prerequisites
Colophon
What Is Feedback?
Why This Book?
How to Read This Book
Conventions Used in This Book
Using Code Examples
Safari® Books Online
How to Contact Us
Acknowledgments
Foundations
Chapter 1: Why Feedback? An Invitation
1.1 A Hands-On Example
1.2 Hoping for the Best
1.3 Establishing Control
1.4 Adding It Up
1.5 Summary
1.6 Code to Play With
Chapter 2: Feedback Systems
2.1 Systems and Signals
2.2 Tracking Error and Corrective Action
2.3 Stability, Performance, Accuracy
2.4 Uncertainty and Change
2.5 Feedback and Enterprise Systems
2.6 Code to Play With
Chapter 3: System Dynamics
3.1 Lags and Delays
3.2 Dynamics in the Physical World and in the Virtual World
3.3 The Importance of Lags and Delays for Feedback Loops
3.4 Theory and Practice
3.5 Code to Play With
Chapter 4: Controllers
4.1 Block Diagrams
4.2 On/Off Control
4.3 Proportional Control
4.4 Integral Control
4.5 Derivative Control
4.6 The Three-Term or PID Controller
4.7 Code to Play With
Chapter 5: Identifying Input and Output Signals
5.1 Control Input and Output
5.2 Examples
5.3 Criteria for Selecting Control Signals
5.4 A Note on Multidimensional Systems
Chapter 6: Review and Outlook
6.1 The Feedback Idea
6.2 Iteration
6.3 Process Knowledge
6.4 Avoiding Instability
6.5 The Setpoint
6.6 Control, Not Optimization
Practice
Chapter 7: Theory Preview
7.1 Frequency Representation
7.2 The Transfer Function
7.3 Block-Diagram Algebra
7.4 PID Controllers
7.5 Poles of the Transfer Function
7.6 Process Models
Chapter 8: Measuring the Transfer Function
8.1 Static Input/Output Relation: The Process Characteristic
8.2 Dynamic Response to a Step Input: The Process Reaction Curve
8.3 Process Models
8.4 Other Methods of System Identification
Chapter 9: PID Tuning
9.1 Tuning Objectives
9.2 General Effect of Changes to Controller Parameters
9.3 Ziegler-Nichols Tuning
9.4 Semi-Analytical Tuning Methods
9.5 A Closer Look at Controller Tuning Formulas
Chapter 10: Implementation Issues
10.1 Actuator Saturation and Integrator Windup
10.2 Smoothing the Derivative Term
10.3 Choosing a Sampling Interval
10.4 Variants of the PID Controller
10.5 Nonlinear Controllers
Chapter 11: Common Feedback Architectures
11.1 Changing Operating Conditions: Gain Scheduling
11.2 Large Disturbances: Feedforward
11.3 Fast and Slow Dynamics: Nested or "Cascade" Control
11.4 Systems Involving Delays: The Smith Predictor
Case Studies
Chapter 12: Exploring Control Systems Through Simulation
12.1 The Case Studies
12.2 Modeling Time
12.3 The Simulation Framework
Chapter 13: Case Study: Cache Hit Rate
13.1 Defining Components
13.2 Measuring System Characteristics
13.3 Controller Tuning
13.4 Simulation Code
Chapter 14: Case Study: Ad Delivery
14.1 The Situation
14.2 Measuring System Characteristics
14.3 Establishing Control
14.4 Improving Performance
14.5 Variations
14.6 Simulation Code
Chapter 15: Case Study: Scaling Server Instances
15.1 The Situation
15.2 Measuring and Tuning
15.3 Reaching 100 Percent With a Nonstandard Controller
15.4 Dealing with Latency
15.5 Simulation Code
Chapter 16: Case Study: Waiting-Queue Control
16.1 On the Nature of Queues and Buffers
16.2 The Architecture
16.3 Setup and Tuning
16.4 Derivative Control to the Rescue
16.5 Controller Alternatives
16.6 Simulation Code
Chapter 17: Case Study: Cooling Fan Speed
17.1 The Situation
17.2 The Model
17.3 Tuning and Commissioning
17.4 Closed-Loop Performance
17.5 Simulation Code
Chapter 18: Case Study: Controlling Memory Consumption in a Game Engine
18.1 The Situation
18.2 Problem Analysis
18.3 Architecture Alternatives
18.4 Results
18.5 Simulation Code
Chapter 19: Case Study Wrap-Up
19.1 Simple Controllers, Simple Loops
19.2 Measuring and Tuning
19.3 Staying in Control
19.4 Dealing with Noise
Theory
Chapter 20: The Transfer Function
20.1 Differential Equations
20.2 Laplace Transforms
20.3 Using the Laplace Transform to Solve Differential Equations
20.4 The Transfer Function
20.5 What If the Differential Equation Is Not Known?
Chapter 21: Block-Diagram Algebra and the Feedback Equation
21.1 Composite Systems
21.2 The Feedback Equation
21.3 Block-Diagram Algebra
21.4 Limitations and Importance of Transfer Function Methods
Chapter 22: PID Controllers
22.1 The Transfer Function of the PID Controller
22.2 The Canonical Form of the PID Controller
22.3 The General Controller
22.4 Proportional Droop Revisited
Chapter 23: Poles and Zeros
23.1 Structure of a Transfer Function
23.2 Effect of Poles and Zeros
23.3 Pole Positions and Response Patterns
23.4 What to Do About Delays
Chapter 24: Root Locus Techniques
24.1 Construction of Root Locus Diagrams
24.2 Root Locus or "Evans" Rules
24.3 Angle and Magnitude Criteria
24.4 Practical Issues
24.5 Examples
Chapter 25: Frequency Response and the Bode Plot
25.1 Frequency Response
25.2 The Bode Plot
25.3 A Criterion for Marginal Stability
25.4 Other Graphical Techniques
Chapter 26: Topics Beyond This Book
26.1 Discrete-Time Modeling and the z-Transform
26.2 State-Space Methods
26.3 Robust Control
26.4 Optimal Control
26.5 Mathematical Control Theory
Appendices
Glossary
Creating Graphs with Gnuplot
Basic Plotting
Plot Ranges
Inline Transformations
Plotting Simulation Results
Summary
Complex Numbers
Basic Operations
Polar Coordinates
The Complex Exponential
Further Reading
Recommended Reading
Additional References
Mathematical Prerequisites
Colophon