Exemple #1
0
def run_ratio(ratio, radii, tracking, coverage=0.1, T=120, dt=1, fname=None):
    '''Runs the specified target-robot ratio for the specified environment radii'''
    # Run simulation for each radius
    observations = []
    for i, R in enumerate(radii):
        m_max, n_max = 10, 20
        if ratio <= 1:
            m = m_max
            n = int(ratio * m_max)
        else:
            n = n_max
            m = int(n_max / ratio)
        print '\tSim {} of {}: n = {}, m = {}'.format(i + 1, len(radii), n, m)
        sim = Simulation(m, n, T, dt, R, tracking=tracking)
        sim.run(vis='', fname=fname)
        observations.append(sim.average_observations(normalize=True))
    return radii, observations
Exemple #2
0
def main():
    # Read arguments
    args = parser().parse_args()
    seed(args.seed)
    # Run once
    if not args.run_all:
        sim = Simulation(args.m,
                         args.n,
                         args.t,
                         args.dt,
                         args.r,
                         tracking=args.tracking)
        sim.run(vis=args.visualization, fname=args.output_file)
        print 'observations = {}'.format(
            sim.average_observations(normalize=True))
    # Run ratios
    else:
        ratios = [1 / 5., 1 / 2., 1, 4, 10]
        run_ratios(ratios, tracking=args.tracking, fname=args.output_file)