def setRange(self, start, end): s = self.getServer() masc = s[2] rede = s[4] from rede import Rede try: i = Rede(start, masc) f = Rede(end , masc) except: return False if i.getRedeAsStr() <> rede: return False if f.getRedeAsStr() <> rede: return False section = 'range' c = Cfg() c.read(self.__configLTSPFile) if not c.has_section( section ): c.add_section( section ) c.set(section, 'start', start) c.set(section, 'end' , end) c.write( open(self.__configLTSPFile,'w') ) del c return True
def setMachine(self, mac, ip=None, localApps=False): mac = mac.strip() if len(mac.split(':')) <> 6: return False try: ip = ip.strip() except: pass c = Cfg() c.read(self.__configLTSPFile) if not c.has_section(mac): c.add_section(mac) if ip is not None: from rede import Rede s = self.getServer() masc = s[2] rede = s[4] del s try: i = Rede(ip, masc) except: return False if i.getRedeAsStr() <> rede: return False c.set(mac, 'ip', ip) c.set(mac, 'localapps', str(localApps)) c.write( open(self.__configLTSPFile,'w') ) del c return True
def setServer(self, ip, masc, iface): from rede import Rede r = Rede(ip, masc) M = self.getMachines() c = Cfg() if not c.has_section('server'): c.add_section('server') c.set('server', 'ip', r.getIPAsStr()) c.set('server', 'masc', r.getMascAsStr()) c.set('server', 'rede', r.getRedeAsStr()) c.set('server', 'broadcast', r.getBroadcastAsStr()) c.set('server', 'iface', iface) c.write( open(self.__configLTSPFile,'w') ) for i in M: self.setMachine(i[0], i[1], i[2]) del c
def _create_neural_network(self, qtd_camadas=2): self.rede = Rede(1 + (self.qtd_inimigos * 3)) [self.rede.add_camada(10) for i in range(qtd_camadas)] self.rede.add_camada(3)
def cria_redes(self): qtd_inputs = 1 + (self.qtd_inimigos * 3) rede = Rede(base) rede.add_camada(5) rede.add_camada(3) base = rede.sum_shapes lim_inf = [-2 for i in range(base)] lim_sup = [2 for i in range(base)] base = [10 for i in range(base)] p1 = Populacao(10, base, lim_inf, lim_sup, prob_mutacao=1) p1.gera_populacao_inicial() np.array(rede.camadas[0]).reshape(rede.shapes[0]) aux = 0 ind = p1[0].real ind2 = p1[1].real camadas = [] camadas2 = [] for idx, prod in enumerate(rede.prod_shapes): camadas.append( np.array(ind[aux:aux + prod]).reshape(rede.shapes[idx])) camadas2.append( np.array(ind2[aux:aux + prod]).reshape(rede.shapes[idx])) aux += prod np.append(camadas[0][:, 1].reshape(-1, 1), camadas2[0][:, 2].reshape(-1, 1), axis=1) novas_camadas = [] for i in range(len(camadas)): camada1 = camadas[i] camada2 = camadas2[i] nova_camada = [] for j in range(camada1.shape[1]): neuronio1 = np.array(camada1[:, j]).reshape(-1, 1) neuronio2 = np.array(camada2[:, j]).reshape(-1, 1) if random() < 0.5: if len(nova_camada) == 0: nova_camada = neuronio1 else: nova_camada = np.append(nova_camada, neuronio1, axis=1) else: if len(nova_camada) == 0: nova_camada = neuronio2 else: nova_camada = np.append(nova_camada, neuronio2, axis=1) novas_camadas.append(nova_camada) print(''' Camada1: {} Camada2: {} Nova Camada: {} '''.format(camada1, camada2, nova_camada))