This book gives an introduction to basic fuzzy logic and Mamdani and Takagi-Sugeno fuzzy systems. The text shows how these can be used to control complex nonlinear engineering systems, while also also suggesting several approaches to modeling of complex engineering systems with unknown models. Finally, fuzzy modeling and control methods are combined in the book, to create adaptive fuzzy controllers, ending with an example of an obstacle-avoidance controller for an autonomous vehicle using modus ponendo tollens logic.