Agenda für heute, 9. Oktober, 2009
• Tabellenkalkulation: Tabellenkalkulation: Das Arbeitspferd der DatenverarbeitungDas Arbeitspferd der Datenverarbeitung
• Mehr als rechnen: Arbeitsprozesse unterstützen
• Anders rechnen: Numerische Methoden
• Zirkelbezug
• Pause
• Zielwertsuche
• Lineare Optimierung
© Departement Informatik, ETH Zürich
Historischer Kontext der Datenverarbeitung
2/33
Def. Datenverarbeitung: Zweckgebundene Transformation von Daten durch Menschen oder Maschinen nach einem vorgegebenen Verfahren
Manuelle Datenverarbeitung• Bürokratische Verfahren mit standardisierten
Dokumenten• Formulare, Fragebögen, Tabellen• Dokumentieren, archivieren
Jakob Fugger "der Reiche" mit Buchhalter (15. Jh)
© Departement Informatik, ETH Zürich
Die Tabelle als Organisationsprinzip
3/33
Formalisierungsmedium
Formatierung durch• Rasterung• Adressierung
Mechanische statt schriftliche Markierungen erlauben Automatisierung
© Departement Informatik, ETH Zürich
Historischer Kontext der Datenverarbeitung
4/33
Maschinelle Datenverarbeitung• Zählen: Hollerith Lochkarten (1890)• Rechnen: IBM (1924)• Vergleichen:Sortier- & Tabelliermaschinen• Automatisierung
© Departement Informatik, ETH Zürich
Historischer Kontext der Datenverarbeitung
5/33
Elektronische Datenverarbeitung• flexible Programmierung• keine mechanischen Speichermedien
Einsatz des Computers als• Rationalisierungsinstrument = schnelles
Zählen, Rechnen, Vergleichen
• Restrukturierungswerkzeug = flexibles
Formatieren, Kombinieren, Adressieren, Synchronisieren
Die Tabelle als Gemeinsamkeit aller Methoden:
– sie strukturiert jede Art der Datenverarbeitung
© Departement Informatik, ETH Zürich
Die Tabelle als Organisationsprinzip
6/33
Speichermedium
vereinfacht• das Suchen• das Sortieren
unterstützt• Zwischen-
speicherung• Programmierung
© Departement Informatik, ETH Zürich
Buchungsvorgang mit verschalteten Tabellen (Bsp. 1929)
7/33
© Departement Informatik, ETH Zürich
Prozesssteuerung: Entscheidungstabellen
8/33
Wenn es regnet und weder Schnee noch Nebel hat, dann nehm ich das Auto.
© Departement Informatik, ETH Zürich
Die Tabelle als Organisationsprinzip
9/33
Die Informatik kann die Tabellen als Objekt verselbständigen
Daten aus den Verfahrensprozesssen heraus lösen
Anwender hängen nicht mehr von Programmierern ab
Geben Sie Da, Zi, La ein
Da ← 80000
Zi ← 0.10
La ← 24
Za ← Tilgung + Zinsen
Ausgabe ← Za
vs.
© Departement Informatik, ETH Zürich
Datenverarbeitung am Informationsarbeitsplatz
• Das universellste Informatikmittel für die individuelle Datenverarbeitung ist die Tabellenkalkulation
10/33
1977
Dan Bricklin (Harvard MBA Student)
Robert Frankston (Programmierer)
© Departement Informatik, ETH Zürich
Universell heisst …
… Verschiedene Arten des Einsatzes:
• Automatisches Ausführen und Aktualisieren von Berechnungen
• Textverarbeitung, Präsentation
• Datenspeicherung & Datenverwaltung (Praxis 4)
• Online-Zusammenarbeit
• Automatisches erstellen und aktualisieren von Diagrammen (Praxis 3)
• Modellierung (Praxis 2)
• Programmierung (Makros, Praxis 6)
… heisst, unterschiedlichste Arbeitsprozesse unterstützen!
11/33
• Tabellenkalkulation: Das Arbeitspferd der Datenverarbeitung
• Mehr als rechnen: Arbeitsprozesse unterstützen Mehr als rechnen: Arbeitsprozesse unterstützen • Anders rechnen: Numerische Methoden
• Zirkelbezug
• Pause
• Zielwertsuche
• Lineare Optimierung
© Departement Informatik, ETH Zürich
Mehr als rechnen: Arbeitsprozesse unterstützen
• Schutzfunktionen
Eine Arbeitsmappe oder Teile davon vor dem Einblick oder der Änderung durch Unbefugte schützen
• Online-Zusammenarbeit
Eine Arbeitsmappe für andere in Echtzeit zugänglich machen
• Direkte Manipulation: z.B. Pivottabellen
Die Struktur einer Tabelle dynamisch verändern
• Mehrfachoperationen
Eine Formel oder Funktion, die auf mehrere Werte einer Variablen gleichzeitig angewandt wird, muss nur einmal eingegeben werden
12/33
© Departement Informatik, ETH Zürich
Tabellen umformen: Pivottabellen
13/33
© Departement Informatik, ETH Zürich
Planen mit Was-Wenn-Tabelle
Befehl: 'Tabelle' im Menü 'Daten'
14/33
Sechs Varianten, mit der gleichen Funktion berechnet wie der Wert in C7
© Departement Informatik, ETH Zürich
Bäume wachsen nicht in den Himmel
Einschränkungen der Tabellenkalkulation
• Datenverwaltung wird schnell aufwändig
(Lösung: Datenbanksystem verwenden)
• Beschränkt in der Grösse
(Lösung: Datenbanksystem verwenden)
• Zusammenhänge sind nicht sichtbar
(Wichtig: Gute Dokumentation)
• Gefahr von Nebenwirkungen (side effects) ist gross
(Wichtig: Sorgfältig arbeiten)
15/33
© Departement Informatik, ETH Zürich
Bäume wachsen nicht in den Himmel
16/33
© Departement Informatik, ETH Zürich
Bäume wachsen nicht in den Himmel
On the accuracy of statistical procedures in Microsoft Excel 2003B.D. McCullough, Berry Wilson
Computational Statistics & Data Analysis 49 (2005) 1244-1252
Abstract
Some of the problems that rendered Excel 97, Excel 2000 and Excel 2002 unfit for use as a statistical package have been fixed in Excel 2003, though some have not. Additionally, in fixing some errors, Microsoft introduced other errors.
[…]
Excel 2003 is an improvement over previous versions, but not enough has been done that its use for statistical purposes can be recommended.
17/33
© Departement Informatik, ETH Zürich
Bäume wachsen nicht in den Himmel
On the accuracy of statistical procedures in Microsoft Excel 2007B.D. McCullough, David A. Heiser
Computational Statistics & Data Analysis 52 (2008) 4570-4578
Abstract
Excel 2007, like its predecessors, fails a standard set of intermediate-level accuracy tests in three areas: statistical distributions, random number generation, and estimation. Additional errors in specific Excel procedures are discussed. Microsoft's continuing inability to correctly fix errors is discussed.
[…]
Persons who wish to conduct statistical analyses should use some other package.
18/33
© Departement Informatik, ETH Zürich
Verbreitete Fehlerquellen während der Benutzung
19/33
• Falsche Eingabe
• Falsche Rechenoperatoren
• Falsche Formatierungen
• Zirkelbezüge
• Relative und absolute Bezüge
• Falsche Inhalte
• Denkfehler
• Nebenwirkungen
Literatur: Berechnungen in Excel: Zahlen, Formeln und Funktionen
R. Martin, Hanser Verlag, 2004
• Tabellenkalkulation: Das Arbeitspferd der Datenverarbeitung
• Mehr als rechnen: Arbeitsprozesse unterstützen
• Anders rechnen: Numerische Methoden Anders rechnen: Numerische Methoden • Zirkelbezug
• Pause
• Zielwertsuche
• Lineare Optimierung
© Departement Informatik, ETH Zürich
Wunsch und Wirklichkeit
Wunsch:
Realität:
20/33
Die meisten quantitativen Probleme können mit einer geigneten mathematischen Methode analytisch exakt gelöst werden.
Für die wenigsten mathematischen Probleme in der (wissen-schaftlichen) Praxis gibt es eine explizite Darstellung der Lösung.
Die Lösungen verursachen oft einen grossen Aufwand oder sind mit Fehlern behaftet.
Um dennoch zu Resultaten zu kommen, werden angenäherte Lösungen mit Methoden aus der numerischen Mathematik gesucht.
Dazu braucht es Computer.
© Departement Informatik, ETH Zürich
Numerische Methoden
Typische Vorgehensweise
Ausgehend von einer geschätzten Lösung wird wiederholt eine Berechnung mit leicht veränderten Werten so oft ausgeführt, bis entweder eine vorgegebene Zeit ausläuft oder der Unterschied zwischen zwei Lösungsschritten ein vorbestimmtes Mass unterschreitet.
21/33
© Departement Informatik, ETH Zürich
Anwendungsbeispiele numerischer Methoden in Excel
• Zirkelbezüge
Gleichungssysteme numerisch lösen
• Zielwertsuche
"Taschenrechner" für eine Unbekannte
• Lineare Optimierung
Zielwerte unter Berücksichtigung von Nebenbedingungen maximieren oder minimieren
Literatur: The Active Modeler: Mathematical Modeling with Excel
E. Neuwirth, D. Arganbright, Thomson, Brooks/Cole, 2004
Hinweis: Hier geht es nicht um die Theorie numerischer Methoden, sondern um deren beispielhafter Anwendung.
22/33
• Tabellenkalkulation: Das Arbeitspferd der Datenverarbeitung
• Mehr als rechnen: Arbeitsprozesse unterstützen
• Anders rechnen: Numerische Methoden
• ZirkelbezugZirkelbezug• Pause
• Zielwertsuche
• Lineare Optimierung
© Departement Informatik, ETH Zürich
Zirkelbezüge
Formeln dienen dazu, aus bestehenden Werten neue zu erzeugen.
23/33
Ein Zirkelbezug liegt dann vor, wenn eine Formel sich direkt oder indirekt auf die Zelle in der sie steht zurück bezieht.
Sie können absichtlich oder unabsichtlich entstehen!
© Departement Informatik, ETH Zürich
Beispiel eines beabsichtigten Zirkelbezuges
Bruttogewinn B = Fr. 2000.-
Nettogewinn N = B – P
Provision P = 10% von N
Bevor N berechnet werden kann, muss P bekannt sein. Um P zu berechnen muss aber N bekannt sein. Es ensteht ein Zirkelbezug:
N = B – P
P = 10% von N
24/33
Numerische Lösung mit Excel
(Extras Optionen Berechnen Iteration)
• Tabellenkalkulation: Das Arbeitspferd der Datenverarbeitung
• Mehr als rechnen: Arbeitsprozesse unterstützen
• Anders rechnen: Numerische Methoden
• Zirkelbezug
• Pause
• ZielwertsucheZielwertsuche• Lineare Optimierung
© Departement Informatik, ETH Zürich
Zielwertsuche in der Chemie
Beispiel: Van-der-Waals-Gleichung.
• Empirisch gefundene Zustandsgleichung für das näherungsweise thermische Verhalten von realen Gasen und Flüssigkeiten.
• Gleichung: (p + a / V2) * (V – b) = R*T (für 1 mol)
mit p = DruckV = MolvolumenT = absolute TemperaturR = Gaskonstantea, b =stoffspezifische Konstanten
• Gegeben: Temperatur und Druck
• Gesucht: Molvolumen V
• Klassische Lösung: Gleichung 3. Grades für V !
25/33
Johannes Diderik van der Waals
© Departement Informatik, ETH Zürich
Methodik der Zielwertsuche
Die Ausgangslage
• Es ist klar, welche Formel zur Berechnung eines bestimmten Ergebnisses verwendet wird
• Man weiss auch welches Ergebnis die Formel liefern soll (Zielwert)
Das Problem
• Aber man kennt einen bestimmten Wert nicht, den die Formel zum Errechnen dieses Zieles benötigt
Die Lösung
• Excel verändert diesen Wert so lange, bis die von dieser Zelle abhängige Formel den festgelegten Zielwert berechnet hat
26/33
© Departement Informatik, ETH Zürich
Lösung der Van-der-Waals-Gleichung mit Zielwertsuche
Umstellung der Gleichung (Zielwert = 0)
(p + a / V2) * (V – b) – R*T = 0
• Konstanten:
a = 656500,
b = 0.0562
R = 8282
p = 1011060
T = 300C = 303.15 K
Tabellenmodell
27/33
Formel und Ergebnissind bekannt
ein Parameterist unbekannt
• Tabellenkalkulation: Das Arbeitspferd der Datenverarbeitung
• Mehr als rechnen: Arbeitsprozesse unterstützen
• Anders rechnen: Numerische Methoden
• Zirkelbezug
• Pause
• Zielwertsuche
• Lineare OptimierungLineare Optimierung
© Departement Informatik, ETH Zürich
Worum geht es? Ein Beispiel zur Illustration
Wir sollen aus Gemüse und Fleisch, welche Magnesium, Eisen und die Vitamine C und B12 enthalten, Mahlzeiten herstellen, die möglichst kostengünstig sind.
Gleichzeitig müssen Diätanforderungen in Form von Mindestmengen der Mineral-stoffe und Vitamine erfüllt werden, welche mit der Mahlzeit aufgenommen werden.
Die folgende Tabelle gibt eine Übersicht über die Inhaltsstoffe:
28/33
Menge der Mineralien & Vitaminen
[mg je 100g]
Mindestmengen an Mineralien und Vitaminen in den Rationen
[mg]Gemüse Fleisch
MagnesiumEisenVitamin C
Vitamin B12
501
500
2520
0.001
1758
750.002
Kosten [Fr./100g] 4 6
© Departement Informatik, ETH Zürich
Das mathematische Modell
29/33
Kontrollvariablen: x1 = Gemüse (in 100g)x2 = Fleisch (in 100g)
Zielfunktion: min K (x1,x2) = 4x1 + 6x2
Nebenbedingungen: (i) 50x1 + 25x2 ≥ 175(ii) x1 + 2x2 ≥ 8(iii) 50x1 ≥ 75(iv) 0.001x2 ≥ 0.002(v) x1 ≥ 0, x2 ≥ 0
Die Lösung dieses Ungleichungssystems ist die kostenminimale Zusammensetzung einer Mahlzeit aus Fleisch und Gemüse, welche die Diätanforderungen erfüllt.
Mindestanforderungen an Mineralstoffen und Vitaminen formuliert als " ≥ -Beziehungen"
© Departement Informatik, ETH Zürich
Grafische Lösung des linearen Optimierungsproblems
30/33
x2
x11.5
2
7
3.5
4
8
Nebenbedingung (i)
Nebenbedingung (ii)
Nebenbedingung (iii)
Nebenbedingung (iv)
Ant
eil
Fle
isch
Anteil Gemüse
Wo liegt das Minimum?
© Departement Informatik, ETH Zürich
Lineare Optimierung mit Excel
Das Hilfsprogramm Solver von Excel ist ein Instrument, mit dem Lösungen für einen oder mehrere Werte gefunden werden können, um einen Zielwert unter Berücksichtigung von Nebenbedingungen zu maximieren oder zu minimieren.
Tabellenmodell für das Mahlzeitenproblem
31/33
© Departement Informatik, ETH Zürich
Mehr als nur rechnen!
Mit der Tabellenkalkulation stellt der Informationsarbeitsplatz ein Werkzeug zur Verfügung, das hohen Ansprüchen der Daten-verarbeitung genügt.
Mit modernen Versionen lassen sich nicht nur die traditionellen Berechnungen der Tabellenkalkulation ausführen, sondern Methoden anwenden, welche z.B. für die Entscheidungsfindung unschätzbare Dienste leisten.
32/33
© Departement Informatik, ETH Zürich
Verschiedene Anwendungsgebiete der linearen Optimierung
• Ernährungswissenschaft und FuttermittelindustrieMischungsproblem: preiswerte Rationen mit vorgegebenem Gehalt an Nährstoffen
• TransportwesenUmfangreiche Transporte mit möglichst geringem Aufwand
• ErdölindustrieGewinnung, Aufbereitung und Verteilung des Erdöls mit minimalen Kosten
• KommunikationTelefonverbindungen zwischen Städten kostengünstig einrichten
• LandwirtschaftRationelle Aussaat bestimmen
• StahlherstellungOptimale Ausnutzung der Walzstrassen
• PharmazieHerstellungskosten für Präparate optimieren
33/33
Ich wünsche Ihnen ein optimales Wochenende!