Gierige Algorithmen bestimmen z. B. die Mindestmenge an Münzen für das jeweils nötige Wechselgeld. Im Bild sind die Schritte abgebildet, die ein Mensch gehen würde, um einen gierigen Algorithmus zu imitieren, der 36 Cents herausgibt, indem er Münzen mit den Werten {1, 5, 10, 20} verwendet. Die Münze mit dem höchsten Wert, der unter dem geschuldeten Betrag liegt, ist das „lokale Optimum“.  (gemeinfrei)

Der Greedy-Algorithmus

Greedy-Algorithmen, oder gierige Algorithmen, bilden eine spezielle Klasse von Optimierungsalgorithmen, die in der Informatik auftreten. Sie zeichnen sich dadurch aus, dass sie schrittweise den Folgezustand auswählen, der zum Zeitpunkt der Wahl den größten Gewinn bzw. das beste Ergebnis verspricht – etwa die Berechnung von Wechselgeld oder des kürzesten Wegs. Greedy-Algorithmen sind oft schnell, lösen viele Probleme aber nicht optimal.

Weiterlesen
STIMULUS provides a modelling language that allows system architects to combine formalised textual requirements, state machines and block diagrams in a fully integrated simulation environment.  (gemeinfrei)

Debugging Embedded Systems Requirements before the Design Begins

Over the last two decades, there has been a real movement towards requirements engineering [1]. However, the various tools that have been developed with the aim of improving the specifications development are mostly focused on requirements management and traceability (Doors, Reqtify, etc), and there is no practical upstream requirements validation tool available for checking their functional coherence before the design stage.

Weiterlesen