AAU Projects
- U.P. - Job Distribution Network for Mass Computing Projects
- Nubis - A Decentralised, flexible, fault-tolerant and scalable foundation for computational grids
- Optimal Task Graph Scheduling with Binary Decision Diagrams
- How the free software development model can improve productivity
- Heurika - A decentralised shared file system for local area networks
- Simulation Language - specification, verification and implementation
- Defect Tracker
- Neuralt Netværk til tegngenkeldelse
- HTML-kompression
- Kryptering - kunsten at gøre ulæseligt
U.P. - Job Distribution Network for Mass Computing Projects
This thesis describes the design of U.P., a decentralised job
distribution system for mass computing projects. The design is based
on the concept of distributed hash tables, which when combined with
keyword-based indexing and load balancing provides a robust and
scalable peer-to-peer network for mass computing projects to
distribute jobs.
An implementation of the system is developed in C++ for the p2psim simulator. Realistic and synthetic tests of the implementation are conducted to explore the intrusiveness, scalability and robustness, with promising results, although a few problems remain.
Hence, we conclude that a decentralised architecture can be a viable alternative to the currently deployed centralised designs with better scalability, high availability and easier and cheaper deployment for new projects. We also believe that the decentralised architecture can be used to provide the foundation of a more general computational grid.
An implementation of the system is developed in C++ for the p2psim simulator. Realistic and synthetic tests of the implementation are conducted to explore the intrusiveness, scalability and robustness, with promising results, although a few problems remain.
Hence, we conclude that a decentralised architecture can be a viable alternative to the currently deployed centralised designs with better scalability, high availability and easier and cheaper deployment for new projects. We also believe that the decentralised architecture can be used to provide the foundation of a more general computational grid.
top
Nubis - A Decentralised, flexible, fault-tolerant and scalable foundation for computational grids
This report describes the design of Nubis, a decentralised, flexible,
fault-tolerant and scalable foundation for computational grids. The
design is based on a distributed file system with support for access
control, mutual excluion and notification of file changes. The
distributed file system is based on the concept of distributed hash
tables, resulting in a scalable, robust information service. On top of
this, the report describes the design of a data service and outlines
the design of grid resource and user components.
A prototype implementation of the information service is developed in C++ and tested. The tests are performed with a network of 994 participating nodes and are mostly promising.
The design is in its infancy and there are many unanswered questions that the report does not address, in particular with respect to the resource components and scheduling. However, the design is robust compared to the currently deployed grids, and also appears to be more scalable and flexible.
A prototype implementation of the information service is developed in C++ and tested. The tests are performed with a network of 994 participating nodes and are mostly promising.
The design is in its infancy and there are many unanswered questions that the report does not address, in particular with respect to the resource components and scheduling. However, the design is robust compared to the currently deployed grids, and also appears to be more scalable and flexible.
top
Optimal Task Graph Scheduling with Binary Decision Diagrams
In this paper, we represent the task graph scheduling problem with
uniform processors and arbitrary task execution times with BDDs and
devise a breadth-first search and an A*-based algorithm for finding
optimal schedules. The representation is chosen to minimise the state
BDD sizes, and the transition relations are partitioned to reduce the
computation time and allow optimisations based on analysis of the task
graphs. The empirical results show that guiding the search with an A
approach is difficult in practice, but that the breadth-first search
works very well with graphs with many dependencies.
top
How the free software development model can improve productivity
Free software has been around for more than 20 years and has
had a profound impact on how software is developed. Everything from
small scripts to very large pro jects, like the Linux kernel and
Ximian Evolution consisting of several million lines of code, have
been developed as free software.
This essay will examine how crafting software as free software improves productivity compared to proprietary software development methods.
This essay will examine how crafting software as free software improves productivity compared to proprietary software development methods.
top
Heurika - A decentralised shared file system for local area networks
This report describes the development of Heurika, a distributed shared
file system for local area networks. With Heurika, every client in a
network contributes to the shared file system in a peer-to-peer
manner to avoid the bottleneck and single point of failure that
plagues traditional centralised shared file systems.
A design for a decentralised peer-to-peer file system is presented and its characteristics theoretically analysed. Then a prototype of the design implemented in C++ is described and experiments in a simulated network with 96 peers presented.
The theoretical and the empirical results indicate that Heurika can provide better availability and scale better than a centralised shared file system.
A design for a decentralised peer-to-peer file system is presented and its characteristics theoretically analysed. Then a prototype of the design implemented in C++ is described and experiments in a simulated network with 96 peers presented.
The theoretical and the empirical results indicate that Heurika can provide better availability and scale better than a centralised shared file system.
top
Simulation Language - specification, verification and implementation
A simulation language with a syntax similar to the C family is
designed and its formal semantics defined. A translation to Java
virtual machine assembler is then specified, and proved to preserve
the high-level semantics. Finally, an actual implementation of the
compiler is presented.
top
Defect Tracker
This report documents the development of an administration system,
Defect Tracker, for reporting, tracking and managing software defects.
It has been developed using the OOA&D method, and implemented with
Java beans, server pages and servlets running on a Jakarta Tomcat
server.
The study report reflects on the analysis, design and test phases, and look into the algorithmic problem of efficient string matching which is needed by a function in the system for highlighting search words.
The study report reflects on the analysis, design and test phases, and look into the algorithmic problem of efficient string matching which is needed by a function in the system for highlighting search words.
top
Neuralt Netværk til tegngenkeldelse
Et af de områder hvor neurale netværk udmærker sig er tegngenkendelse
som har fundet anvendelse på håndholdte computere. I rapporten
undersøges mulighederne for at anvende et fremadførende neuralt
netværk til at genkende enkeltstående håndskrevne tegn. Optrænet med
fejlfunktionen sum af kvadrater vil dette netværk maksimere
sandsynligheden for rigtig klassifikation. Netværket implementeres i
C++, og der indsamles et dataset til test.
For at kunne udføre testene undersøges den empiriske metode, som bygger på en positivistik tankegang om at kun det som kan sanses, kan bidrage med viden. Ved hjælp af den empiriske metode kan man udføre eksperimenter og opnå pålidelige konklusioner der dog ikke er garanteret at være korrekte generelt.
To former for forbehandling undersøges, centrering og skalering. Anvendelse af disse viser sig at være væsentlige. Til at optræne netværket undersøges to algoritmer, en simpel gradientnedstigning og konjugeret gradient som er en mere advanceret algoritme - det viser sig dog at gradientnedstigning er hurtigst. Efter at have fundet størrelsen på det optimale netværk, testes der om en eftertræning af netværket på en bestemt testperson øger genkendelsesprocenten. Dette viser sig at være tilfældet; 92.3% uden eftertræning og 99.3% med eftertræning.
For at kunne udføre testene undersøges den empiriske metode, som bygger på en positivistik tankegang om at kun det som kan sanses, kan bidrage med viden. Ved hjælp af den empiriske metode kan man udføre eksperimenter og opnå pålidelige konklusioner der dog ikke er garanteret at være korrekte generelt.
To former for forbehandling undersøges, centrering og skalering. Anvendelse af disse viser sig at være væsentlige. Til at optræne netværket undersøges to algoritmer, en simpel gradientnedstigning og konjugeret gradient som er en mere advanceret algoritme - det viser sig dog at gradientnedstigning er hurtigst. Efter at have fundet størrelsen på det optimale netværk, testes der om en eftertræning af netværket på en bestemt testperson øger genkendelsesprocenten. Dette viser sig at være tilfældet; 92.3% uden eftertræning og 99.3% med eftertræning.
Download: ps
top
HTML-kompression
I denne rapport beskæftiger vi os med kompression af HTML. Dels fra en
teoretisk syns- vinkel i form af informationsteori, dels fra en mere
konkret synsvinkel i form af en gennemgang af generelle algoritmer der
kan bruges til at komprimere HTML-sider. Vi undersøger desuden om man
kan udnytte nogle af egen- skaberne ved HTML til at skabe en mere
effektiv, specifik algoritme.
Grunden til at HTML-kompression er interessant, skyldes at mængden af internettrafik vokser støt mens udbyderne ønsker at spare penge på stadigt voksende forbindelser, og brugerne ønsker en bedre internetoplevelse. Kompression af HTML har potentialet til at hjælpe på dette fordi HTML-sider kan komprimeres effektivt, ligesom billeder, lyd, video og software der allerede komprimeres rutinemæssigt. Spørgsmålet er om potentialet er stort nok. Og om behovet er stort nok.
Grunden til at HTML-kompression er interessant, skyldes at mængden af internettrafik vokser støt mens udbyderne ønsker at spare penge på stadigt voksende forbindelser, og brugerne ønsker en bedre internetoplevelse. Kompression af HTML har potentialet til at hjælpe på dette fordi HTML-sider kan komprimeres effektivt, ligesom billeder, lyd, video og software der allerede komprimeres rutinemæssigt. Spørgsmålet er om potentialet er stort nok. Og om behovet er stort nok.
top
Kryptering - kunsten at gøre ulæseligt
Kryptering handler om at holde data hemmelige for
uvedkommende. Der findes flere forskellige metoder at kryptere med. I
denne rapport gennemgåes ROT13 og XOR samt DES og RSA som er to af
de mest brugte metoder i dag.
DES og RSA repræsenterer hver for sig to forskellige paradigmer inden for kryptologien; DES som et konventionelt system med symmetriske, private nøgler og RSA som et moderne system hvor en nøgle offentligøres og dermed tillader signering og vilkårlige sikre forbindelser over ellers usikre kanaler som internettet.
Udviklingen inden for kryptologi har gjort at ubrydelige kryptosystemer nu kan være hvermandseje. Dette udmønter sig i sammenstød mellem modstridende interesser og har medført forsøg på lovgivning på området. Lovgivninger som rejser etiske spørgsmål og som i praksis ikke har virket.
DES og RSA repræsenterer hver for sig to forskellige paradigmer inden for kryptologien; DES som et konventionelt system med symmetriske, private nøgler og RSA som et moderne system hvor en nøgle offentligøres og dermed tillader signering og vilkårlige sikre forbindelser over ellers usikre kanaler som internettet.
Udviklingen inden for kryptologi har gjort at ubrydelige kryptosystemer nu kan være hvermandseje. Dette udmønter sig i sammenstød mellem modstridende interesser og har medført forsøg på lovgivning på området. Lovgivninger som rejser etiske spørgsmål og som i praksis ikke har virket.
top