Bah! Remove CoderackPressures as it's not hooked up to anything.

This commit is contained in:
Arthur O'Dwyer
2017-04-17 00:29:56 -07:00
parent 44e5a8c59f
commit e5d44ae75c
4 changed files with 0 additions and 123 deletions

View File

@ -3,7 +3,6 @@ class Codelet(object):
self.name = name
self.urgency = urgency
self.arguments = []
self.pressure = None
self.timeStamp = timestamp
def __repr__(self):

View File

@ -5,7 +5,6 @@ import random
import codeletMethods
import formulas
from codelet import Codelet
from coderackPressure import CoderackPressures
from temperature import temperature
from workspace import workspace
@ -74,7 +73,6 @@ def howManyToPost(workspace, codeletName):
class Coderack(object):
def __init__(self, slipnet):
self.slipnet = slipnet
self.pressures = CoderackPressures()
self.reset()
self.runCodelets = {}
self.postings = {}
@ -116,7 +114,6 @@ class Coderack(object):
self.codelets = []
self.codeletsRun = 0
temperature.clamped = True
self.pressures.reset()
def updateCodelets(self):
if self.codeletsRun > 0:
@ -125,7 +122,6 @@ class Coderack(object):
def post(self, codelet):
self.postings[codelet.name] = self.postings.get(codelet.name, 0) + 1
self.pressures.addCodelet(codelet)
self.codelets += [codelet]
if len(self.codelets) > 100:
oldCodelet = self.chooseOldCodelet()
@ -178,7 +174,6 @@ class Coderack(object):
def removeCodelet(self, codelet):
self.codelets.remove(codelet)
self.pressures.removeCodelet(codelet)
def newCodelet(self, name, oldCodelet, strength, arguments=None):
#logging.debug('Posting new codelet called %s' % name)
@ -188,7 +183,6 @@ class Coderack(object):
newCodelet.arguments = [arguments]
else:
newCodelet.arguments = oldCodelet.arguments
newCodelet.pressure = oldCodelet.pressure
self.post(newCodelet)
# pylint: disable=too-many-arguments

View File

@ -1,115 +0,0 @@
import logging
from formulas import Temperature
from slipnet import slipnet
class CoderackPressure(object):
def __init__(self, name):
self.name = name
def reset(self):
self.values = []
self.codelets = []
def _codelet_index(codelet):
name_indices = {
'bottom-up-bond-scout': 0,
'top-down-bond-scout--category': {
slipnet.successor: 1,
slipnet.predecessor: 2,
None: 3
},
'top-down-bond-scout--direction': {
slipnet.left: 4,
slipnet.right: 5,
None: 3,
},
'top-down-group-scout--category': {
slipnet.successorGroup: 6,
slipnet.predecessorGroup: 7,
None: 8,
},
'top-down-group-scout--direction': {
slipnet.left: 9,
slipnet.right: 10,
None: -1,
},
'group-scout--whole-string': 11,
'replacement-finder': 12,
'rule-scout': 13,
'rule-translator': 14,
'bottom-up-correspondence-scout': 15,
'important-object-correspondence-scout': 16,
'breaker': 17,
}
i = name_indices.get(codelet.name, -1)
try:
return int(i)
except (TypeError, ValueError):
try:
node = codelet.arguments[0]
return i[node]
except KeyError:
return i[None]
class CoderackPressures(object):
def __init__(self):
self.pressures = [
CoderackPressure('Bottom Up Bonds'),
CoderackPressure('Top Down Successor Bonds'),
CoderackPressure('Top Down Predecessor Bonds'),
CoderackPressure('Top Down Sameness Bonds'),
CoderackPressure('Top Down Left Bonds'),
CoderackPressure('Top Down Right Bonds'),
CoderackPressure('Top Down Successor Group'),
CoderackPressure('Top Down Predecessor Group'),
CoderackPressure('Top Down Sameness Group'),
CoderackPressure('Top Down Left Group'),
CoderackPressure('Top Down Right Group'),
CoderackPressure('Bottom Up Whole Group'),
CoderackPressure('Replacement Finder'),
CoderackPressure('Rule Codelets'),
CoderackPressure('Rule Translator'),
CoderackPressure('Bottom Up Correspondences'),
CoderackPressure('Important Object Correspondences'),
CoderackPressure('Breakers'),
]
self.reset()
def calculatePressures(self):
scale = (100.0 - Temperature + 10.0) / 15.0
values = map(
lambda pressure: sum(c.urgency ** scale for c in pressure.codelets),
self.pressures
)
totalValue = sum(values) or 1.0
values = [value / totalValue for value in values]
self.maxValue = max(values)
for pressure, value in zip(self.pressures, values):
pressure.values += [value * 100.0]
for codelet in self.removedCodelets:
if codelet.pressure:
codelet.pressure.codelets.remove(codelet)
self.removedCodelets = []
def reset(self):
self.maxValue = 0.001
self.removedCodelets = []
for pressure in self.pressures:
pressure.reset()
def addCodelet(self, codelet):
i = _codelet_index(codelet)
if i >= 0:
codelet.pressure = self.pressures[i]
if codelet.pressure:
codelet.pressure.codelets += [codelet]
logging.info('Add %s: %d', codelet.name, i)
def removeCodelet(self, codelet):
self.removedCodelets += [codelet]
def numberOfPressures(self):
return len(self.pressures)

View File

@ -18,7 +18,6 @@ def mainLoop(lastUpdate):
coderack.updateCodelets()
slipnet.update()
workspace.updateTemperature()
coderack.pressures.calculatePressures()
lastUpdate = currentTime
logging.debug('Number of codelets: %d', len(coderack.codelets))
coderack.chooseAndRunCodelet()