как я могу заставить агента прыгнуть с крошечной вероятностью? - PullRequest
0 голосов
/ 12 ноября 2018

так, как будто я разместил это выше. я пытаюсь заставить агента прыгнуть с крошечной вероятностью, есть предложения? Благодарю. Я думал об импорте библиотеки черепах и использовании методов, описанных в ней, для создания функции, основанной на turtle.goto (x, y), но безуспешно.

 import Bug
 import random

 nBugs = eval(input("How many bugs? "))
 bugList = []
 worldXSize = eval(input("X Size of the world? "))
 worldYSize = eval(input("Y Size of the world? "))
 length = eval(input("Length of the simulation in cycles? "))


 for i in range(nBugs):
     aBug = Bug.Bug(i, random.randint(0, worldXSize - 1),
               random.randint(0, worldYSize - 1),
               worldXSize, worldYSize)
     bugList.append(aBug)

 for t in range(length):

     random.shuffle(bugList)

     for aBug in bugList:
         aBug.randomWalk()
         aBug.reportPosition()

и вот код Bug.py (тот, который я забыл добавить ранее, извините за это)

import random


class Bug:
    def __init__(self, number, xPos, yPos, placement, worldXSize=80, worldYSize=80):
    # the environment
        self.number = number
        self.worldXSize = worldXSize
        self.worldYSize = worldYSize
    # the bug
        self.xPos = xPos
        self.yPos = yPos
        print("Bug number ", self.number,
          " has been created at ", self.xPos, ", ", self.yPos)

    # the action
    def randomWalk(self):
        self.xPos += randomMove()
        self.yPos += randomMove()
        self.xPos = (self.xPos + self.worldXSize) % self.worldXSize
        self.yPos = (self.yPos + self.worldYSize) % self.worldYSize
    # report

    def reportPosition(self):
        print("Bug number ", self.number, " moved to X = ",
          self.xPos, " Y = ", self.yPos)

    def placement(self):
         self.xPos = self.xPos % self.worldXSize + randomMove()

def randomMove():
    return random.randint(-1, 1)
...