Carlo Tomasi
The Iris Einheuser Professor of Computer Science, Duke University. Ph.D. - Carnegie Mellon University.


Peter Stoica
Professor of Systems Modeling at Uppsala University, Ph.D. - Polytechnic Institute of Bucharest, Romania.


Dimitri Bertsekas
McAfee Professor at the Department of Electrical Engineering and Computer Science at MIT, and also a Fulton Professor of Computational Decision Making at Arizona State University. Ph.D. MIT.

Note: the following books are not recommended by Professor Bertsekas. They are books that have been used as reference texts in one/some courses he has taught.

Optimization is a central concept in computer science and electrical engineering. It refers to the process of finding the best solution to a problem or maximizing a certain objective. This can involve finding the optimal solution to a problem within a set of constraints, or minimizing the amount of time or resources needed to reach a solution.

In computer science, optimization is used in a variety of areas, including algorithms, data structures, and computer architecture. In algorithms, optimization involves finding the most efficient way to solve a problem, whether it be sorting data, finding the shortest path between two points, or recognizing patterns in data. Data structures are used to store and organize data in a way that enables efficient retrieval and manipulation. Optimization in data structures involves designing and implementing data structures that are optimized for specific use cases, such as searching, sorting, or storing data in memory.

Computer architecture is the design of computer systems, including the hardware and software components. Optimization in computer architecture involves designing computer systems that are optimized for performance, power consumption, and cost.

In electrical engineering, optimization is used in a variety of areas, including control systems, communications, and power systems. In control systems, optimization involves finding the best control strategy to regulate the behavior of a system, such as a robot or a power grid. In communications, optimization is used to design efficient communication networks and protocols, such as wireless networks and satellite communication systems. The goal is to maximize data transfer rates, minimize delay, and reduce the likelihood of errors. In power systems, optimization is used to design efficient electrical power systems, such as power grids, renewable energy systems, and energy storage systems. The goal is to minimize the cost of energy production, minimize the amount of energy lost in transmission, and improve the reliability and stability of the power grid.

The field of optimization is rapidly evolving, driven by the increasing complexity of problems and the need for more efficient and effective solutions. Researchers and practitioners in computer science and electrical engineering are exploring new techniques and methods for solving optimization problems, including machine learning, artificial intelligence, and mathematical programming.

In recent years, optimization has become increasingly important as the amount of data and computational power available to researchers and practitioners has grown. The ability to process and analyze large amounts of data has allowed researchers and practitioners to tackle increasingly complex problems and find more effective solutions.

The field of optimization is interdisciplinary, drawing from areas such as mathematics, computer science, electrical engineering, and physics. Researchers and practitioners in these fields work together to develop new optimization techniques, algorithms, and tools that can be used to solve complex problems and find more efficient and effective solutions. The goal is to advance the state of the art in optimization and contribute to the development of more efficient and effective systems and technologies.