<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def random(target, element, seed=None, num_range=[0, 1]):
 r""" Create an array of random numbers of a specified size. Parameters target : OpenPNM Object The object which this model is associated with. This controls the length of the calculated array, and also provides access to other necessary properties. seed : int The starting seed value to send to Scipy's random number generator. The default is None, which means different distribution is returned each time the model is run. num_range : list A two element list indicating the low and high end of the returned numbers. """

    range_size = num_range[1] - num_range[0]
    range_min = num_range[0]
    if seed is not None:
        np.random.seed(seed)
    value = np.random.rand(target._count(element),)
    value = value*range_size + range_min
    return value