From 979f0c3032ec4c80d605b0c3fcd37e0a453f6d5b Mon Sep 17 00:00:00 2001 From: alexandre Date: Tue, 22 Oct 2019 10:55:18 +0200 Subject: [PATCH] params look ok --- main.py | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/main.py b/main.py index 2e09a8b..d5a922d 100755 --- a/main.py +++ b/main.py @@ -31,7 +31,7 @@ class Car(pygame.sprite.Sprite): self.rect = self.image.get_rect() self.rect.center = (75, GY -50) - self.speed = 1.5 + self.speed = 1 self.heading = 0 self.heading_change = 0 self.vision_length = VISION_LENGTH # line liength @@ -57,6 +57,7 @@ class Car(pygame.sprite.Sprite): self.probe_brain() self.run = True + def update_sensors(self): center = self.rect.center vc = angle_to_vector(self.heading) @@ -88,7 +89,7 @@ class Car(pygame.sprite.Sprite): pygame.draw.circle(screen, (125,125,255), ip, 4, 2) dist = int(distance(ip,self.rect.center)) self.probes[idx] = min(dist, self.probes[idx]) - if dist < 2 * self.speed or not self.speed : + if dist < 1.2 * self.speed or self.speed < 0.01 : self.run = False print(f'Car {id(self)} crashed') @@ -110,7 +111,11 @@ class Car(pygame.sprite.Sprite): self.rect = self.image.get_rect() self.rect.center = old_center self.update_position() + if self.speed < 0.01 : + self.run = False + print(f'Car {id(self)} crashed') print( + 'id', id(self), 'Speed', self.speed, 'heading', self.heading, 'throttle', self.throttle, @@ -118,7 +123,7 @@ class Car(pygame.sprite.Sprite): ) if self.speed : - self.heading += self.heading_change * 6 / self.speed + self.heading += self.heading_change * 20 / self.speed self.heading = self.heading % 360 self.speed += self.throttle #THROTTLE_POWER @@ -142,7 +147,7 @@ class Car(pygame.sprite.Sprite): - +#https://medium.com/intel-student-ambassadors/demystifying-genetic-algorithms-to-enhance-neural-networks-cde902384b6e screen = pygame.display.set_mode((GX, GY), FLAGS) @@ -161,12 +166,15 @@ for x in range(10): all_cars.add(car) clock = pygame.time.Clock() -while True : +running_cars = True +while running_cars : + running_cars = False screen.fill(CELL_COLOR) all_cars.draw(screen) for c in all_cars : c.show_features() if c.run : + running_cars = True c.probe_lines_proximity(map_lines) c.probe_brain() c.update() @@ -179,4 +187,8 @@ while True : # pygame.draw.circle(screen, (125,255,125), point, 4, 2) pygame.display.flip() - clock.tick(1) \ No newline at end of file + clock.tick(24) + +while True : + pygame.display.flip() + clock.tick(24)