Institut für Informatik und Computational Science
Refine
Has Fulltext
- yes (85) (remove)
Year of publication
Document Type
- Doctoral Thesis (85) (remove)
Keywords
- Maschinelles Lernen (7)
- Antwortmengenprogrammierung (6)
- Machine Learning (5)
- Modellierung (4)
- answer set programming (4)
- Ontologie (3)
- Semantic Web (3)
- machine learning (3)
- Algorithmen (2)
- Algorithms (2)
- Answer Set Programming (2)
- Bildungstechnologien (2)
- Bildverarbeitung (2)
- Computergrafik (2)
- Computersicherheit (2)
- Coq (2)
- EEG (2)
- Educational Technologies (2)
- FMC (2)
- HCI (2)
- ICA (2)
- Informatik (2)
- Knowledge Representation and Reasoning (2)
- Komplexität (2)
- Künstliche Intelligenz (2)
- Mensch-Computer-Interaktion (2)
- Middleware (2)
- Modell (2)
- Ontology (2)
- Prozessmodellierung (2)
- Software Engineering (2)
- Softwareentwicklung (2)
- Synthese (2)
- Systemstruktur (2)
- Texturen (2)
- Visualisierung (2)
- Vorhersage (2)
- computer graphics (2)
- human computer interaction (2)
- image processing (2)
- maschinelles Lernen (2)
- model (2)
- non-photorealistic rendering (2)
- systems biology (2)
- test (2)
- textures (2)
- virtual 3D city models (2)
- virtuelle 3D-Stadtmodelle (2)
- visualization (2)
- 'Peer To Peer' (1)
- 3D Computer Grafik (1)
- 3D Computer Graphics (1)
- 3D Drucken (1)
- 3D Semiotik (1)
- 3D Visualisierung (1)
- 3D computer graphics (1)
- 3D printing (1)
- 3D semiotics (1)
- 3D visualization (1)
- 3D-Stadtmodelle (1)
- 3d city models (1)
- 6LoWPAN (1)
- ASIC (1)
- ASIC (Applikationsspezifische Integrierte Schaltkreise) (1)
- ASP (Answer Set Programming) (1)
- Abbrecherquote (1)
- Abstraktion (1)
- Ackerschmalwand (1)
- Active Evaluation (1)
- Adaptivity (1)
- Adaptivität (1)
- Adversarial Learning (1)
- Aktive Evaluierung (1)
- Algorithmenablaufplanung (1)
- Algorithmenkonfiguration (1)
- Algorithmenselektion (1)
- Angewandte Spieltheorie (1)
- Anisotroper Kuwahara Filter (1)
- Anleitung (1)
- Antwortmengen Programmierung (1)
- Application Aggregation (1)
- Applications and Software Development (1)
- Applied Game Theory (1)
- Argumentation (1)
- Artificial Intelligence (1)
- Aspect-Oriented Programming (1)
- Aspektorientierte Programmierung (1)
- Asynchrone Schaltung (1)
- Attention (1)
- Aufmerksamkeit (1)
- Augenbewegungen (1)
- Ausreissererkennung (1)
- Autism (1)
- Autismus (1)
- Automatic UI Generation (1)
- BCH (1)
- BCH code (1)
- BCH-Code (1)
- BCI (1)
- BSS (1)
- Bachelorstudierende der Informatik (1)
- Baumweite (1)
- Behavior (1)
- Benutzeroberfläche (1)
- Benutzungsschnittstellen Ontologien (1)
- Berührungseingaben (1)
- Betrachtungsebenen (1)
- Beweis (1)
- Beweisassistent (1)
- Beweistheorie (1)
- Beweisumgebung (1)
- Bilddatenanalyse (1)
- Binäres Entscheidungsdiagramm (1)
- Bioelektrisches Signal (1)
- Bioinformatik (1)
- Boolean constraint solver (1)
- Boosting (1)
- Brain Computer Interface (1)
- Business Process Models (1)
- CASP (Constraint Answer Set Programming) (1)
- CSC (1)
- Cactus (1)
- CertiCoq (1)
- Choreographien (1)
- CityGML (1)
- Classification (1)
- Cloud Computing (1)
- Cloud computing (1)
- Clusteranalyse (1)
- Code (1)
- Codierungstheorie (1)
- Coding theory (1)
- Common Spatial Pattern (1)
- Complementary Circuits (1)
- Complexity (1)
- Compliance (1)
- Composed UIs (1)
- Composition (1)
- Computational Complexity (1)
- Computer Science (1)
- Conceptual (1)
- Constructive solid geometry (1)
- Covariate Shift (1)
- Curry (1)
- DDoS (1)
- DPLL (1)
- Data Privacy (1)
- Datenschutz (1)
- Deep Learning (1)
- Dempster-Shafer-Theorie (1)
- Dempster–Shafer theory (1)
- Description Logics (1)
- Deskriptive Logik (1)
- Diagonalisierung (1)
- Dialog-based User Interfaces (1)
- Dialogbasierte Benutzerschnittstellen (1)
- Didaktik (1)
- Didaktik der Informatik (1)
- Dienst-Ökosysteme (1)
- Dienstkomposition (1)
- Dienstplattform (1)
- Differenz von Gauss Filtern (1)
- Digital Design (1)
- Digital Media (1)
- Digitale Medien (1)
- Digitalisation (1)
- Digitalisierung (1)
- Distributed Computing (1)
- Domain-Specific Languages (1)
- Domänenspezifische Sprachen (1)
- Dreidimensionale Computergraphik (1)
- Dynamic Programming (1)
- Dynamische Programmierung (1)
- Dynamische Rekonfiguration (1)
- E-Government (1)
- E-Learning (1)
- Eingabegenauigkeit (1)
- Elektroencephalographie (1)
- Emotionen (1)
- Emotionsforschung (1)
- Enterprise Search (1)
- Entscheidungsbäume (1)
- Entwurf (1)
- Entwurfsmuster für SOA-Sicherheit (1)
- Entwurfsprinzipien (1)
- Entwurfsraumexploration (1)
- Erfüllbarkeit einer Formel der Aussagenlogik (1)
- Erfüllbarkeitsproblem (1)
- Error Estimation (1)
- Error-Detection Circuits (1)
- Evaluierung semantischer Suchmaschinen (1)
- Evidenztheorie (1)
- Exploration (1)
- Exponential Time Hypothesis (1)
- Exponentialzeit Hypothese (1)
- FMC-QE (1)
- FPGA (1)
- Feature Combination (1)
- Feedback (1)
- Fehlende Daten (1)
- Fehlererkennung (1)
- Fehlerkorrektur (1)
- Fehlerschätzung (1)
- Fehlvorstellung (1)
- Flussgesteuerter Bilateraler Filter (1)
- Focus+Context Visualization (1)
- Fokus-&-Kontext Visualisierung (1)
- Formalismus (1)
- Formalitätsgrad (1)
- Formeln der quantifizierten Aussagenlogik (1)
- Forschendes Lernen (1)
- GIS-Dienstkomposition (1)
- GPU (1)
- Gebäudemodelle (1)
- Gehirn-Computer-Schnittstelle (1)
- Geländemodelle (1)
- Generalisierung (1)
- Generative Programmierung (1)
- Generative Programming (1)
- Geodaten (1)
- Geometrieerzeugung (1)
- Geovisualisierung (1)
- Geräte-Treiber (1)
- Geschäftsprozessmodelle (1)
- Gesichtsausdruck (1)
- Globus (1)
- Grammatikalische Inferenz (1)
- Graph-basiertes Ranking (1)
- Grid (1)
- Grid Computing (1)
- Hardware Design (1)
- Hardware-Software-Co-Design (1)
- Hauptkomponentenanalyse (1)
- High-Level Synthesis (1)
- Hochschulsystem (1)
- Human-Technology Interaction (1)
- I/O-effiziente Algorithmen (1)
- IP core (1)
- IT security (1)
- IT-Security (1)
- IT-Sicherheit (1)
- Informatik-Studiengänge (1)
- Informatikvoraussetzungen (1)
- Information Transfer Rate (1)
- Informationsextraktion (1)
- Inkonsistenz (1)
- Inquiry-based learning (1)
- Interactive Rendering (1)
- Interactive system (1)
- Interaktionsmodel (1)
- Interaktionsmodellierung (1)
- Interaktionstechniken (1)
- Interaktives Rendering (1)
- Interaktives System (1)
- Internet Security (1)
- Internet applications (1)
- Internet of Things (1)
- Internet-Sicherheit (1)
- Internetanwendungen (1)
- Interoperability (1)
- Interoperabilität (1)
- Intuition (1)
- IoT (1)
- Java Security Framework (1)
- Kartografisches Design (1)
- Kern-PCA (1)
- Kernmethoden (1)
- Klassifikation (1)
- Klassifikation mit großem Margin (1)
- Klassifikator-Kalibrierung (1)
- Klimafolgenanalyse (1)
- Klimawandel (1)
- Kommunikation (1)
- Kompilation (1)
- Komplexitätsbewältigung (1)
- Komplexitätstheorie (1)
- Komposition (1)
- Konzeptionell (1)
- Kybernetik (1)
- LDPC code (1)
- LDPC-Code (1)
- Landmarken (1)
- Large Margin Classification (1)
- Laser Cutten (1)
- Lehrer (1)
- Leistungsfähigkeit (1)
- Leistungsvorhersage (1)
- Linked Data Anwendungen (1)
- Linked Data Application Modelling (1)
- Linux (1)
- Linux device drivers (1)
- Logik (1)
- Logiksynthese (1)
- Lower Bounds (1)
- MEG (1)
- MQTT (1)
- Magnetoencephalographie (1)
- Malware (1)
- Mathematical Optimization (1)
- Mathematikdidaktik (1)
- Mathematikphilosophie (1)
- Mathematische Optimierung (1)
- Matrizen-Eigenwertaufgabe (1)
- Megamodel (1)
- Megamodell (1)
- Mehrklassen-Klassifikation (1)
- Mensch-Technik-Interaktion (1)
- Message Passing Interface (1)
- Metamodell (1)
- Methoden der semantischen Suche (1)
- Methodik (1)
- Methodology (1)
- Migration (1)
- Mischmodelle (1)
- Mischung <Signalverarbeitung> (1)
- Mobilgeräte (1)
- Model Based Engineering (1)
- Model Checking (1)
- Model Driven Architecture (1)
- Model Driven UI Development (1)
- Model Management (1)
- Model-Driven Engineering (1)
- Model-Driven Software Development (1)
- Modeling (1)
- Modell Management (1)
- Modell-driven Security (1)
- Modell-getriebene Sicherheit (1)
- Modellbasiert (1)
- Modellgetriebene Architektur (1)
- Modellgetriebene Entwicklung (1)
- Modellgetriebene Softwareentwicklung (1)
- Modellgetriebene UI Entwicklung (1)
- Modelling (1)
- Molekulare Bioinformatik (1)
- Multi Task Learning (1)
- Multi-Class (1)
- Multi-Task-Lernen (1)
- Multimodal User Interfaces (1)
- Multimodale Benutzerschnittstellen (1)
- Multiprocessor (1)
- Multiprozessor (1)
- NETCONF (1)
- Network Management (1)
- Netzwerk Management (1)
- Netzwerke (1)
- Neuronales Netz (1)
- New On-Line Error-Detection Methode (1)
- Next Generation Network (1)
- Nicht-photorealistisches Rendering (1)
- Nichtfotorealistische Bildsynthese (1)
- Nutzungsinteresse (1)
- Objektive Schwierigkeit (1)
- Ontologien (1)
- Ontologies (1)
- Open Source (1)
- Optimierung (1)
- Optimierungsproblem (1)
- Owner-Retained Access Control (ORAC) (1)
- Parallel Programming (1)
- Parallele Datenverarbeitung (1)
- Paralleles Rechnen (1)
- Parallelrechner (1)
- Parameterized Complexity (1)
- Parametrisierte Komplexität (1)
- Patterns (1)
- Peer-to-Peer-Netz ; GRID computing ; Zuverlässigkeit ; Web Services ; Betriebsmittelverwaltung ; Migration (1)
- Performance (1)
- Performance Prediction (1)
- Platzierung (1)
- Policy Enforcement (1)
- Policy Languages (1)
- Policy Sprachen (1)
- Power Monitoring (1)
- Pre-RS Traceability (1)
- Prediction Game (1)
- Predictive Models (1)
- Probleme in der Studie (1)
- Process (1)
- Process modeling (1)
- Professoren (1)
- Programmierung (1)
- Proof Theory (1)
- Prozess (1)
- Prozess Verbesserung (1)
- Prozesse (1)
- Prozessmodell (1)
- Prozesssynchronisierung (1)
- Prädiktionsspiel (1)
- Präferenzen (1)
- Quantified Boolean Formula (QBF) (1)
- Quantitative Modeling (1)
- Quantitative Modellierung (1)
- Queuing Theory (1)
- Reconfigurable (1)
- Regression (1)
- Regularisierung (1)
- Regularization (1)
- Rekonfiguration (1)
- Rendering (1)
- Reparatur (1)
- Reuseable UIs (1)
- SMT (SAT Modulo Theories) (1)
- SOA Security Pattern (1)
- STG decomposition (1)
- STG-Dekomposition (1)
- Sample Selection Bias (1)
- Satisfiability (1)
- Scalability (1)
- Scene graph systems (1)
- Schulmaterial (1)
- Security Modelling (1)
- Segmentierung (1)
- Selektionsbias (1)
- Self-Checking Circuits (1)
- Semantic Search (1)
- Semantik Web (1)
- Semantische Suche (1)
- Sensornetzwerke (1)
- Service Creation (1)
- Service Delivery Platform (1)
- Service Ecosystems (1)
- Service Oriented Architectures (1)
- Service convergence (1)
- Service-Orientierte Architekturen (1)
- Service-oriented Architectures (1)
- Serviceorientierte Architektur (1)
- Sicherheitsmodellierung (1)
- Signal Processing (1)
- Signalquellentrennung (1)
- Signaltrennung (1)
- Simultane Diagonalisierung (1)
- Single Event Transient (1)
- Single Trial Analysis (1)
- Skalierbarkeit (1)
- Skelettberechnung (1)
- Software (1)
- Software architecture (1)
- Software-basierte Cache-Kohärenz (1)
- Softwarearchitektur (1)
- Sonnenteilchen-Ereignis (1)
- Spam (1)
- Spam Filtering (1)
- Spam-Erkennung (1)
- Spam-Filter (1)
- Spam-Filtering (1)
- Spatio-Spectral Filter (1)
- Spawning (1)
- Spielbasiertes Lernen (1)
- Sprachdesign (1)
- Statistical Tests (1)
- Statistische Tests (1)
- Stilisierung (1)
- Strahlungshartes Design (1)
- Strahlungshärte Entwurf (1)
- Stromverbrauchüberwachung (1)
- Structuring (1)
- Strukturierung (1)
- Studentenerwartungen (1)
- Studentenhaltungen (1)
- Support Vectors (1)
- Support-Vector Lernen (1)
- System Biologie (1)
- System structure (1)
- Systembiologie (1)
- Systementwurf (1)
- Szenengraph (1)
- Tailored UI Variants (1)
- Taktik (1)
- Telekommunikation (1)
- Temporal Logic (1)
- Temporallogik (1)
- Temporäre Anbindung (1)
- Terminologische Logik (1)
- Test (1)
- Theoretischen Vorlesungen (1)
- Time Augmented Petri Nets (1)
- Time Series Analysis (1)
- Traceability (1)
- Tracking (1)
- Transformation (1)
- Treewidth (1)
- UI Components (1)
- UI Metamodels (1)
- UI-Komponenten (1)
- Unabhängige Komponentenanalyse (1)
- Universität Bagdad (1)
- Universität Potsdam (1)
- Universitätseinstellungen (1)
- Untere Schranken (1)
- Unterrichtswerkzeuge (1)
- Unvollständigkeit (1)
- Usage Interest (1)
- User Interface Ontologies (1)
- User Interfaces (1)
- VM (1)
- Verhalten (1)
- Verifikation (1)
- Verletzung Auflösung (1)
- Verletzung Erklärung (1)
- Verteiltes Rechnen (1)
- Verteilungsunterschied (1)
- Violation Explanation (1)
- Violation Resolution (1)
- Virtual Reality (1)
- Vorhersagemodelle (1)
- Wahrnehmung (1)
- Wahrnehmung von Arousal (1)
- Wahrnehmungsunterschiede (1)
- Warteschlangentheorie (1)
- Web Services (1)
- Web Sites (1)
- Web of Data (1)
- Webseite (1)
- Well-structuredness (1)
- Wetterextreme (1)
- Wirtschaftsinformatik (1)
- Wissenschaftlichesworkflows (1)
- Wissensrepräsentation und -verarbeitung (1)
- Wissensrepräsentation und Schlussfolgerung (1)
- Wohlstrukturiertheit (1)
- ZQSA (1)
- ZQSAT (1)
- Zeitbehaftete Petri Netze (1)
- Zero-Suppressed Binary Decision Diagram (ZDD) (1)
- Zuverlässigkeitsanalyse (1)
- abstraction (1)
- adaptiv (1)
- adaptive (1)
- algorithm configuration (1)
- algorithm scheduling (1)
- algorithm selection (1)
- anisotropic Kuwahara filter (1)
- approximate joint diagonalization (1)
- argumentation (1)
- arousal perception (1)
- artificial intelligence (1)
- assistive Technologien (1)
- assistive technologies (1)
- asynchronous circuit (1)
- bild (1)
- biometrics (1)
- biometrische Identifikation (1)
- blind source separation (1)
- building models (1)
- business informatics (1)
- cartographic design (1)
- changing the study field (1)
- changing the university (1)
- choreographies (1)
- classifier calibration (1)
- classroom material (1)
- climate change (1)
- climate impact analysis (1)
- clustering (1)
- code (1)
- coherence-enhancing filtering (1)
- communication (1)
- compilation (1)
- complexity (1)
- computational biology (1)
- computational methods (1)
- computer science education (1)
- computer security (1)
- computergestützte Methoden (1)
- concurrent checking (1)
- constraints (1)
- decision trees (1)
- degree of formality (1)
- design (1)
- design principles (1)
- design space exploration (1)
- didactics (1)
- didaktische Rekonstruktion (1)
- difference of Gaussians (1)
- digital circuit (1)
- digital design (1)
- dropout (1)
- dynamic (1)
- dynamic classification (1)
- dynamic reconfiguration (1)
- dynamisch (1)
- dynamische Klassifikation (1)
- e-Learning (1)
- eGovernment (1)
- educational reconstruction (1)
- eingebettete Systeme (1)
- einseitige Kommunikation (1)
- email spam detection (1)
- embedded systems (1)
- emotion (1)
- emotion representation (1)
- emotion research (1)
- enterprise search (1)
- entity alignment (1)
- error correction (1)
- error detection (1)
- evidence theory (1)
- external memory algorithms (1)
- eye movements (1)
- face tracking (1)
- facial expression (1)
- flow-based bilateral filter (1)
- formalism (1)
- game based learning (1)
- generalization (1)
- geometry generation (1)
- geospatial data (1)
- geospatial services (1)
- geovisualization (1)
- grammar inference (1)
- graph clustering (1)
- graph-based ranking (1)
- hardware design (1)
- hardware-software-codesign (1)
- higher education (1)
- hybrid (1)
- hybrid semantic search (1)
- hybride semantische Suche (1)
- hybrides Problemlösen (1)
- image (1)
- image data analysis (1)
- incompleteness (1)
- inconsistency (1)
- independent component analysis (1)
- indirect economic impacts (1)
- indirekte ökonomische Effekte (1)
- informatics (1)
- information extraction (1)
- information retrieval (1)
- informatische Bildung im Sekundarbereich (1)
- input accuracy (1)
- interaction modeling (1)
- interaction techniques (1)
- intuition (1)
- kernel PCA (1)
- kernel methods (1)
- konvergente Dienste (1)
- landmarks (1)
- language design (1)
- linear code (1)
- linearer Code (1)
- logic (1)
- logic programming (1)
- logic synthesis (1)
- logical signaling networks (1)
- logische Ergänzung (1)
- logische Programmierung (1)
- logische Signalnetzwerke (1)
- macro-economic modelling (1)
- makroökonomische Modellierung (1)
- malware detection (1)
- map/reduce (1)
- maschninelles Lernen (1)
- mathematics education (1)
- medical (1)
- medizinisch (1)
- meta model (1)
- middleware (1)
- misconception (1)
- mixture models (1)
- mobile devices (1)
- model-based (1)
- model-driven architecture (1)
- modeling (1)
- molecular networks (1)
- molekulare Netzwerke (1)
- multi core data processing (1)
- multi-class classification (1)
- networks-on-chip (1)
- neue Online-Fehlererkennungsmethode (1)
- nichtlineare ICA (1)
- nichtlineare PCA (NLPCA) (1)
- nichtlineare Projektionen (1)
- nonlinear ICA (1)
- nonlinear PCA (NLPCA) (1)
- nonlinear projections (1)
- objective difficulty (1)
- on-chip (1)
- one-sided communication (1)
- oneM2M (1)
- online assistance (1)
- ontologies (1)
- open source (1)
- optimization (1)
- outlier detection (1)
- output space compaction (1)
- overcomplete ICA (1)
- parallel programming (1)
- parallel solving (1)
- parallele Programmierung (1)
- paralleles Lösen (1)
- pattern recognition (1)
- perception (1)
- perception differences (1)
- philosophy of mathematics (1)
- physical Computing (1)
- physical computing (1)
- placement (1)
- prediction (1)
- preferences (1)
- priorities (1)
- probabilistic deep learning (1)
- probabilistic deep metric learning (1)
- probabilistische tiefe neuronale Netze (1)
- probabilistisches tiefes metrisches Lernen (1)
- process (1)
- process improvement (1)
- process model (1)
- process modelling (1)
- process synchronization (1)
- professors (1)
- proof (1)
- proof assistant (1)
- proof environment (1)
- propagation probability (1)
- radiation hardness (1)
- radiation hardness design (1)
- reconfiguration (1)
- rekonfigurierbar (1)
- reliability assessment (1)
- repair (1)
- robust ICA (1)
- robuste ICA (1)
- scheduling (1)
- scientific workflows (1)
- secondary computer science education (1)
- segmentation (1)
- selbstanpassendes Multiprozessorsystem (1)
- selbstprüfende Schaltungen (1)
- self-adaptive multiprocessing system (1)
- semantic domain modeling (1)
- semantic ranking (1)
- semantic search (1)
- semantic search evaluation (1)
- semantic search methods (1)
- semantische Domänenmodellierung (1)
- semantische Suche (1)
- semantisches Netz (1)
- semantisches Ranking (1)
- service composition (1)
- sign language (1)
- single event upset (1)
- skeletonization (1)
- software (1)
- software development (1)
- software engineering (1)
- software-based cache coherence (1)
- solar particle event (1)
- speed independence (1)
- strahleninduzierte Einzelereignis-Effekte (1)
- structured output prediction (1)
- strukturierte Vorhersage (1)
- study problems (1)
- stylization (1)
- synthesis (1)
- tactic (1)
- teachers (1)
- temporary binding (1)
- terrain models (1)
- tools for teaching (1)
- topics (1)
- touch input (1)
- transformation (1)
- tutorial section (1)
- user interfaces (1)
- verification (1)
- virtual machine (1)
- weather extremes (1)
- zero-aliasing (1)
- überbestimmte ICA (1)
Cloud computing is a model for enabling on-demand access to a shared pool of computing resources. With virtually limitless on-demand resources, a cloud environment enables the hosted Internet application to quickly cope when there is an increase in the workload. However, the overhead of provisioning resources exposes the Internet application to periods of under-provisioning and performance degradation. Moreover, the performance interference, due to the consolidation in the cloud environment, complicates the performance management of the Internet applications. In this dissertation, we propose two approaches to mitigate the impact of the resources provisioning overhead. The first approach employs control theory to scale resources vertically and cope fast with workload. This approach assumes that the provider has knowledge and control over the platform running in the virtual machines (VMs), which limits it to Platform as a Service (PaaS) and Software as a Service (SaaS) providers. The second approach is a customer-side one that deals with the horizontal scalability in an Infrastructure as a Service (IaaS) model. It addresses the trade-off problem between cost and performance with a multi-goal optimization solution. This approach finds the scale thresholds that achieve the highest performance with the lowest increase in the cost. Moreover, the second approach employs a proposed time series forecasting algorithm to scale the application proactively and avoid under-utilization periods. Furthermore, to mitigate the interference impact on the Internet application performance, we developed a system which finds and eliminates the VMs suffering from performance interference. The developed system is a light-weight solution which does not imply provider involvement. To evaluate our approaches and the designed algorithms at large-scale level, we developed a simulator called (ScaleSim). In the simulator, we implemented scalability components acting as the scalability components of Amazon EC2. The current scalability implementation in Amazon EC2 is used as a reference point for evaluating the improvement in the scalable application performance. ScaleSim is fed with realistic models of the RUBiS benchmark extracted from the real environment. The workload is generated from the access logs of the 1998 world cup website. The results show that optimizing the scalability thresholds and adopting proactive scalability can mitigate 88% of the resources provisioning overhead impact with only a 9% increase in the cost.
With the rise of electronic integration between organizations, the need for a precise specification of interaction behavior increases. Information systems, replacing interaction previously carried out by humans via phone, faxes and emails, require a precise specification for handling all possible situations. Such interaction behavior is described in process choreographies. Choreographies enumerate the roles involved, the allowed interactions, the message contents and the behavioral dependencies between interactions. Choreographies serve as interaction contract and are the starting point for adapting existing business processes and systems or for implementing new software components. As a thorough analysis and comparison of choreography modeling languages is missing in the literature, this thesis introduces a requirements framework for choreography languages and uses it for comparing current choreography languages. Language proposals for overcoming the limitations are given for choreography modeling on the conceptual and on the technical level. Using an interconnection modeling style, behavioral dependencies are defined on a per-role basis and different roles are interconnected using message flow. This thesis reveals a number of modeling "anti-patterns" for interconnection modeling, motivating further investigations on choreography languages following the interaction modeling style. Here, interactions are seen as atomic building blocks and the behavioral dependencies between them are defined globally. Two novel language proposals are put forward for this modeling style which have already influenced industrial standardization initiatives. While avoiding many of the pitfalls of interconnection modeling, new anomalies can arise in interaction models. A choreography might not be realizable, i.e. there does not exist a set of interacting roles that collectively realize the specified behavior. This thesis investigates different dimensions of realizability.
Forschendes Lernen und die digitale Transformation sind zwei der wichtigsten Einflüsse auf die Entwicklung der Hochschuldidaktik im deutschprachigen Raum. Während das forschende Lernen als normative Theorie das sollen beschreibt, geben die digitalen Werkzeuge, alte wie neue, das können in vielen Bereichen vor.
In der vorliegenden Arbeit wird ein Prozessmodell aufgestellt, was den Versuch unternimmt, das forschende Lernen hinsichtlich interaktiver, gruppenbasierter Prozesse zu systematisieren. Basierend auf dem entwickelten Modell wurde ein Softwareprototyp implementiert, der den gesamten Forschungsprozess begleiten kann. Dabei werden Gruppenformation, Feedback- und Reflexionsprozesse und das Peer Assessment mit Bildungstechnologien unterstützt. Die Entwicklungen wurden in einem qualitativen Experiment eingesetzt, um Systemwissen über die Möglichkeiten und Grenzen der digitalen Unterstützung von forschendem Lernen zu gewinnen.
Services that operate over the Internet are under constant threat of being exposed to fraudulent use. Maintaining good user experience for legitimate users often requires the classification of entities as malicious or legitimate in order to initiate countermeasures. As an example, inbound email spam filters decide for spam or non-spam. They can base their decision on both the content of each email as well as on features that summarize prior emails received from the sending server. In general, discriminative classification methods learn to distinguish positive from negative entities. Each decision for a label may be based on features of the entity and related entities. When labels of related entities have strong interdependencies---as can be assumed e.g. for emails being delivered by the same user---classification decisions should not be made independently and dependencies should be modeled in the decision function. This thesis addresses the formulation of discriminative classification problems that are tailored for the specific demands of the following three Internet security applications. Theoretical and algorithmic solutions are devised to protect an email service against flooding of user inboxes, to mitigate abusive usage of outbound email servers, and to protect web servers against distributed denial of service attacks.
In the application of filtering an inbound email stream for unsolicited emails, utilizing features that go beyond each individual email's content can be valuable. Information about each sending mail server can be aggregated over time and may help in identifying unwanted emails. However, while this information will be available to the deployed email filter, some parts of the training data that are compiled by third party providers may not contain this information. The missing features have to be estimated at training time in order to learn a classification model. In this thesis an algorithm is derived that learns a decision function that integrates over a distribution of values for each missing entry. The distribution of missing values is a free parameter that is optimized to learn an optimal decision function.
The outbound stream of emails of an email service provider can be separated by the customer IDs that ask for delivery. All emails that are sent by the same ID in the same period of time are related, both in content and in label. Hijacked customer accounts may send batches of unsolicited emails to other email providers, which in turn might blacklist the sender's email servers after detection of incoming spam emails. The risk of being blocked from further delivery depends on the rate of outgoing unwanted emails and the duration of high spam sending rates. An optimization problem is developed that minimizes the expected cost for the email provider by learning a decision function that assigns a limit on the sending rate to customers based on the each customer's email stream.
Identifying attacking IPs during HTTP-level DDoS attacks allows to block those IPs from further accessing the web servers. DDoS attacks are usually carried out by infected clients that are members of the same botnet and show similar traffic patterns. HTTP-level attacks aim at exhausting one or more resources of the web server infrastructure, such as CPU time. If the joint set of attackers cannot increase resource usage close to the maximum capacity, no effect will be experienced by legitimate users of hosted web sites. However, if the additional load raises the computational burden towards the critical range, user experience will degrade until service may be unavailable altogether. As the loss of missing one attacker depends on block decisions for other attackers---if most other attackers are detected, not blocking one client will likely not be harmful---a structured output model has to be learned. In this thesis an algorithm is developed that learns a structured prediction decoder that searches the space of label assignments, guided by a policy.
Each model is evaluated on real-world data and is compared to reference methods. The results show that modeling each classification problem according to the specific demands of the task improves performance over solutions that do not consider the constraints inherent to an application.
Gerade in den letzten Jahren erfuhr Open Source Software (OSS) eine zunehmende Verbreitung und Popularität und hat sich in verschiedenen Anwendungsdomänen etabliert. Die Prozesse, welche sich im Kontext der OSS-Entwicklung (auch: OSSD – Open Source Software-Development) evolutionär herausgebildet haben, weisen in den verschiedenen OSS-Entwicklungsprojekten z.T. ähnliche Eigenschaften und Strukturen auf und auch die involvierten Entitäten, wie z.B. Artefakte, Rollen oder Software-Werkzeuge sind weitgehend miteinander vergleichbar. Dies motiviert den Gedanken, ein verallgemeinerbares Modell zu entwickeln, welches die generalisierbaren Entwicklungsprozesse im Kontext von OSS zu einem übertragbaren Modell abstrahiert. Auch in der Wissenschaftsdisziplin des Software Engineering (SE) wurde bereits erkannt, dass sich der OSSD-Ansatz in verschiedenen Aspekten erheblich von klassischen (proprietären) Modellen des SE unterscheidet und daher diese Methoden einer eigenen wissenschaftlichen Betrachtung bedürfen. In verschiedenen Publikationen wurden zwar bereits einzelne Aspekte der OSS-Entwicklung analysiert und Theorien über die zugrundeliegenden Entwicklungsmethoden formuliert, aber es existiert noch keine umfassende Beschreibung der typischen Prozesse der OSSD-Methodik, die auf einer empirischen Untersuchung existierender OSS-Entwicklungsprojekte basiert. Da dies eine Voraussetzung für die weitere wissenschaftliche Auseinandersetzung mit OSSD-Prozessen darstellt, wird im Rahmen dieser Arbeit auf der Basis vergleichender Fallstudien ein deskriptives Modell der OSSD-Prozesse hergeleitet und mit Modellierungselementen der UML formalisiert beschrieben. Das Modell generalisiert die identifizierten Prozesse, Prozessentitäten und Software-Infrastrukturen der untersuchten OSSD-Projekte. Es basiert auf einem eigens entwickelten Metamodell, welches die zu analysierenden Entitäten identifiziert und die Modellierungssichten und -elemente beschreibt, die zur UML-basierten Beschreibung der Entwicklungsprozesse verwendet werden. In einem weiteren Arbeitsschritt wird eine weiterführende Analyse des identifizierten Modells durchgeführt, um Implikationen, und Optimierungspotentiale aufzuzeigen. Diese umfassen beispielsweise die ungenügende Plan- und Terminierbarkeit von Prozessen oder die beobachtete Tendenz von OSSD-Akteuren, verschiedene Aktivitäten mit unterschiedlicher Intensität entsprechend der subjektiv wahrgenommenen Anreize auszuüben, was zur Vernachlässigung einiger Prozesse führt. Anschließend werden Optimierungszielstellungen dargestellt, die diese Unzulänglichkeiten adressieren, und ein Optimierungsansatz zur Verbesserung des OSSD-Modells wird beschrieben. Dieser Ansatz umfasst die Erweiterung der identifizierten Rollen, die Einführung neuer oder die Erweiterung bereits identifizierter Prozesse und die Modifikation oder Erweiterung der Artefakte des generalisierten OSS-Entwicklungsmodells. Die vorgestellten Modellerweiterungen dienen vor allem einer gesteigerten Qualitätssicherung und der Kompensation von vernachlässigten Prozessen, um sowohl die entwickelte Software- als auch die Prozessqualität im OSSD-Kontext zu verbessern. Desweiteren werden Softwarefunktionalitäten beschrieben, welche die identifizierte bestehende Software-Infrastruktur erweitern und eine gesamtheitlichere, softwaretechnische Unterstützung der OSSD-Prozesse ermöglichen sollen. Abschließend werden verschiedene Anwendungsszenarien der Methoden des OSS-Entwicklungsmodells, u.a. auch im kommerziellen SE, identifiziert und ein Implementierungsansatz basierend auf der OSS GENESIS vorgestellt, der zur Implementierung und Unterstützung des OSSD-Modells verwendet werden kann.
The goal of a Brain-Computer Interface (BCI) consists of the development of a unidirectional interface between a human and a computer to allow control of a device only via brain signals. While the BCI systems of almost all other groups require the user to be trained over several weeks or even months, the group of Prof. Dr. Klaus-Robert Müller in Berlin and Potsdam, which I belong to, was one of the first research groups in this field which used machine learning techniques on a large scale. The adaptivity of the processing system to the individual brain patterns of the subject confers huge advantages for the user. Thus BCI research is considered a hot topic in machine learning and computer science. It requires interdisciplinary cooperation between disparate fields such as neuroscience, since only by combining machine learning and signal processing techniques based on neurophysiological knowledge will the largest progress be made. In this work I particularly deal with my part of this project, which lies mainly in the area of computer science. I have considered the following three main points: <b>Establishing a performance measure based on information theory:</b> I have critically illuminated the assumptions of Shannon's information transfer rate for application in a BCI context. By establishing suitable coding strategies I was able to show that this theoretical measure approximates quite well to what is practically achieveable. <b>Transfer and development of suitable signal processing and machine learning techniques:</b> One substantial component of my work was to develop several machine learning and signal processing algorithms to improve the efficiency of a BCI. Based on the neurophysiological knowledge that several independent EEG features can be observed for some mental states, I have developed a method for combining different and maybe independent features which improved performance. In some cases the performance of the combination algorithm outperforms the best single performance by more than 50 %. Furthermore, I have theoretically and practically addressed via the development of suitable algorithms the question of the optimal number of classes which should be used for a BCI. It transpired that with BCI performances reported so far, three or four different mental states are optimal. For another extension I have combined ideas from signal processing with those of machine learning since a high gain can be achieved if the temporal filtering, i.e., the choice of frequency bands, is automatically adapted to each subject individually. <b>Implementation of the Berlin brain computer interface and realization of suitable experiments:</b> Finally a further substantial component of my work was to realize an online BCI system which includes the developed methods, but is also flexible enough to allow the simple realization of new algorithms and ideas. So far, bitrates of up to 40 bits per minute have been achieved with this system by absolutely untrained users which, compared to results of other groups, is highly successful.
In order to face the rapidly increasing need for computational resources of various scientific and engineering applications one has to think of new ways to make more efficient use of the worlds current computational resources. In this respect, the growing speed of wide area networks made a new kind of distributed computing possible: Metacomputing or (distributed) Grid computing. This is a rather new and uncharted field in computational science. The rapidly increasing speed of networks even outperforms the average increase of processor speed: Processor speeds double on average each 18 month whereas network bandwidths double every 9 months. Due to this development of local and wide area networks Grid computing will certainly play a key role in the future of parallel computing. This type of distributed computing, however, distinguishes from the traditional parallel computing in many ways since it has to deal with many problems not occurring in classical parallel computing. Those problems are for example heterogeneity, authentication and slow networks to mention only a few. Some of those problems, e.g. the allocation of distributed resources along with the providing of information about these resources to the application have been already attacked by the Globus software. Unfortunately, as far as we know, hardly any application or middle-ware software takes advantage of this information, since most parallelizing algorithms for finite differencing codes are implicitly designed for single supercomputer or cluster execution. We show that although it is possible to apply classical parallelizing algorithms in a Grid environment, in most cases the observed efficiency of the executed code is very poor. In this work we are closing this gap. In our thesis, we will - show that an execution of classical parallel codes in Grid environments is possible but very slow - analyze this situation of bad performance, nail down bottlenecks in communication, remove unnecessary overhead and other reasons for low performance - develop new and advanced algorithms for parallelisation that are aware of a Grid environment in order to generelize the traditional parallelization schemes - implement and test these new methods, replace and compare with the classical ones - introduce dynamic strategies that automatically adapt the running code to the nature of the underlying Grid environment. The higher the performance one can achieve for a single application by manual tuning for a Grid environment, the lower the chance that those changes are widely applicable to other programs. In our analysis as well as in our implementation we tried to keep the balance between high performance and generality. None of our changes directly affect code on the application level which makes our algorithms applicable to a whole class of real world applications. The implementation of our work is done within the Cactus framework using the Globus toolkit, since we think that these are the most reliable and advanced programming frameworks for supporting computations in Grid environments. On the other hand, however, we tried to be as general as possible, i.e. all methods and algorithms discussed in this thesis are independent of Cactus or Globus.
Modern biological analysis techniques supply scientists with various forms of data. One category of such data are the so called "expression data". These data indicate the quantities of biochemical compounds present in tissue samples. Recently, expression data can be generated at a high speed. This leads in turn to amounts of data no longer analysable by classical statistical techniques. Systems biology is the new field that focuses on the modelling of this information. At present, various methods are used for this purpose. One superordinate class of these methods is machine learning. Methods of this kind had, until recently, predominantly been used for classification and prediction tasks. This neglected a powerful secondary benefit: the ability to induce interpretable models. Obtaining such models from data has become a key issue within Systems biology. Numerous approaches have been proposed and intensively discussed. This thesis focuses on the examination and exploitation of one basic technique: decision trees. The concept of comparing sets of decision trees is developed. This method offers the possibility of identifying significant thresholds in continuous or discrete valued attributes through their corresponding set of decision trees. Finding significant thresholds in attributes is a means of identifying states in living organisms. Knowing about states is an invaluable clue to the understanding of dynamic processes in organisms. Applied to metabolite concentration data, the proposed method was able to identify states which were not found with conventional techniques for threshold extraction. A second approach exploits the structure of sets of decision trees for the discovery of combinatorial dependencies between attributes. Previous work on this issue has focused either on expensive computational methods or the interpretation of single decision trees a very limited exploitation of the data. This has led to incomplete or unstable results. That is why a new method is developed that uses sets of decision trees to overcome these limitations. Both the introduced methods are available as software tools. They can be applied consecutively or separately. That way they make up a package of analytical tools that usefully supplement existing methods. By means of these tools, the newly introduced methods were able to confirm existing knowledge and to suggest interesting and new relationships between metabolites.
This thesis presents an attempt to use source code synthesised from Coq formalisations of device drivers for existing (micro)kernel operating systems, with a particular focus on the Linux Kernel.
In the first part, the technical background and related work are described. The focus is here on the possible approaches to synthesising certified software with Coq, namely the extraction to functional languages using the Coq extraction plugin and the extraction to Clight code using the CertiCoq plugin. It is noted that the implementation of CertiCoq is verified, whereas this is not the case for the Coq extraction plugin. Consequently, there is a correctness guarantee for the generated Clight code which does not hold for the code being generated by the Coq extraction plugin. Furthermore, the differences between user space and kernel space software are discussed in relation to Linux device drivers. It is elaborated that it is not possible to generate working Linux kernel module components using the Coq extraction plugin without significant modifications. In contrast, it is possible to produce working user space drivers both with the Coq extraction plugin and CertiCoq. The subsequent parts describe the main contributions of the thesis.
In the second part, it is demonstrated how to extend the Coq extraction plugin to synthesise foreign function calls between the functional language OCaml and the imperative language C. This approach has the potential to improve the type-safety of user space drivers. Furthermore, it is shown that the code being synthesised by CertiCoq cannot be used in kernel space without modifications to the necessary runtime. Consequently, the necessary modifications to the runtimes of CertiCoq and VeriFFI are introduced, resulting in the runtimes becoming compatible components of a Linux kernel module. Furthermore, justifications for the transformations are provided and possible further extensions to both plugins and solutions to failing garbage collection calls in kernel space are discussed.
The third part presents a proof of concept device driver for the Linux Kernel. To achieve this, the event handler of the original PC Speaker driver is partially formalised in Coq. Furthermore, some relevant formal properties of the formalised functionality are discussed. Subsequently, a kernel module is defined, utilising the modified variants of CertiCoq and VeriFFI to compile a working device driver. It is furthermore shown that it is possible to compile the synthesised code with CompCert, thereby extending the guarantee of correctness to the assembly layer. This is followed by a performance evaluation that compares a naive formalisation of the PC speaker functionality with the original PC Speaker driver pointing out the weaknesses in the formalisation and possible improvements. The part closes with a summary of the results, their implications and open questions being raised.
The last part lists all used sources, separated into scientific literature, documentations or reference manuals and artifacts, i.e. source code.
Answer Set Programming (ASP) is an emerging paradigm for declarative programming, in which a computational problem is specified by a logic program such that particular models, called answer sets, match solutions. ASP faces a growing range of applications, demanding for high-performance tools able to solve complex problems. ASP integrates ideas from a variety of neighboring fields. In particular, automated techniques to search for answer sets are inspired by Boolean Satisfiability (SAT) solving approaches. While the latter have firm proof-theoretic foundations, ASP lacks formal frameworks for characterizing and comparing solving methods. Furthermore, sophisticated search patterns of modern SAT solvers, successfully applied in areas like, e.g., model checking and verification, are not yet established in ASP solving. We address these deficiencies by, for one, providing proof-theoretic frameworks that allow for characterizing, comparing, and analyzing approaches to answer set computation. For another, we devise modern ASP solving algorithms that integrate and extend state-of-the-art techniques for Boolean constraint solving. We thus contribute to the understanding of existing ASP solving approaches and their interconnections as well as to their enhancement by incorporating sophisticated search patterns. The central idea of our approach is to identify atomic as well as composite constituents of a propositional logic program with Boolean variables. This enables us to describe fundamental inference steps, and to selectively combine them in proof-theoretic characterizations of various ASP solving methods. In particular, we show that different concepts of case analyses applied by existing ASP solvers implicate mutual exponential separations regarding their best-case complexities. We also develop a generic proof-theoretic framework amenable to language extensions, and we point out that exponential separations can likewise be obtained due to case analyses on them. We further exploit fundamental inference steps to derive Boolean constraints characterizing answer sets. They enable the conception of ASP solving algorithms including search patterns of modern SAT solvers, while also allowing for direct technology transfers between the areas of ASP and SAT solving. Beyond the search for one answer set of a logic program, we address the enumeration of answer sets and their projections to a subvocabulary, respectively. The algorithms we develop enable repetition-free enumeration in polynomial space without being intrusive, i.e., they do not necessitate any modifications of computations before an answer set is found. Our approach to ASP solving is implemented in clasp, a state-of-the-art Boolean constraint solver that has successfully participated in recent solver competitions. Although we do here not address the implementation techniques of clasp or all of its features, we present the principles of its success in the context of ASP solving.