## Problem Description and Formulation

The problem requires maximizing the objective function: $9 \times \text{corn cobs} + 7 \times \text{strawberries} + 1 \times \text{milkshakes}$.

The problem involves the following variables:
- Corn cobs
- Strawberries
- Milkshakes

With the given attributes:
- `r0`: Healthiness rating
  - Description: Healthiness rating
  - Upper bound: 292
  - Healthiness ratings:
    - Corn cobs: 0.03
    - Strawberries: 0.93
    - Milkshakes: 0.14

Subject to the following constraints:
1. $0.03 \times \text{corn cobs} + 0.14 \times \text{milkshakes} \geq 47$
2. $0.93 \times \text{strawberries} + 0.14 \times \text{milkshakes} \geq 61$
3. $0.03 \times \text{corn cobs} + 0.93 \times \text{strawberries} \geq 92$
4. $0.03 \times \text{corn cobs} + 0.93 \times \text{strawberries} + 0.14 \times \text{milkshakes} \geq 79$
5. $0.93 \times \text{strawberries} + 0.14 \times \text{milkshakes} \leq 185$
6. $0.03 \times \text{corn cobs} + 0.14 \times \text{milkshakes} \leq 145$
7. $0.03 \times \text{corn cobs} + 0.93 \times \text{strawberries} \leq 163$
8. $0.03 \times \text{corn cobs} + 0.93 \times \text{strawberries} + 0.14 \times \text{milkshakes} \leq 163$

## Gurobi Code Formulation

```python
import gurobi

def solve_optimization_problem():
    # Create a new Gurobi model
    model = gurobi.Model()

    # Define variables
    corn_cobs = model.addVar(lb=0, name="corn_cobs", vtype=gurobi.GRB.CONTINUOUS)
    strawberries = model.addVar(lb=0, name="strawberries", vtype=gurobi.GRB.CONTINUOUS)
    milkshakes = model.addVar(lb=0, name="milkshakes", vtype=gurobi.GRB.CONTINUOUS)

    # Objective function: Maximize 9*corn_cobs + 7*strawberries + 1*milkshakes
    model.setObjective(9*corn_cobs + 7*strawberries + 1*milkshakes, gurobi.GRB.MAXIMIZE)

    # Constraints
    model.addConstr(0.03*corn_cobs + 0.14*milkshakes >= 47, name="health_rating_cc_mc")
    model.addConstr(0.93*strawberries + 0.14*milkshakes >= 61, name="health_rating_s_mc")
    model.addConstr(0.03*corn_cobs + 0.93*strawberries >= 92, name="health_rating_cc_s")
    model.addConstr(0.03*corn_cobs + 0.93*strawberries + 0.14*milkshakes >= 79, name="health_rating_all")
    model.addConstr(0.93*strawberries + 0.14*milkshakes <= 185, name="health_rating_s_mc_upper")
    model.addConstr(0.03*corn_cobs + 0.14*milkshakes <= 145, name="health_rating_cc_mc_upper")
    model.addConstr(0.03*corn_cobs + 0.93*strawberries <= 163, name="health_rating_cc_s_upper")
    model.addConstr(0.03*corn_cobs + 0.93*strawberries + 0.14*milkshakes <= 163, name="health_rating_all_upper")

    # Optimize the model
    model.optimize()

    # Print the solution
    if model.status == gurobi.GRB.OPTIMAL:
        print("Optimal Solution:")
        print(f"Corn Cobs: {corn_cobs.varValue}")
        print(f"Strawberries: {strawberries.varValue}")
        print(f"Milkshakes: {milkshakes.varValue}")
        print(f"Objective: {model.objVal}")
    else:
        print("The model is infeasible.")

solve_optimization_problem()
```