A hospital performs 3 types of operations. The first type takes 30 minutes, and they charge $900 for it. The second type takes 1 hour, and they charge $1350 for it. The third operation takes 2 hours, and they charge $1800 for it. The hospital can schedule up to 25 total operations per day. Moreover, they have 2 operating rooms, each of which can be used for 12 hours per day. Determine how many of each type of operation the hospital would perform to maximize its revenue.

To determine the optimal number of each type of operation that the hospital should perform to maximize revenue, we can set up a linear programming problem.

Let's define the decision variables:
X1 = Number of first type operations
X2 = Number of second type operations
X3 = Number of third type operations

We need to maximize the revenue, which can be expressed as the objective function:
Maximize: Z = 900X1 + 1350X2 + 1800X3

Subject to the following constraints:
1. The total number of operations cannot exceed 25: X1 + X2 + X3 ≤ 25
2. The total time for all operations cannot exceed the available operating room time: 0.5X1 + X2 + 2X3 ≤ 24
3. The number of operations of each type should be non-negative: X1 ≥ 0, X2 ≥ 0, X3 ≥ 0

Now, we can solve this linear programming problem using any optimization software or solver to find the optimal values of X1, X2, and X3.