Beispiel #1
0
def transModel(s):
    if s == 'a':
        return dist.deltaDist('a')
    elif s == 'z':
        return dist.deltaDist('z')
    else:
        return dist.DDist({s:0.5, nextChar(s):0.25, prevChar(s):0.25})
def transModel(s):
    distance = FORWARD_VELOCITY * 0.1
    result1 = (float(s) / numStates) * (xMax - xMin) + distance
    result2 = (float(s+1) / numStates) * (xMax - xMin) + distance

    state1 = clip(int(float(result1) * numStates / (xMax - xMin)), 0, numStates-1)
    state2 = clip(int(float(result2) * numStates / (xMax - xMin)), 0, numStates-1)

    prob = float(distance) / (xMax - xMin) * numStates
    return dist.mixture(dist.deltaDist(state1), dist.deltaDist(state2), 1.0 - (prob % 1.0))
def transModel(s):
    distance = FORWARD_VELOCITY * 0.1
    result1 = (float(s) / numStates) * (xMax - xMin) + distance
    result2 = (float(s + 1) / numStates) * (xMax - xMin) + distance

    state1 = clip(int(float(result1) * numStates / (xMax - xMin)), 0,
                  numStates - 1)
    state2 = clip(int(float(result2) * numStates / (xMax - xMin)), 0,
                  numStates - 1)

    prob = float(distance) / (xMax - xMin) * numStates
    return dist.mixture(dist.deltaDist(state1), dist.deltaDist(state2),
                        1.0 - (prob % 1.0))
def obsModel(s):
    if numObservations < 10:
        return dist.mixture(dist.deltaDist(ideal[s]),
                            dist.uniformDist(range(numObservations)),
                            float(numObservations) / 15.)
    return dist.mixture(
        dist.triangleDist(ideal[s],
                          int(numObservations / 6.0) + 2),
        dist.uniformDist(range(numObservations)), 0.8)
Beispiel #5
0
def teleportModel2(state):
    current_d = dist.deltaDist(state)
    random_d = dist.uniformDist(range(numStates))
    return dist.mixture(current_d, random_d, 0.7)
Beispiel #6
0
def obsModelA(state):
    zero_dist = dist.uniformDist([0])
    return dist.mixture(dist.deltaDist(ideal[state]), zero_dist, 0.7)
Beispiel #7
0
def obsModelD(state):
    ideal_d = dist.deltaDist(ideal[state])
    other_d = dist.deltaDist(9 - ideal[state])
    return dist.mixture(ideal_d, other_d, 0.5)
Beispiel #8
0
def teleportModel(state):
    right_d = dist.deltaDist(min(state+1, numStates-1))
    random_d = dist.uniformDist(range(numStates))
    return dist.mixture(right_d, random_d, 0.7)
Beispiel #9
0
def perfectObsModel(state):
    return dist.deltaDist(ideal[state])
Beispiel #10
0
def obsModelB(state):
    random_dist = dist.squareDist(0, 10)
    return dist.mixture(dist.deltaDist(ideal[state]), random_dist, 0.7)
Beispiel #11
0
def resetModel(state):
    nominal = moveRightModel(state)
    return dist.mixture(dist.deltaDist(0), nominal, 0.3)
Beispiel #12
0
def resetModel2(state):
    nominal = dist.deltaDist(state)
    return dist.mixture(dist.deltaDist(0), nominal, 0.3)
Beispiel #13
0
def perfectObsModel(state):
    return dist.deltaDist(ideal[state])
Beispiel #14
0
def obsModel(s):
    if numObservations < 10:
        return dist.mixture(dist.deltaDist(ideal[s]), dist.uniformDist(range(numObservations)), float(numObservations) / 15.)
    return dist.mixture(dist.triangleDist(ideal[s], int(numObservations / 6.0) + 2), dist.uniformDist(range(numObservations)), 0.8)
Beispiel #15
0
def naiveTransModel(s):
    return dist.deltaDist(clip(s+1, 0, numStates-1))
Beispiel #16
0
def naiveObsModel(s):
    return dist.deltaDist(ideal[s])
Beispiel #17
0
    return dist.uniformDist(range(numObservations))

def obsModel(s):
    pass # your code here


def naiveTransModel(s):
    return dist.deltaDist(clip(s+1, 0, numStates-1))

transModel = models.makeTransModel(FORWARD_VELOCITY, xMax, xMin, numStates)

def confidentLocation(belief):
    return (-1,False) #your code here

uniformInitDist = dist.squareDist(0, numStates)
spikedInitDist = dist.deltaDist(24)

INIT_DIST_TO_USE = uniformInitDist
OBS_MODEL_TO_USE = naiveObsModel
TRANS_MODEL_TO_USE = naiveTransModel

######################################################################
###
###          Brain Methods -- do not change the following code
###
######################################################################

# Robot's Ideal Readings
ideal = idealReadings.computeIdealReadings(WORLD_FILE, xMin, xMax, robotY, numStates, numObservations)

def getParkingSpot(ideal):
Beispiel #18
0
def resetModel2(state):
    nominal = dist.deltaDist(state)
    return dist.mixture(dist.deltaDist(0), nominal, 0.3)
Beispiel #19
0
def teleportModel2(state):
    nominal = dist.deltaDist(state)
    return dist.mixture(dist.uniformDist(range(numStates)), nominal, 0.3)
Beispiel #20
0
def resetModel(state):
    nominal = moveRightModel(state)
    return dist.mixture(dist.deltaDist(0), nominal, 0.3)
Beispiel #21
0
def obsModelB(state):
    random_dist = dist.squareDist(0, 10)
    return dist.mixture(dist.deltaDist(ideal[state]), random_dist, 0.7)
Beispiel #22
0
def teleportModel2(state):
    nominal = dist.deltaDist(state)
    return dist.mixture(dist.uniformDist(range(numStates)), nominal,0.3)
Beispiel #23
0
def obsModelC(state):
    return dist.deltaDist(9 - ideal[state])
def transModel(s):
    r = (FORWARD_VELOCITY / 10.0) * numStates / (xMax - xMin)
    return dist.mixture(dist.deltaDist(clip(s + int(r), 0, numStates - 1)),
                        dist.deltaDist(clip(s + int(r) + 1, 0, numStates - 1)),
                        int(r) + 1 - r)
Beispiel #25
0
def obsModelD(state):
    ideal_d = dist.deltaDist(ideal[state])
    other_d = dist.deltaDist(9 - ideal[state])
    return dist.mixture(ideal_d, other_d, 0.5)
Beispiel #26
0
def obsModelA(state):
    zero_dist = dist.uniformDist([0])
    return dist.mixture(dist.deltaDist(ideal[state]), zero_dist, 0.7)
Beispiel #27
0
def moveRightModel(state):
    return dist.deltaDist(min(state + 1, numStates - 1))
Beispiel #28
0
def obsModelC(state):
    return dist.deltaDist(9 - ideal[state])
Beispiel #29
0
def teleportModel(state):
    right_d = dist.deltaDist(min(state + 1, numStates - 1))
    random_d = dist.uniformDist(range(numStates))
    return dist.mixture(right_d, random_d, 0.7)
Beispiel #30
0
def moveRightModel(state):
    return dist.deltaDist(min(state+1, numStates-1))
Beispiel #31
0
def resetModel(state):
    right_d = dist.deltaDist(min(state + 1, numStates - 1))
    zero_d = dist.deltaDist(0)
    return dist.mixture(right_d, zero_d, 0.7)
Beispiel #32
0
def resetModel(state):
    right_d = dist.deltaDist(min(state+1, numStates-1))
    zero_d = dist.deltaDist(0)
    return dist.mixture(right_d, zero_d, 0.7)
Beispiel #33
0
def teleportModel2(state):
    current_d = dist.deltaDist(state)
    random_d = dist.uniformDist(range(numStates))
    return dist.mixture(current_d, random_d, 0.7)
Beispiel #34
0
def resetModel2(state):
    current_d = dist.deltaDist(state)
    zero_d = dist.deltaDist(0)
    return dist.mixture(current_d, zero_d, 0.7)
Beispiel #35
0
def resetModel2(state):
    current_d = dist.deltaDist(state)
    zero_d = dist.deltaDist(0)
    return dist.mixture(current_d, zero_d, 0.7)
Beispiel #36
0
def obsModelA(state):
    return dist.mixture(dist.deltaDist(ideal[state]), dist.deltaDist(0), 0.7)
Beispiel #37
0
def obsModelB(state):
    return dist.mixture(dist.deltaDist(ideal[state]),dist.uniformDist(range(10)),0.7)
Beispiel #38
0
def obsModelA(state):
    return dist.mixture(dist.deltaDist(ideal[state]),dist.deltaDist(0),0.7)
Beispiel #39
0
def obsModelB(state):
    return dist.mixture(dist.deltaDist(ideal[state]),
                        dist.uniformDist(range(10)), 0.7)