import sys, string

if len(sys.argv)==1:
	print 'Usage:'
	sys.exit(0)

# Parses the joint angles from the current policy
def parsePolicy (line, policy):
    sub = line[line.find(':')+1:-2]
    t = sub.split(',')
    for s in t:
        if len(s) == 0:
            continue
        policy.append(float(s))

# The mean squared difference between two policies
def msd (origPolicy, currentPolicy):
    ssd = 0
    for i in range(1,len(origPolicy)):
        ssd += pow(origPolicy[i] - currentPolicy[i],2)
    ssd /= len(origPolicy)
    return ssd
        
        
origPolicy = []
currentPolicy = []

f = open(sys.argv[1], "r")

for line in f:
    if line.find('Policy 0:') == -1:
        continue

    if len(origPolicy) == 0:
        parsePolicy(line,origPolicy)
        continue

    parsePolicy(line,currentPolicy)
    meanSquaredDiff = msd(origPolicy,currentPolicy)
    print meanSquaredDiff
    del currentPolicy[:]



