예제 #1
0
def ask_player_mode(number, chips, bet_value, model):
    print "Player" + str(number) + " Mode : "
    print " 1 : Manual player (You play)"
    print " 2 : Random Agent"
    print " 3 : All-In Agent"
    print " 4 : Bucket_Agent"
    print " 5 : Bayesian Agent ( with pre-computed model )"
    print " 6 : Learning Agent "
    print " 7 : Regret-Minimization Agent"
    x = raw_input(" What mode ? [1-7] : ")
    gamer = None
    if x == "1":
        gamer = player("player" + str(number), chips)
    elif x == "2":
        gamer = random_agent("player" + str(number), chips)
    elif x == "3":
        gamer = All_In_Agent("player" + str(number), chips)
    elif x == "4":
        gamer = Agent_Bucket("player" + str(number), chips)
    elif x == "5":
        gamer = bayesian("player" + str(number), chips, list(model))
    elif x == "6":
        gamer = LearningAgent("player" + str(number), chips, 2)
    elif x == "7":
        gamer = Regret_Agent("player" + str(number), chips, bet_value)
    else:
        return False
    return gamer
예제 #2
0
파일: display.py 프로젝트: 6/CS-Projects
    def handleCmd4(self):
        # Loading
        load = self.canvas.create_text(430, 10, text="Loading...")
        dep = tkSimpleDialog.askstring(
            "Naive Bayes", "Please specify dependent variable (browser, location, time, or OS):"
        )

        if dep == False or dep == None or self.dataSet == False:
            print "User did not specify a variable, or no data set is loaded"
            self.canvas.delete(load)
            return

        dep = dep.lower()
        if dep != "browser" and dep != "location" and dep != "time" and dep != "os":
            doneMessage = self.canvas.create_text(370, 30, text="Invalid variable name.")
            tkMessageBox.showinfo(title="1R Decision Tree", message="Invalid variable name.")
            self.canvas.delete(doneMessage)
            self.canvas.delete(load)
            return
        else:
            doneMessage = self.canvas.create_text(350, 30, text="Loaded Bayes classifier: " + dep + " prediction.")

        self.bayes = bayesian.bayesian(self.dataSet, self.dataSet, dep)
        self.canvas.delete(load)
        self.canvas.delete(doneMessage)
예제 #3
0
파일: display.py 프로젝트: 6/CS-Projects
    def handleCmd6(self):
        # Loading
        load = self.canvas.create_text(430, 10, text="Loading...")
        if self.dataSet == False:
            print "No data set loaded"
            self.canvas.delete(load)
            return

        # Get Training Set (Open Dialog)
        tkMessageBox.showinfo(title="Train and Test (Bayes)", message="Please select a training set.")

        fobj = tkFileDialog.askopenfile(parent=self.root, mode="rb", title="Choose a data file")
        if fobj == None:
            print "User did not select a file"
            self.canvas.delete(load)
            return

        csData = CSLogData.CSLogDataClass(fobj, True)
        csData.cleanData()

        # just close the file for now
        print "closing file"
        fobj.close()

        # Construct metadata
        metadata = [
            ["ipLocation", {"dict": False, "tslate": True, "vals": {0: "off campus", 1: "on campus"}}],
            ["dateTime", {"dict": False, "tslate": False, "vals": False}],
            ["time", {"dict": False, "tslate": False, "vals": False}],
            [
                "referrer",
                {"dict": False, "tslate": True, "vals": {0: "no referrer", 1: "from colby", 2: "outside source"}},
            ],
            ["statusCode", {"dict": False, "tslate": False, "vals": False}],
            ["pageSize", {"dict": False, "tslate": False, "vals": False}],
            ["httpVersion", {"dict": False, "tslate": True, "vals": {10: "HTTP/1.0", 11: "HTTP/1.1"}}],
            ["accessedPage", {"dict": True, "tslate": False, "vals": False}],
            ["userAgent", {"dict": True, "tslate": False, "vals": False}],
        ]
        self.trainSet = DataSet.DataSet(csData.lines, metadata)
        self.trainSet.toMatrix()

        # Get dependent variable
        dep = tkSimpleDialog.askstring(
            "Naive Bayes", "Please specify dependent variable (browser, location, time, or OS):"
        )

        if dep == False or self.dataSet == False:
            print "User did not specify a variable, or no data set is loaded"
            self.canvas.delete(load)
            return

        dep = dep.lower()
        if dep != "browser" and dep != "location" and dep != "time" and dep != "os":
            doneMessage = self.canvas.create_text(370, 30, text="Invalid variable name.")
            tkMessageBox.showinfo(title="1R Decision Tree", message="Invalid variable name.")
            self.canvas.delete(doneMessage)
            self.canvas.delete(load)
            return
        else:
            doneMessage = self.canvas.create_text(350, 30, text="Loaded Bayes classifier: " + dep + " prediction.")

        # Use Bayesian.py (add dataset2 loc and so on)
        self.bayes = bayesian.bayesian(self.dataSet, self.trainSet, dep)

        self.canvas.delete(load)
예제 #4
0
파일: run.py 프로젝트: TeamPi/AlzheimersML
from analysis import analyze
sys.path.insert(0, './ridge')
from ridge import ridge
sys.path.insert(0, './lasso')
from lasso import lasso
sys.path.insert(0, './bayesian')
from bayesian import bayesian
sys.path.insert(0, './SVR')
from svr import svr

start = time.time()
ridge(sys.argv[1],sys.argv[2])
ridge_end = time.time()
lasso(sys.argv[1],sys.argv[2])
lasso_end = time.time()
bayesian(sys.argv[1],sys.argv[2])
bayesian_end = time.time()
svr(sys.argv[1],sys.argv[2])
svr_end = time.time()

print "Ridge Results"
print "Running Time: "+str(ridge_end-start)+" seconds"
analyze("ridge_out.csv")
print "---"
print "Lasso Results"
print "Running Time: "+str(lasso_end-ridge_end)+" seconds"
analyze("lasso_out.csv")
print "---"
print "Bayesian Results"
print "Running Time: "+str(bayesian_end-lasso_end)+" seconds"
analyze("bayesian_out.csv")