ok thats pretty good but what can simulated annealing do

master
Bel LaPointe 2022-09-20 15:22:59 -06:00
parent 4b846fd9ec
commit 8a9cb5a82d
2 changed files with 12 additions and 3 deletions

View File

@ -24,6 +24,7 @@ def main():
args = ap.parse_args()
w_translation = json.loads(args.translation) if args.translation else None
w = writer.Writer(writer.PyAutoGUIWriter(w_translation))
if args.stdout:
w = writer.Writer(writer.StdoutWriter())

View File

@ -1,5 +1,6 @@
import threading
import math
import json
import queue
import time
import sys
@ -69,11 +70,18 @@ class StdinReader:
return None
class RandomReader:
def __init__(self, keys):
self.keys = keys
def __init__(self, translation):
self.translation = translation
self.pool = bucket.Bucket(1)
self.pool.chooser = bucket.BucketChooserProportionalRandom()
for k,v in keys.items():
total_weight = float(sum([i["weight"] for i in translation.values()]))
for v in translation.values():
v["weight"] = float(v["weight"]) / total_weight
for v in translation.values():
v["weight"] = int(1000 * math.sqrt(v["weight"]))
print(1, json.dumps(translation, indent=" "))
for k,v in translation.items():
for i in range(v["weight"]):
self.pool.push(k)