TAG: Formula testing code
This commit is contained in:
@ -68,13 +68,11 @@ class Copycat(object):
|
|||||||
def run(self, initial, modified, target, iterations, testAdjFormulas=False):
|
def run(self, initial, modified, target, iterations, testAdjFormulas=False):
|
||||||
self.workspace.resetWithStrings(initial, modified, target)
|
self.workspace.resetWithStrings(initial, modified, target)
|
||||||
|
|
||||||
# I (LSaldyt) am very sorry for writing code like this.
|
|
||||||
# It will soon be deleted. I promise.
|
|
||||||
|
|
||||||
if testAdjFormulas:
|
if testAdjFormulas:
|
||||||
formulas = self.temperature.adj_formulas()
|
formulas = self.temperature.adj_formulas()
|
||||||
else:
|
else:
|
||||||
formulas = ['original']
|
formulas = ['inverse']
|
||||||
|
#formulas = ['entropy']
|
||||||
|
|
||||||
formulaList = []
|
formulaList = []
|
||||||
for formula in formulas:
|
for formula in formulas:
|
||||||
|
|||||||
@ -1,7 +1,6 @@
|
|||||||
import math
|
import math
|
||||||
|
|
||||||
# Alternate formulas for getAdjustedProbability
|
# Alternate formulas for getAdjustedProbability
|
||||||
|
|
||||||
def _original(temp, prob):
|
def _original(temp, prob):
|
||||||
if prob == 0 or prob == 0.5 or temp == 0:
|
if prob == 0 or prob == 0.5 or temp == 0:
|
||||||
return prob
|
return prob
|
||||||
@ -33,7 +32,7 @@ def _inverse_prob(temp, prob):
|
|||||||
class Temperature(object):
|
class Temperature(object):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.reset()
|
self.reset()
|
||||||
self.adjustmentType = 'original'
|
self.adjustmentType = 'inverse'
|
||||||
self._adjustmentFormulas = {
|
self._adjustmentFormulas = {
|
||||||
'original' : _original,
|
'original' : _original,
|
||||||
'entropy' : _entropy,
|
'entropy' : _entropy,
|
||||||
|
|||||||
@ -40,14 +40,11 @@ def main():
|
|||||||
originalCount = originalCounts[answer]
|
originalCount = originalCounts[answer]
|
||||||
if originalCount != 0:
|
if originalCount != 0:
|
||||||
chi2 += (count + originalCount) ** 2 / originalCount
|
chi2 += (count + originalCount) ** 2 / originalCount
|
||||||
print((formula, chi2))
|
print('Chi^2 value for {}:{}'.format(formula, chi2))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#for answer, d in sorted(iter(answers.items()), key=lambda kv: kv[1]['avgtemp']):
|
#for answer, d in sorted(iter(answers.items()), key=lambda kv: kv[1]['avgtemp']):
|
||||||
#print('%s: %d (avg time %.1f, avg temp %.1f)' % (answer, d['count'], d['avgtime'], d['avgtemp']))
|
#print('%s: %d (avg time %.1f, avg temp %.1f)' % (answer, d['count'], d['avgtime'], d['avgtemp']))
|
||||||
|
|
||||||
|
|
||||||
#filename = 'output/{}-{}-{}.csv'.format(a, b, c)
|
#filename = 'output/{}-{}-{}.csv'.format(a, b, c)
|
||||||
#save_answers(answers, filename)
|
#save_answers(answers, filename)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user