KI DIGITALE ELEMENTE

Perceptron Sensor

Annahme: Fahrzeug mit 2 Hindernissensoren. Diese Sensoren schalten 1 wenn sich ein Hindernis vor dem Fahrzeug befindet und 0, wenn nichts die Weiterfahrt behindert. Wenn ein Hindernis vor dem Fahrzeug auftaucht, soll die Meldung "STOP - WENDEN" eingeblendet werden und sonst "WEITERFAHREN". Nur wenn beide Sensoren auf 1 sind soll also "STOP - WENDEN", angezeigt werden.

Nun gibt es prinzipiell zwei Möglichkeiten, wie man mit dem Sensor umgehen kann. Erstens, man fragt den Sensor in regelmäßgen Abständen nach seinem aktuellen Zustand ab, oder der Sensor wird selbst bei einer Zustandsänderung aktiv. Für das einfache Beispiel fragen wir den Sensor in bestimmten Abständen nach seinem Zustand ab.

Python - Skript: StopGo.py

# Stuhlpfarrer Ehrenfried - 2021
# Demo Perceptron Anwendung

import numpy as np

class StopGo:
def __init__(self, txt):
print(txt)

# ----------------------------------------

# 4 Inputvektoren
X = np.array([
[1, 0, 0], # Weiterfahren
[1, 0, 1], # Weiterfahren
[1, 1, 0], # Weiterfahren
[1, 1, 1], # Halt - Stop
])
# Passender Gewichtsvektor
w = np.array([-2, 1, 1])

# Heaviside - Funktion -------------------
def heaviside(self, summe):
# Input: Summe
# Output: 1, falls summe >= 0, sonst 0
if summe >= 0:
return 1
else:
return 0
# ----------------------------------------

# Neuron - Berechnung
def perceptron_Sensor(self, s):
w = self.w
X = self.X
output = self.heaviside(np.dot(w, X[s]))
if output == 0:
print("Weiterfahren!")
else:
print("Halt - Wenden!")
pass
# -----------------------------------------
# Main -----------------------------------------------
sg = StopGo("Klasse: StopGo!")
# Berechnung mit aktuellem Sensorwert
AktuelleSensorabfrage = sg.perceptron_Sensor(0)
AktuelleSensorabfrage = sg.perceptron_Sensor(1)
AktuelleSensorabfrage = sg.perceptron_Sensor(2)
AktuelleSensorabfrage = sg.perceptron_Sensor(3)
AktuelleSensorabfrage = sg.perceptron_Sensor(0)

Ausgabe:
Klasse: StopGo!
Weiterfahren!
Weiterfahren!
Weiterfahren!
Halt - Wenden!
Weiterfahren!

KI

Copyright © 2021. All Rights Reserved. Ehrenfried Stuhlpfarrer