def METHOD_NAME(solar_filename):
    ''' Define problem parameters based on the Singh-Knueven paper '''
    data = {
        'T'    : 24,       # Number of time periods (hours) |T|
        'N'    : 50,       # Number of scenarios |\Omega|
        'eff'  : 0.9,      # Battery efficiency eta
        'eMax' : 960,      # Maximum energy that can be stored in the battery
        'eMin' : 192,      # Minimum energy that can be stored in the battery
        'rev'  : np.array( # Marginal revenue earned at each hour R_t
               [0.0189, 0.0172, 0.0155, 0.0148, 0.0146, 0.0151, 0.0173, 0.0219,
                0.0227, 0.0226, 0.0235, 0.0242, 0.0250, 0.0261, 0.0285, 0.0353, 
                0.0531, 0.0671, 0.0438, 0.0333, 0.0287, 0.0268, 0.0240, 0.0211]),
        'char' : 0.0256,   # Cost of    charging the battery
        'disc' : 0.0256,   # Cost of discharging the battery
        'cMax' : 480,      # Maximum    charging rate of battery
        'dMax' : 480,      # Maximum discharging rate of battery
        'eps'  : 0.05,     # Chance constraint violation probability
        'x0'   : 0.5 * 960,# Initial level of battery charge
    }
    data['prob'] = 1/data['N'] * np.ones(data['N']) # Scenario probabilities
    data['solar'] = np.loadtxt(solar_filename, delimiter=',')
    data['M'] = getBigM(data)
    return data