\chapter*{Foreword}

%\section*{Goals and Prerequisites}

\noi This book is designed for use as a primary text in an introductory course, or sequence of courses, on linear and nonlinear programming. Its intended audience consists of undergraduate
students who have completed both a standard single-variable calculus sequence, along
with an introductory linear algebra course. Although some background knowledge of multivariable calculus (primarily partial derivatives) and some experience with formal proof writing are helpful, they are by no means essential.

\newpar
The book itself is organized into two parts, with the first focusing on linear programming and the second on nonlinear programming. Following these two parts are four appendices, which contain course projects, Maple resources, and a summary of important linear algebra facts.

\newpar
{\underbar{\textbf{Focus on Linear Algebra}}

\newpar A primary goal of this book is to ``bridge the gap,'' so to speak, which separates the
two primary classes of textbooks on linear and nonlinear programming
currently available to students. One consists
of those management science books that lack the level of mathematical detail and rigor
found in this text. Typically, they assume little to no
linear algebra background knowledge on the part of the reader. Texts in the second class are better suited for
graduate level courses on mathematical programming. In simple terms, they are written at ``too high a level'' for this book's intended audience.

\newpar
Undergraduate students who use this book will be exposed early to topics from introductory linear algebra, such as properties of invertible matrices and facts regarding nullspaces. Eigenvalues, of course, are an essential for the classification of quadratic forms. Most important, however, is the extent to which partitioned matrices play a central role in developing major ideas. In particular, the reader discovers in Section 2.4 that the simplex algorithm may be viewed entirely in terms of multiplication of such matrices. This perspective from which to view the algorithm provides streamlined approaches for constructing the revised simplex method, developing duality theory, and approaching the process of sensitivity analysis.

\newpar
Some linear algebra topics arising in this text are not ones usually encountered by students in an introductory course. Most notable are certain properties of the matrix transpose, the Spectral Theorem, and facts regarding matrix norms. As these topics arise in the text, brief digressions summarize key ideas, and the reader is referred to appropriate locations in the appendices.

\newpar
{\underbar{\textbf{Maple}}

\newpar As the title indicates, Maple is the software of choice for this text. While many practitioners in the field of mathematical programming do not consider Maple well-suited for large-scale problems, this software is ideal in terms of its ability to meet the pedagogical goals of this text and is accessible to students at over 90\% of advanced research institutions worldwide. By utilizing Maple's symbolic computing components, its numeric capabilities, its graphical versatility, and its intuitive programming structures, the student who uses this text should acquire a deep conceptual understanding of major mathematical programming principles, along with the ability to solve moderately sized real-world applications.

\newpar
The text does not assume prior Maple experience on the part of its reader. The Maple novice should first read Appendix C, Getting Started with Maple. It provides a sufficient amount of instruction for the reader unfamiliar with this software, but no more than that needed to start reading Chapter 1. Maple commands are then introduced throughout the book, as the need arises, and a summary of all such commands is found in Appendix D. Finally, sample Maple work sheets are provided in the text itself and are also accessible online at
\texttt{www.lp-nlp-with-maple.org}.

\newpar
{\underbar{\textbf{Waypoints}}

\newpar Any mathematics text should strive to engage its reader. This book is no exception, and, hopefully, it achieves success in this regard. Interspersed throughout are  ``Waypoints,'' where the reader is asked to perform a simple computation or to answer a brief question, either of which is intended
to assess his or her understanding. Such Waypoints are meant to facilitate the ``hands-on,'' or interactive, learning approach suggested by this book's title. The instructor can utilize them in various ways, for example, by using them as a means
to intersperse lecture with small-group discussions or as an additional source of text exercises.

\newpar
{\underbar{\textbf{Projects}}

\newpar In addition to Waypoints and numerous exercises, both computational and conceptual in nature, this text includes six substantial projects, which are given in Appendix A. Three of the six focus on linear programming models: two transportation-related problems and one integer linear programming problem on work scheduling. The remaining three focus on nonlinear programming: a linear classifier problem for cancer diagnosis, the Markowitz portfolio model, and a bimatrix game theory representation of a predator-prey habitat. These six projects provide the student opportunities to investigate real-world applications more substantial than those found in the exercises. They are well-suited for use in a class in which students complete team projects designed to reinforce their problem solving and mathematical communication skills. Maple is indispensable for addressing the problems posed by the projects, and students can easily produce reports consisting of Maple work sheets that combine the software's text- and math-input environments.

\newpar
{\underbar{\textbf{Possible Course Outlines}}

\newpar There are several different possible outlines for using this book as a primary course text, depending upon course goals and instructional time devoted to the various topics. In terms of linear programming, core topics include Chapter 1, Sections 2.1-2.4, Chapter 3, Sections 4.1-4.2, and Section 5.1. These cover the essentials of linear programming, basic applications, duality, sensitivity analysis, and integer linear programming via the branch and bound method. Sections 2.5, 4.3, and 5.2 address optional topics, namely the interior point algorithm, the dual simplex method, and the cutting plane algorithm, respectively. When considering which of these three additional topics to cover, however, the instructor should bear in mind that the cutting plane algorithm requires use of the dual simplex method.

\newpar
For a follow-up course on nonlinear programming, core topics include Chapter 6, Sections 7.1-7.2, and Sections 8.1-8.2. These cover the basics of unconstrained optimization, the Steepest Descent Method, Newton's Method, the Karush-Kuhn-Tucker Necessary Conditions Theorem, and convex nonlinear programming. Optional topics found in Sections 7.3
and 8.3-8.5 include
the Levenberg-Marquardt Algorithm, saddle point criteria, quadratic programming, and sequential quadratic programming, respectively.

\newpar
{\underbar{\textbf{Acknowledgments}}

\newpar I am extremely grateful to the many individuals and students who provided me assistance as I wrote this book. Not having previously undertaken such a task, I sought general
 advice regarding textbook authorship from numerous colleagues: Edward Aboufadel, Matthew Boelkins, Jonathan Hodge, and Theodore Sundstrom (all of Grand Valley State University); Larry Knop (Hamilton College) and Anne Young (Loyola College of Maryland). My colleague, Clark Wells (Grand Valley State University), has been an invaluable source of advice with regard to the teaching of mathematical programming, and I have benefited greatly from our many conversations over the years. Moreover, numerous students helped me improve portions of the manuscript as I piloted it
in classes at Grand Valley State University.

\newpar
My family exhibited extraordinary patience over the four years I devoted to writing this text, and I am sure they are relieved the process is now complete. Finally, I am deeply indebted to Drs. Kost Elisevich, Brien Smith, and Timothy Thoits.

\endinput 