def __init__(self, model): self.S = [Seeker(config.n, i) for i in range(config.pop_size)] self.g_best = None self.g_best_y = None self.model = model self.h=[] self.u_p=[]
def __init__(self, root: SimpleBlock, db: Database, p2p: Network): self._db = db self._p2p = p2p self.root = root self._state = State(self._db) self._orphans = Orphanage(self._db) self.current_node_hashes = RedisSet(db, 'all_nodes') self._block_index = RedisHashMap(db, 'block_index', int, SimpleBlock) self._block_heights = RedisHashMap(db, 'block_heights', int, int) self._heights = RedisHashMap(db, 'heights', int) self._initialized = RedisFlag(db, 'initialized') self.head = self._get_top_block() self._seeker = Seeker( self, self._p2p ) # format: (total_work, block_hash) - get early blocks first self.currently_seeking = set() # todo: temp till primary chain is done in redis so queries are quick self._primary_chain = PrimaryChain(self._db, 'primary_chain') if not self._initialized.is_true: self._first_initialize() self._initialized.set_true()
def runTest(self): s = Seeker('TS', 'test/unit_test.xml', 0) hand_dict = { '1': [[1,7,8,9,10,11,12,13,14,15,16,17,18],'1','3','OBJ','n-s---ma-','a)nh/r1',False], '2': [[2],'2','3','OBJ','p-s---md-','e)gw/1',True], '3': [[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18],'3','0','PRED','v2spma---','e)ne/pw1',True], '4': [[4],'4','5','AuxX','u--------','comma1',True], '5': [[4,5,6],'5','3','ExD','n-s---fv-','*mou=sa1',True], '6': [[6],'6','5','AuxX','u--------','comma1',True], '7': [[7],'7','1','ATR','a-s---ma-','polu/tropos1',True], '8': [[8],'8','12','AuxX','u--------','comma1',True], '9': [[9],'9','12','SBJ','p-s---mn-','o(/s1',True], '10': [[10],'10','11','AuxZ','d--------','ma/la1',True], '11': [[10,11],'11','12','ADV','d--------','polu/s',True], '12': [[8,9,10,11,12,13,14,15,16,17,18],'12','1','ATR','v3saip---','pla/zw1',True], '13': [[13],'13','14','AuxX','u--------','comma1',True], '14': [[13,14,15,16,17,18],'14','12','AuxC','c--------','e)pei/1',True], '15': [[15],'15','17','ATR','n-s---fg-','*troi/a1',True], '16': [[16],'16','17','ATR','a-s---na-','i(ero/s1',True], '17': [[15,16,17],'17','18','OBJ','n-s---na-','ptoli/eqron1',True], '18': [[15,16,17,18],'18','14','ADV','v3saia---','pe/rqw1',True], '19': [[19],'19','0','AuxK','u--------','punc1',True] } for tree in s.trees.values(): for key in tree.list_form: self.assertEqual(tree.list_form[key], hand_dict[key])
def runTest(self): s = Seeker('TS', 'test/unit_test.xml', 0) dct = s.clause_types() hand_dict = {'2185541': ['o:e:t:-:o:-:t:f:f', 'v:p:-:s:-:-:-:f:f', 'v:e:n:-:o:-:f:f:t']} for key in dct: self.assertEqual(dct[key], hand_dict[key])
def runTest(self): s = Seeker('TS', 'test/test.xml', 0) dct = s.classify_discontinuous('OBJ|SBJ') hand_dict = {'yxxv': 0, 'xxv': 2, 'yxvx': 2, 'xvx': 2, 'vxx': 0} for key in dct: try: self.assertEqual(dct[key], hand_dict[key]) except AssertionError: print "Generated " + key + " " + str(dct[key]) + " does not equal hand-calculated " + str(hand_dict[key] ) + "."
def __init_players(self): seeker_coord, hiders_coords = self.__get_agent_coord() # self.__hiders = ([Hider(self.__map, self.__n, self.__m, self.__range_hide, hider_coord, seeker_coord, self.__obs) # for hider_coord in hiders_coords]) self.__obs_sign_to_hider = [None] * len(hiders_coords) self.__hider_status = [True] * len(hiders_coords) self.__hiders = ([ Hider(self.__map, self.__n, self.__m, self.__range_hide, (hiders_coords[id_hider][0], hiders_coords[id_hider][1]), seeker_coord, self.__obs, self.__obs_sign_to_hider, self.__need_obs, self.__hide_place, self.__hider_status, self.__obs_to_cell, self.__is_generate_path, id_hider) for id_hider in range(len(hiders_coords)) ]) self.__seeker = Seeker(self.__map, self.__n, self.__m, self.__range_seek, seeker_coord, self.__obs) self.__seeker.update_num_hiders(self.__num_hiders)
def __init_players(self): self.__hiders = [] hiders_coors = [] seeker_coor = None for i in range(self.__n): for j in range(self.__m): if self.__map[i][j] == Config.SEEKER: seeker_coor = i, j self.__seeker = Seeker(self.__map, self.__n, self.__m, self.__range_seek, seeker_coor) elif self.__map[i][j] == Config.HIDER: hiders_coors.append((i, j)) self.__num_hiders += 1 for i in range(self.__num_hiders): self.__hiders.append( Hider(self.__map, self.__n, self.__m, self.__range_hide, hiders_coors[i], seeker_coor)) self.__seeker.update_num_hiders(self.__num_hiders)
from seeker import Seeker from mail_module import send_mail s = Seeker() file_name, second_file_name = s.seek() mail_text = 'DevExpress dependency report.' mail_title = 'DevExpress dependency report' send_to = ['*****@*****.**'] send_from = '*****@*****.**' #send_mail(send_from, send_to, mail_title, mail_text, [str(file_name), str(second_file_name)])
content = "media" elif args.markdown: content = "markdown" elif args.broadcast: content = "broadcast" elif args.object: content = "file" elif args.delete: content = "shred" else: content = "tag-search" Publisher().process(content, args.file) elif args.mode == 'seeker': seeker = Seeker() if args.search: if not (args.search_tag or args.search_name or args.search_hash): print( colored.red( "[!] Atleast one of tag, name or file hash is require for search" )) exit(0) data = {} if args.search_hash: data["hash"] = args.search_hash else: data["hash"] = None if args.search_name:
# OOP and OOAD Assessment # Karina Sudnicina # 17.12.2020 # Quidditch v 8.0 from field import Field from seeker import Seeker from snitch import Snitch # import the Pygame import random, sys, copy, os, pygame from pygame.locals import * # create objects field = Field() s1 = Seeker('1', 4, 1) s2 = Seeker('2', 5, 3) sn = Snitch('@', 3, 2) # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ FPS = 30 # frames per second to update the screen WINWIDTH = 800 # width and height of the program's window WINHEIGHT = 600 HALF_WINWIDTH = int(WINWIDTH / 2) # place things centrally HALF_WINHEIGHT = int(WINHEIGHT / 2) # The total width and height of each tile in pixels. TILEWIDTH = 32 TILEHEIGHT = 32 TILEFLOORHEIGHT = 32
queue_dis = queue.Queue() queue_extrac = queue.Queue() queue_extraced = queue.Queue() queue_av = queue.Queue() queue_hash = queue.Queue() queue_hashed = queue.Queue() queue_ext_path = queue.Queue() queue_csv = queue.Queue() queue_csved = queue.Queue() queue_blk = queue.Queue() queue_mem = queue.Queue() queue_memed = queue.Queue() queue_rslt = queue.Queue() queue_elastic = queue.Queue() see = Seeker(queue_dis, IN_DIR, BASE_NAME, CHECK_TIME) dis = Dispatcher(queue_dis, queue_extrac, queue_extraced, queue_ext_path, queue_av, queue_hash, queue_hashed, queue_csv, queue_csved, queue_blk, queue_mem, queue_memed, queue_elastic, IN_DIR, WORK_DIR, OUT_DIR, DIR_OUT) has = Hasher(queue_hash, queue_hashed, IN_DIR, WORK_DIR, BLOCK_SIZE_HASH) ext = Extractor(queue_extrac, queue_extraced, queue_ext_path, IN_DIR, WORK_DIR) csv = Csver(queue_csv, queue_csved, WORK_DIR, OUT_DIR) blk = Bulker(queue_blk, queue_extraced, WORK_DIR, OUT_DIR) mem = Memer(queue_mem, queue_extraced, IN_DIR, WORK_DIR, OUT_DIR) #tim = Timeliner(queue_extrac,WORK_DIR,OUT_DIR) avc = Avcheck(queue_av, WORK_DIR, OUT_DIR) #elas = Elasticer(queue_elastic,WORK_DIR,OUT_DIR) see.start()
def main(): level = 3 #init board board = Board() catchingHider = False pathToCurrentHider = [] checkingAnnounceArea = False pathToCurrentOptimalPoint = [] hiderPos = [] #init seeker seeker = Seeker() seeker.build_visitMap(mapInfo[0]) seeker.update(mapInfo[1][0], mapInfo[0]) #init seeker move seekerNewMove = [seeker.Sx, seeker.Sy] seekerOldMove = [] seekerOldMove.append(seekerNewMove) #init hider hiderList = [] for i in range(len(mapInfo[2])): hiderList.append(Hider()) hiderList[i].update(mapInfo[2][i], mapInfo[0]) numberOfHiders = len(hiderList) #init game FPS = 60 WIN = pygame.display.set_mode((WIDTH, HEIGHT)) pygame.display.set_caption("Map") running = True clock = pygame.time.Clock() #init draw board.draw_board(WIN, mapInfo[0]) seeker.drawVison(WIN, mapInfo[0]) seeker.drawSeeker(WIN) for i in range(len(hiderList)): hiderList[i].drawHider(WIN) pygame.display.update() pygame.time.wait(20) #start game loop turn_count = 0 hider_time = 5 while running: clock.tick(FPS) for event in pygame.event.get(): if event.type == pygame.QUIT: running = False if event.type == pygame.KEYDOWN: if event.key == pygame.K_p: pause() #move #seekerOldMove.append(seekerNewMove) #if len(seekerOldMove) > 4: # seekerOldMove.pop(0) turn_count = turn_count + 1 if level >= 3: for i in range(len(hiderList)): danger = 0 for curX in range(hiderList[i].Sx - 2, hiderList[i].Sx + 3): for curY in range(hiderList[i].Sy - 2, hiderList[i].Sy + 3): if (curX < 1 or curX > ROW - 2 or curY < 1 or curY > COL - 2): continue if (hiderList[i].valueInVision(curX, curY) == 3): danger = 1 if (danger): new_move = hiderList[i].run(mapInfo[0]) randVal = randint(0, 10000) if (randVal % 2 == 0): new_move = (hiderList[i].Sx, hiderList[i].Sy) hiderList[i].update(new_move, mapInfo[0]) continue new_move = hiderList[i].get_goal(mapInfo[0], 1000) hiderList[i].update(new_move, mapInfo[0]) if turn_count > hider_time: if len(seeker.hiderPositionList) == 0 and len( seeker.announcePositionList) == 0: seekerNewMove = seeker.randomMove(mapInfo[0]) elif len(seeker.hiderPositionList) == 0 and len( seeker.announcePositionList) > 0: if checkingAnnounceArea == False: announcePos = seeker.announcePositionList[0] seeker.findAnnounceArea(mapInfo[0], announcePos) optimal_point = seeker.findOptimalPoint(mapInfo[0]) if optimal_point is None: seekerNewMove = seeker.randomMove(mapInfo[0]) pathToCurrentOptimalPoint = seeker.FromStartToEnd( list([seeker.Sx, seeker.Sy]), optimal_point, mapInfo[0]) checkingAnnounceArea = True if len(seeker.announceArea) > 0: if pathToCurrentOptimalPoint is None: seekerNewMove = seeker.randomMove(mapInfo[0]) elif len(pathToCurrentOptimalPoint) > 0: seekerNewMove = pathToCurrentOptimalPoint.pop(0) else: optimal_point = seeker.findOptimalPoint(mapInfo[0]) pathToCurrentOptimalPoint = seeker.FromStartToEnd( list([seeker.Sx, seeker.Sy]), optimal_point, mapInfo[0]) elif len(seeker.announceArea) == 0: seeker.announcePositionList.pop(0) checkingAnnounceArea = False elif len(seeker.hiderPositionList) > 0: hiderPos = seeker.hiderPositionList[0] if catchingHider == False: pathToCurrentHider = seeker.FromStartToEnd( list([seeker.Sx, seeker.Sy]), hiderPos, mapInfo[0]) print("hider position:", hiderPos) catchingHider = True seekerNewMove = pathToCurrentHider.pop(0) if seekerNewMove[0] == hiderPos[0] and seekerNewMove[ 1] == hiderPos[1]: numberOfHiders = numberOfHiders - 1 catchingHider = False mapInfo[0][hiderPos[0]][hiderPos[1]] = 0 seeker.visionScopeUpdate(mapInfo[0]) seeker.visibleUpdate() seeker.hiderPositionList.pop(0) print('need to pop: ', seekerNewMove) for i in range(len(hiderList)): print(hiderList[i].Sx, hiderList[i].Sy) for k in range(0, len(hiderList)): if hiderList[k].Sx == seekerNewMove[0] and hiderList[ k].Sy == seekerNewMove[1]: temp = hiderList[k] temp.cleanUpAnnounce(mapInfo[0]) hiderList.pop(k) break if len(hiderList) == 0: print("Find all hiders, game over") return #seekerNewMove = seeker.randomMove(mapInfo[0]) if (seekerNewMove is None): seeker.build_visitMap(mapInfo[0]) seekerNewMove = (seeker.Sx, seeker.Sy) seeker.update(seekerNewMove, mapInfo[0]) seeker.updateAnnounceArea() seeker.findHider() seeker.findAnnounce() #draw #draw board board.draw_board(WIN, mapInfo[0]) #draw vision seeker.drawVison(WIN, mapInfo[0]) for i in range(len(hiderList)): hiderList[i].drawVison(WIN, mapInfo[0], seeker) #draw agents seeker.drawSeeker(WIN) for i in range(len(hiderList)): hiderList[i].drawHider(WIN) for i in hiderList: if turn_count >= 30: i.announce(WIN, mapInfo[0]) i.drawAnnounce(WIN) #for i in seeker.vision: # print(i) #print("X of seeker:", seeker.Sx) #print("Y of seeker:", seeker.Sy, "\n") #print hider location #print(" hider position list that seeker found", seeker.hiderPositionList) pygame.display.update() pygame.time.wait(30) pygame.quit()
def __init__(self, account_id, private_key, provider, dev=False): self.plugin = PluginManager() self.plugin.load(PLUGINS_PATH) self.plugin.set_default_solverclass('gcs_solver.py') self.dev = dev self.account_id = account_id self.web3 = Web3(provider) self.interest = '' self.trusted_users = [] self.web3.eth.defaultAccount = account_id # PoA であれば geth_poa_middleware を利用 try: self.web3.eth.getBlock("latest") except ExtraDataLengthError: self.web3.middleware_onion.inject(geth_poa_middleware, layer=0) if private_key: self.web3.middleware_onion.add( construct_sign_and_send_raw_middleware(private_key)) self.deploy_erc1820() self.__observer = None self.__state = None self.assets = None # Wallet の情報 self.wallet = Wallet(self.web3, self.account_id) # オペレータ(トークンの交換などを担当)のコントラクト self.operator_address = None self.load_config() self.operator_address = self._fix_config_address( self.config['operator']['address']) if self.config['operator']['solver_pluginfile']: self.plugin.set_solverclass( self.operator_address, self.config['operator']['solver_pluginfile']) self.contracts = Contracts(self.web3) self.deploy_metemcyberutil() self.fetch_trusted_users() self.event_listener = BasicEventListener('') self.event_listener.start() # inventory (トークン・カタログの管理)のインスタンス生成 catalog_address = self._fix_config_address( self.config['catalog']['address']) broker_address = self._fix_config_address( self.config['broker']['address']) self.inventory = Inventory(self.contracts, self.account_id, self.event_listener, catalog_address, broker_address) # Seeker (チャレンジの依頼者)のインスタンス self.seeker = Seeker(self.contracts) # Solver (チャレンジの受領者)としてのインスタンス if self.operator_address: solverclass = self.plugin.get_solverclass(self.operator_address) self.solver = solverclass(self.contracts, self.account_id, self.operator_address) else: self.solver = None # MISP設定のinsert self.load_misp_config(MISP_INI_FILEPATH)