Suppose that the computer is playing a game against an opponent (which may be a computer or a human player), and it is the computer’s turn to make a move now. The computer runs the MINIMAX algorithm to figure out the utility of the current game state and to figure out the best move to make. Suppose that the search tree is finite and that the computer is the MAX player. The MINIMAX algorithm returns that the utility of the current board state is 5. When the game finally ends by reaching a terminal game state, what is the range of possible utility values for that game state? Assume that the computer keeps using the MINIMAX algorithm to decide all its moves, but do NOT assume anything about the opponent's strategy, or about the set of possible utility values used for terminal nodes in this game. (You can assume, however, that the opponent will always make legal moves in finite time, and that the opponent will not quit the game before it is over.) A range of possible utility values should be indicated as one of the following options: (-inf, +inf)

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Suppose that the computer is playing a game against an opponent (which may be a computer or a human player), and it is the computer’s turn to make a move now. The computer runs the MINIMAX algorithm to figure out the utility of the current game state and to figure out the best move to make. Suppose that the search tree is finite and that the computer is the MAX player. The MINIMAX algorithm returns that the utility of the current board state is 5.

When the game finally ends by reaching a terminal game state, what is the range of possible utility values for that game state? Assume that the computer keeps using the MINIMAX algorithm to decide all its moves, but do NOT assume anything about the opponent's strategy, or about the set of possible utility values used for terminal nodes in this game. (You can assume, however, that the opponent will always make legal moves in finite time, and that the opponent will not quit the game before it is over.)

A range of possible utility values should be indicated as one of the following options:

(-inf, +inf)

[lower_bound, +inf)

(-inf, upper_bound]

[lower_bound, upper_bound]

If your answer includes a lower bound or an upper bound, you should specify the exact numerical value of that lower bound or upper bound. Your answer should be as specific as possible (utility values will always be in the (-inf, +inf) range, but (-inf, +inf) may not always be the most specific answer).

Expert Solution
Step 1

In mathematics, particularly in order theory, an upper bound or majorant of a subset S of some preordered set (K, ≤) is an element of K that is greater than or equal to every element of S. Dually, a lower bound or minorant of S is defined to be an element of K that is less than or equal to every element of S. A set with an upper (respectively, lower) bound is said to be bounded from above or majorized (respectively bounded from below or minorized) by that bound. The terms bounded above (bounded below) are also used in the mathematical literature for sets that have upper (respectively lower) bounds.

The Lower and Upper Bound Theory provides a way to find the lowest complexity algorithm to solve a problem. Before understanding the theory, first, let’s have a brief look at what actually Lower and Upper bounds are.

  • Lower Bound –
    Let L(n) be the running time of an algorithm A(say), then g(n) is the Lower Bound of A if there exist two constants C and N such that L(n) >= C*g(n) for n > N. Lower bound of an algorithm is shown by the asymptotic notation called Big Omega (or just Omega).
  • Upper Bound –
    Let U(n) be the running time of an algorithm A(say), then g(n) is the Upper Bound of A if there exist two constants C and N such that U(n) <= C*g(n) for n > N. Upper bound of an algorithm is shown by the asymptotic notation called Big Oh(O) (or just Oh).

The definitions can be generalized to functions and even to sets of functions.

Given a function f with domain D and a preordered set (K, ≤) as codomain, an element y of K is an upper bound of f if y ≥ f(x) for each x in D. The upper bound is called sharp if equality holds for at least one value of x. It indicates that the constraint is optimal, and thus cannot be further reduced without invalidating the inequality.

Similarly, a function g defined on domain D and having the same codomain (K, ≤) is an upper bound of f, if g(x) ≥ f(x) for each x in D. The function g is further said to be an upper bound of a set of functions, if it is an upper bound of each function in that set.

The notion of lower bound for (sets of) functions is defined analogously, by replacing ≥ with ≤.

1. Lower Bound Theory:
According to the lower bound theory, for a lower bound L(n) of an algorithm, it is not possible to have any other algorithm (for a common problem) whose time complexity is less than L(n) for random input. Also, every algorithm must take at least L(n) time in the worst case. Note that L(n) here is the minimum of all the possible algorithms, of maximum complexity.
The Lower Bound is very important for any algorithm. Once we calculated it, then we can compare it with the actual complexity of the algorithm and if their order is the same then we can declare our algorithm as optimal. So in this section, we will be discussing techniques for finding the lower bound of an algorithm.

2. Upper Bound Theory:
According to the upper bound theory, for an upper bound U(n) of an algorithm, we can always solve the problem at most U(n) time. Time taken by a known algorithm to solve a problem with worse case input gives us the upper bound.

trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Eight puzzle problem
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education