Skip to content

Commit 9d6dbdf

Browse files
committed
Update: print certainty values properly
1 parent 0427283 commit 9d6dbdf

File tree

3 files changed

+16
-9
lines changed

3 files changed

+16
-9
lines changed

main.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
if __name__ == "__main__":
3838
for Time in range(300):
3939
start_time = time.time()
40-
usedRules, FocusSet, RuleEvidence, loc, observed_world, rules, negrules, world, debuginput = NACE_Cycle(Time, FocusSet, RuleEvidence, loc, observed_world, rules, negrules, deepcopy(world))
40+
usedRules, FocusSet, RuleEvidence, loc, observed_world, rules, negrules, world, debuginput, values = NACE_Cycle(Time, FocusSet, RuleEvidence, loc, observed_world, rules, negrules, deepcopy(world))
4141
end_time = time.time()
4242
print("VALUES", world[VALUES], "FOCUS SET", FocusSet)
4343
elapsed_time = end_time - start_time
@@ -46,13 +46,13 @@
4646
if "debug" in sys.argv and debuginput != "" and debuginput not in ["w", "a", "s", "d", "l", "p"]:
4747
predworld = deepcopy(observed_world)
4848
score = 0.0
49-
values = []
5049
while True:
5150
print("\033[1;1H\033[2J")
5251
print("\033[0mImagined map:\033[97;43m")
5352
World_Print(predworld)
5453
print("\033[0m")
55-
print("score:", -score, "values", values)
54+
NACE_PrintScore(score)
55+
print("values:", values)
5656
d = input()
5757
score = 0.0
5858
if d == 'q':

nace.py

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,10 +60,10 @@ def NACE_Cycle(Time, FocusSet, RuleEvidence, loc, observed_world, rulesin, negru
6060
action = favoured_actions_for_revisit[0]
6161
plan = favoured_actions_for_revisit
6262
else:
63-
print("BABBLE", "score:", airis_score)
63+
print("BABBLE")
6464
action = random.choice(actions) #motorbabbling
6565
else:
66-
print("ACHIEVE" if airis_score == float("-inf") else "CURIOUS", Prettyprint_Plan(favoured_actions), "score:", -airis_score)#, rules)
66+
print("ACHIEVE" if airis_score == float("-inf") else "CURIOUS", Prettyprint_Plan(favoured_actions), end=" "); NACE_PrintScore(airis_score)
6767
action = favoured_actions[0]
6868
plan = favoured_actions
6969
else:
@@ -84,7 +84,7 @@ def NACE_Cycle(Time, FocusSet, RuleEvidence, loc, observed_world, rulesin, negru
8484
loc, newworld = World_Move(loc, deepcopy(oldworld), action)
8585
observed_world_old = deepcopy(observed_world)
8686
observed_world = World_FieldOfView(Time, loc, observed_world, newworld)
87-
predicted_world, _, __, ___ = NACE_Predict(Time, FocusSet, deepcopy(observed_world_old), action, rules)
87+
predicted_world, _, __, values = NACE_Predict(Time, FocusSet, deepcopy(observed_world_old), action, rules)
8888
if "manual" not in sys.argv:
8989
print(f"\033[0mWorld t={Time} beliefs={len(rules)}:\033[97;40m")
9090
World_Print(newworld)
@@ -109,7 +109,7 @@ def NACE_Cycle(Time, FocusSet, RuleEvidence, loc, observed_world, rulesin, negru
109109
newrules.add(rule)
110110
else:
111111
usedRules = newrules = newnegrules = rules
112-
return usedRules, FocusSet, RuleEvidence, loc, observed_world, newrules, newnegrules, newworld, debuginput
112+
return usedRules, FocusSet, RuleEvidence, loc, observed_world, newrules, newnegrules, newworld, debuginput, values
113113

114114
# Apply move to the predicted world model whereby we use the learned tules to decide how grid elements might change most likely
115115
def NACE_Predict(Time, FocusSet, oldworld, action, rules, customGoal = None):
@@ -370,3 +370,10 @@ def _RuleApplicable(scores, highscore, highesthighscore, rule):
370370
if highscore > 0.0 and scores.get(rule, 0.0) == highesthighscore:
371371
return True
372372
return False
373+
374+
#Print score value taking its semantics regarding its value range semantics for planning into account
375+
def NACE_PrintScore(score):
376+
if score >= 0.0 and score <= 1.0:
377+
print("certainty:", score)
378+
else:
379+
print("desired: True")

prettyprint.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,15 @@ def Prettyprint_rule(RuleEvidence, Hypothesis_TruthValue, rule):
3131
precons = actions_values_preconditions[2:]
3232
print("<(", end="")
3333
for i, x in enumerate(actions_values_preconditions[1]):
34-
name = "keys"
34+
name = "var" + str(i)
3535
print(f"{_prettyVarValue(name, x)}", end="")
3636
print(f" &| ", end="")
3737
for i, x in enumerate(precons):
3838
print(f"{_prettyTriplet(x)}", end="")
3939
if i != len(precons)-1:
4040
print(f" &| ", end="")
4141
scoreInc = f"<s_{rule[1][3][0]} --> scorePlus>"
42-
keys = f"<k_{rule[1][3][1]} --> keys>"
42+
keys = f"<k_{rule[1][3][1]} --> var0>"
4343
print(") &/", action, "=/> (" + _prettyTriplet(rule[1]) + " &| " + scoreInc + " &| " + keys + ")>.", Hypothesis_TruthValue(RuleEvidence[rule]))
4444

4545
def _prettyVarValue(name, value):

0 commit comments

Comments
 (0)