Editing Google Summer of Code 2019 Accepted projects

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 9: Line 9:
 
It is expected that the project will deliver a well-tested version of UMLGraph built around  the new jdk.javadoc.doclet Doclet API with support for Java features such as Lambdas and Generics.
 
It is expected that the project will deliver a well-tested version of UMLGraph built around  the new jdk.javadoc.doclet Doclet API with support for Java features such as Lambdas and Generics.
  
==== GSOC 2019 Project Repository ====
+
==== Related Repositories ====
https://github.com/eellak/gsoc2019-UMLGraph
+
https://github.com/dspinellis/UMLGraph
  
 
==== Knowledge Prerequisites ====
 
==== Knowledge Prerequisites ====
Line 17: Line 17:
 
==== Mentors:  ====
 
==== Mentors:  ====
 
[https://github.com/dspinellis Diomidis Spinellis], [https://www.csd.auth.gr/en/staff/faculty?view=user&ro=1&id=14 Stamelos Ioannis]
 
[https://github.com/dspinellis Diomidis Spinellis], [https://www.csd.auth.gr/en/staff/faculty?view=user&ro=1&id=14 Stamelos Ioannis]
 +
 +
 +
== <br>  API Design Tool ==
 +
 +
=== Mentor Organisation: National Bank Of Greece ===
 +
 +
==== Brief Explanation: ====
 +
In the new world of “API Design First Approach” there is a need for a tool that can be used from both business or developer people to design the APIs. There are tools/IDE in the market at the moment that claim to fit this need but none has all the features required for the job.
 +
                                               
 +
 +
==== Related GitHub repositories ====
 +
There is no project URL at the moment.
 +
 +
==== Expected Results ====
 +
 +
** The API Design tool should fulfill the following requirements:
 +
** A person with no developer skills to be able to design/create an API visually.
 +
** A developer to be able to design the API manually by writing/editing the swagger file.
 +
** To be able to sync bidirectional changes to the API swagger file between the tool and a GitHub repository.
 +
** To be able to download the API in a swagger yaml or json file (resolved or unresolved format).
 +
** To be able to generate the API server stub in c#.
 +
** To be able to preview the documentation of the API.
 +
** To be able to download the documentation of the API.
 +
** To be able to mock the API functionality.
 +
** To be able to organize the APIs in projects and Teams.
 +
** To be able to invite other people to collaborate with the API design.
 +
** To be able to assign specific rights/roles to the people designing/viewing the the API.
 +
** To be able to make public or private an API.
 +
** To be able to create OAS2 and OAS3 APIs or convert between them.
 +
** To be able to view at a glance what were the last changes and who made them.
 +
 +
==== Knowledge Prerequisites ====
 +
AngularJS or ReactJS (latest stable version)
 +
C#
 +
 +
==== Mentors:  ====
 +
[mailto:bogdos.nikos@nbg.gr Bogdos Nikos], 
 +
[mailto:gkozntari.stamatia@nbg.gr Gkozntari Stamatia],
 +
[mailto:dkoliar@nbg.gr Koliarmou Despina],
 +
[mailto:agapitou.flora@nbg.gr Agapitou Flora].
  
 
== Greek Government Gazette text mining, cross-linking, and codification - 3gm ==
 
== Greek Government Gazette text mining, cross-linking, and codification - 3gm ==
Line 50: Line 90:
 
6. Possibility of interactive corrections of the structure and responsibilities derived from the NER & Metadata Extraction of the Greek Government Gazette
 
6. Possibility of interactive corrections of the structure and responsibilities derived from the NER & Metadata Extraction of the Greek Government Gazette
  
==== GSOC 2019 Project Repository ====
+
==== Related Repositories ====
https://github.com/eellak/gsoc2019-3gm
+
Source Code: https://github.com/eellak/gsoc2018-3gm
 +
 
 +
<nowiki> </nowiki>Web application: http://3gm.ellak.gr/
  
 
==== Knowledge Prerequisites ====
 
==== Knowledge Prerequisites ====
Line 70: Line 112:
 
[https://github.com/dspinellis Diomidis Spinellis] [https://github.com/papachristoumarios Marios Papachristou]
 
[https://github.com/dspinellis Diomidis Spinellis] [https://github.com/papachristoumarios Marios Papachristou]
  
 +
== Digital signing of grades - UniverSIS (open-sourse student info system) ==
 +
 +
==== <span lang="en-US">Brief Explanation</span> ====
 +
[https://www.universis.gr/ UniverSIS] is a student information system under development by and for the HEI community in Greece. It is built on open schemas and well-defined APIs (check https://www.universis.io/api-docs/ ) with node.js on the back-end and angular on the front-end. It currently has two front-end applications, one for Students and one for Teachers, while a third, regarding the Registrar is underway. We propose the integration of digital signing of grades for the Teachers front-end, which will allow the uploading of grades with cryptographic signing through hardware token devices. A previous implementation is in production at sis.auth.gr and supports only Chrome browsers through a custom plugin to allow the signing of a checksum through a usb cryptotoken device.
 +
==== <span lang="en-US">Related GitHub repositories</span> ====
 +
https://gitlab.com/universis/universis-teachers
 +
 +
==== <span lang="en-US">Expected Results</span> ====
 +
 +
The work should produce a solution for protecting the long-term storage of course grades and allow for a posteriori verification of grades derived from the specific instructor. Digital signing of grades can be made available to all HEI in Greece, as all faculty obtain a national academicID (provided by GRNET) with a cryptotoken chip. Ideally, the [https://www.universis.io UniverSIS open-source solution] can be widely deployed and upgrade the security of grade/degree administration in Greek HEI.
 +
 +
==== <span lang="en-US">Knowledge Prerequisites</span> ====
 +
Basic working knowledge of [https://www.openssl.org/ openSSL] [[wikipedia:Digital_signature|digital signing]] methods. Chrome/Firefox browser plugin creation, with [https://developer.chrome.com/extensions/nativeMessaging native messaging] experience desirable.
 +
 +
==== Mentors:====
 +
[https://www.linkedin.com/in/differentreality/ Stella Rouzi] & [https://www.linkedin.com/in/dimitris-daskopoulos-98028815a/ Dimitris Daskopoulos]
 +
 +
== Class and Room Scheduling - UniverSIS (open-source student info system) ==
 +
 +
==== <span lang="en-US">Brief Explanation</span> ====
 +
[https://www.universis.gr/ UniverSIS] is an effort for/by HEI in Greece to develop their own Student Information System. While front-end applications are being developed, the focus is on basic functionality only. We propose the extension of the schema of the [https://www.universis.io/ UniverSIS platform] to include the new models (classrooms, reservations) and the development of the relevant interface in the front end applications (Registrar, Teachers, Students). Basic functionality for making classroom reservations and course class scheduling by the Registrar. The teachers delivering the courses and the students enrolled should be able to view calendars of their scheduled classes. Advanced functionality such as cancellation of class and rescheduling could be implemented as an extra.
 +
 +
A previous implementation of such a system in full production for the Aristotle University of Thessaloniki can be viewed here:
 +
 +
https://class.auth.gr
 +
 +
http://it.auth.gr/el/eUniversity/class
 +
 +
http://it.auth.gr/el/classAdmin
 +
 +
The [https://github.com/auth-it-center/class.auth.gr-front-end code for this fully functional but older application] is based on AngularJS and deeply integrated with custom backend services available at our University. We intend to have a new implementation in Angular 7 integrated into the [https://www.universis.io/ UniverSIS Student Information System framework] and made available as an open-source solution that will provide a realistic alternative to the current aging solution in Greek universities.
 +
 +
==== <span lang="en-US">Related GitHub repositories</span> ====
 +
https://gitlab.com/universis/
 +
 +
==== <span lang="en-US">Expected Results</span> ====
 +
 +
To produce a solution for a university calendar system that allows easy adoption for any Higher Education institution (in Greece and abroad), integrating with an existing student information system (course and faculty assignments) for scheduling of classes and venues.
 +
 +
==== <span lang="en-US">Knowledge Prerequisites</span> ====
 +
Javascript and Angular experience is necessary, as the main front-end application technology for UniverSIS.
 +
 +
==== Mentors:====
 +
[https://www.linkedin.com/in/differentreality/ Stella Rouzi], & [https://www.linkedin.com/in/dimitris-daskopoulos-98028815a/ Dimitris Daskopoulos] Polyxeni Malasioti, Ioannis Feneris
  
 
== Development of a DIY robot kit for educators ==
 
== Development of a DIY robot kit for educators ==
Line 98: Line 184:
 
d) The development of assembly guidelines and the creation of demo scenarios for the class.
 
d) The development of assembly guidelines and the creation of demo scenarios for the class.
  
==== <br> GSOC 2019 Project Repository ====
+
 
https://github.com/eellak/gsoc2019-diyrobot
+
 
 +
==== Related Repositories ====
 +
https://hackaday.io/project/26007-versatile-educational-2wd-robot
  
 
==== Knowledge Prerequisites ====
 
==== Knowledge Prerequisites ====
Line 107: Line 195:
 
[https://www.dit.hua.gr/~varlamis/ Iraklis Varlamis], [https://github.com/tgkarounos Theodoros Karounos]
 
[https://www.dit.hua.gr/~varlamis/ Iraklis Varlamis], [https://github.com/tgkarounos Theodoros Karounos]
  
 +
== Addition of Greek glyphs in Open Source Fonts ==
 +
 +
==== Brief Explanation ====
 +
Many of the Open Source fonts (e.g., available at https://fonts.google.com), do not include glyphs for Greek letters and are therefore useless for using in a Greek environment.
 +
 +
The aim of this project is to improve this situation and add the missing glyphs in the correct Unicode codepoints. The exact set of fonts to be completed will be determined in discussions between the student and the mentor(s).
 +
 +
'''This is not a typical programming project. '''If you have never designed fonts before, it is probably not for you.
  
 +
==== Expected Results ====
 +
Full support for Greek text in a number of Open Source fonts.
 +
 +
==== Knowledge Prerequisites ====
 +
Type design, font technologies. Please note that this is a special project, where coding, in the traditional sense, will not be enough.
 +
 +
==== Mentors: ====
 +
[https://github.com/zvr Alexios Zavras], [https://github.com/irenevl Irene Vlachou] [https://github.com/thynem Εmilios Τheofanous]
  
 
== Development of a Thesis Management System (TMS) ==
 
== Development of a Thesis Management System (TMS) ==
Line 122: Line 226:
 
Thesis subjects must fall under one or more topics, from a list that the department sets and the topic information along with the title, a description and a list of references is stored with each subject.
 
Thesis subjects must fall under one or more topics, from a list that the department sets and the topic information along with the title, a description and a list of references is stored with each subject.
  
When the professor finally decides on the student(s) that will carry out a project, he/she has to propose two more professors from the department or externals that will co-supervise the project.
+
When the profesor finally decides on the student(s) that will carry out a project, he/she has to propose two more professors from the department or externals that will co-supervise the project.
  
 
When all the assignments have been fixed by the administrator of the TMS, they can be exported in a document which can be published on the department web site.
 
When all the assignments have been fixed by the administrator of the TMS, they can be exported in a document which can be published on the department web site.
Line 135: Line 239:
 
In the three months of the project it is expected to have the whole functionality required to support the TMS lifecycle.
 
In the three months of the project it is expected to have the whole functionality required to support the TMS lifecycle.
  
==== GSOC 2019 Project Repository ====
+
==== Related Repositories ====
https://github.com/eellak/gsoc2019-tms
+
https://github.com/redhatcz/Thesis-management-system
  
 
==== Knowledge Prerequisites ====
 
==== Knowledge Prerequisites ====
Line 143: Line 247:
 
==== Mentors:  ====
 
==== Mentors:  ====
 
[https://www.dit.hua.gr/~varlamis/ Iraklis Varlamis], [http://users.ntua.gr/karounos/karounos.html Theodoros Karounos]
 
[https://www.dit.hua.gr/~varlamis/ Iraklis Varlamis], [http://users.ntua.gr/karounos/karounos.html Theodoros Karounos]
 +
 +
== Extraction of Public Administration Organizations structure and assignment of Responsibilities from the Greek Government Gazette ==
 +
 +
=== Brief Explanation ===
 +
The project will expand the project "NER & Metadata Extraction from the Greek Government Gazette"(https://github.com/eellak/gsoc2018-GG-extraction) that has been developed in the last GSoC 2018 and resulted in a software that parses pdf files of the GGZ and automatically classifies its paragraphs to those that contain information about the Organization structure, those that contain Responsibility assignments and those that contain information about the required staff positions.
 +
The project is expected to fix any issues that the existing problem has with pdf file parsing, the classification of paragraphs and human-provided feedback but most important to provide new functionalities, that will extend the existing automatic annotation with entity extraction and codification of the extracted knowledge in a triple like format (e.g. RDF).
 +
 +
==== Expected Results ====
 +
In the three months of the project it is expected to have a systems that takes a pdf as input or a csv annoted per paragraph and produces a file that summarizes the semantics of the Organization and its responsibilities (Departments, positions and responsibilities)
 +
 +
==== Related Repositories ====
 +
 +
https://github.com/eellak/gsoc2018-GG-extraction
 +
 +
==== Knowledge Prerequisites ====
 +
Python, RDF, NLP
 +
==== Mentors:  ====
 +
[https://www.dit.hua.gr/~varlamis/ Iraklis Varlamis][https://users.ionio.gr/~sarantos/en.html Sarantos Kapidakis],
  
  
Line 150: Line 272:
 
Git-issue is a minimalist decentralized issue management system based on Git. It has the following advantages over other systems.
 
Git-issue is a minimalist decentralized issue management system based on Git. It has the following advantages over other systems.
  
No backend, no dependencies: You can install and use git issue with a single shell script. There's no need for a server or a database back-end, and the corresponding problems and requirements for their administration.
+
    No backend, no dependencies: You can install and use git issue with a single shell script. There's no need for a server or a database back-end, and the corresponding problems and requirements for their administration.
 +
 
 +
    Decentralized asynchronous management: Anyone can add, comment, and edit issues without requiring online access to a centralized server. There's no need for online connectivity; you can pull and push issues when you're online.
  
Decentralized asynchronous management: Anyone can add, comment, and edit issues without requiring online access to a centralized server. There's no need for online connectivity; you can pull and push issues when you're online.Transparent text file format: Issues are stored as simple text files, which you can view, edit, share, and backup with any tool you like. There's no risk of loosing access to your issues because a server has failed.
+
    Transparent text file format: Issues are stored as simple text files, which you can view, edit, share, and backup with any tool you like. There's no risk of loosing access to your issues because a server has failed.
  
Git-based: Issues are changed and shared through Git. This provides git issue with a robust, efficient, portable, and widely available infrastructure. It allows you to reuse your Git credentials and infrastructure, allows the efficient merging of work, and also provides a solid audit trail regarding any changes. You can even use Git and command-line tools directly to make sophisticated changes to your issue database.
+
    Git-based: Issues are changed and shared through Git. This provides git issue with a robust, efficient, portable, and widely available infrastructure. It allows you to reuse your Git credentials and infrastructure, allows the efficient merging of work, and also provides a solid audit trail regarding any changes. You can even use Git and command-line tools directly to make sophisticated changes to your issue database.
  
 
Git-issue can currently import issues using the GitHub API.  The project's objective is to extend this functionality with a way to synchronize between GitHub/GitLab issues and the issues kept under git-issue.
 
Git-issue can currently import issues using the GitHub API.  The project's objective is to extend this functionality with a way to synchronize between GitHub/GitLab issues and the issues kept under git-issue.
Line 161: Line 285:
 
Git-issue extended for exporting its issues to GitHub/GitLab
 
Git-issue extended for exporting its issues to GitHub/GitLab
  
==== GSOC 2019 Project Repository ====
+
==== Related Repositories ====
https://github.com/eellak/gsoc2019-git-issue
+
https://github.com/dspinellis/git-issue
  
 
==== Knowledge Prerequisites ====
 
==== Knowledge Prerequisites ====
Line 172: Line 296:
  
  
 +
== Symplegma ==
 +
 +
==== Brief Explanation ====
 +
"Symplegma" stands for the combination of appropriate libraries for numerical computing with specialization to computational mechanics and orientation to educational and research purposes. Existing libraries, like "Apache Common Maths" for standard mathematics and statistics components, "FuturEye" a Java based Finite Element Method (FEM) Toolkit, "SymJava" for fast symbolic-numeric computation, among others, are combined with the in-house "Climax" library. "Climax" is a Java implementation of computational mechanics methods, e.g., the Boundary Element Method ("jbem" package) and the Finite Element Method ("jfem" package).
 +
 +
A simple IDE for manipulation of the above mentioned libraries, and possible extensions, has been developed in Java while it takes advantage of Apache Groovy, a powerful, optionally typed and dynamic language. That platform, under the acronym SDE, standing for Symplegma Development Environment.
 +
 +
Both educational and research activities are to be considered.
 +
 +
==== Expected Results ====
 +
 +
Toolbox development oriented to specific courses of higher education, Graphical User Environment update, extension of ploting capabilities.
 +
 +
==== Related  repositories ====
 +
 +
http://symplegma.org/
 +
https://github.com/symplegma
 +
 +
==== Knowledge Prerequisites ====
 +
 +
numerical methods, computational mechanics, java, groovy
 +
 +
==== Mentors: ====
 +
[http://www.civil.auth.gr/en/personel-en/dep-en/167-gdm.html George Manolis], [http://www.iacm.forth.gr/index_people.php?l=en&group=0&page=people&pageid=86 Christos Panagiotopoulos]
 +
 +
==clio — Software Components and IP Management System ==
 +
 +
==== Brief Explanation ====
 +
clio is a web-based system to manage data on software components and their relations.
 +
It started out as a GSoC 2018 project.
 +
For the 2019 GSoC, the main goals would be:
 +
- improvement of the UI
 +
- integration of SDPX data
 +
- extension to covering of file info (time permitting)
 +
 +
==== Expected Results ====
 +
 +
improvements to clio
 +
 +
==== Related  repositories ====
 +
 +
code at https://github.com/eellak/clio
 +
demo at https://clio.ellak.gr/
 +
 +
==== Knowledge Prerequisites ====
 +
 +
Python, web front-end
 +
 +
==== Mentors: ====
 +
 +
[https://github.com/zvr Alexios Zavras]
  
 
==Replacement of LTSP ==
 
==Replacement of LTSP ==
Line 183: Line 358:
 
A modern replacement of LTSP should be implemented, as outlined in http://wiki.ltsp.org/wiki/Dev:GSoC. It should be ready for inclusion in Debian/Ubuntu, for LTSP users to be able to slowly migrate to it.
 
A modern replacement of LTSP should be implemented, as outlined in http://wiki.ltsp.org/wiki/Dev:GSoC. It should be ready for inclusion in Debian/Ubuntu, for LTSP users to be able to slowly migrate to it.
  
==== GSOC 2019 Project Repository ====
+
==== Related  repositories ====
https://github.com/eellak/gsoc2019-ltsp
+
http://www.ltsp.org/
 +
http://wiki.ltsp.org/wiki/Dev:GSoC
  
 
==== Knowledge Prerequisites ====
 
==== Knowledge Prerequisites ====
  
 
Netbooting internals, shell, python, git, debian packaging
 
Netbooting internals, shell, python, git, debian packaging
 +
 +
 
==== Mentors ====
 
==== Mentors ====
  
Line 201: Line 379:
 
The Qt Calendar widget is updated, modified accordingly and ported into Qt 5.12 and Qt Quick Controls 2 current version. Ideally it will be upstreamed to Qt, contributing this way to the Qt ecosystem.
 
The Qt Calendar widget is updated, modified accordingly and ported into Qt 5.12 and Qt Quick Controls 2 current version. Ideally it will be upstreamed to Qt, contributing this way to the Qt ecosystem.
  
==== GSOC 2019 Project Repository ====
+
=== Related  repositories ===
https://github.com/eellak/gsoc2019-qtcontrols
+
https://github.com/extenly/qtqc2_calendar
  
 
=== Knowledge Prerequisites ===
 
=== Knowledge Prerequisites ===
Line 240: Line 418:
 
* Corpus management features using text metadata
 
* Corpus management features using text metadata
  
==== GSOC 2019 Project Repository ====
+
=== Related  repositories ===
https://github.com/eellak/gsoc2019-text-extraction
+
https://github.com/gmikros/Author_Multilevel_Ngram_Profiles
 +
 
 +
https://github.com/quanteda/quanteda
 +
 
 +
https://github.com/unDocUMeantIt/koRpus
 +
 
 +
https://miroslavkubat.webnode.cz/software/
 +
 
 +
https://github.com/bnosac/udpipe
 +
 
 +
https://github.com/explosion/spaCy
  
 
=== Knowledge Prerequisites ===
 
=== Knowledge Prerequisites ===
Line 258: Line 446:
 
A  [https://extensions.libreoffice.org/extensions LibreOffice Extension] and a Linux application with a web GUI that will  anonymize information in legal documents(odt and txt). Must have the ability to mass edit files, and to recognize through NLP and anonymize entities (such as Names, Addresses- ID numbers- VAT- social security numbers  or any other potentially sensitive information. The entities that will be anonymized through strong data encryption so that only people with access to a secret key or password can read the documents.
 
A  [https://extensions.libreoffice.org/extensions LibreOffice Extension] and a Linux application with a web GUI that will  anonymize information in legal documents(odt and txt). Must have the ability to mass edit files, and to recognize through NLP and anonymize entities (such as Names, Addresses- ID numbers- VAT- social security numbers  or any other potentially sensitive information. The entities that will be anonymized through strong data encryption so that only people with access to a secret key or password can read the documents.
  
==== GSOC 2019 Project Repository ====
+
=== Knowledge Prerequisites ===
 
Python, Spacy, Encryption algorithms
 
Python, Spacy, Encryption algorithms
  
 
=== Related repositories ===
 
=== Related repositories ===
https://github.com/eellak/gsoc2019-anonymization
+
https://pypi.org/project/bcrypt/
 +
 
 +
https://github.com/eellak/anonimos-amka/
 +
 
 +
https://github.com/eellak/gsoc2018-spacy
 +
 
 
=== Mentors ===
 
=== Mentors ===
 
[https://www.dit.hua.gr/~varlamis/ Iraklis Varlamis], [https://github.com/tgkarounos Theodoros Karounos]
 
[https://www.dit.hua.gr/~varlamis/ Iraklis Varlamis], [https://github.com/tgkarounos Theodoros Karounos]
  
 +
== <span lang="en-US">OpenProject Work-Package #1 to support modeling of the PM<sup>2 </sup>methodology for project management</span> ==
 +
 +
==== <span lang="en-US">Brief Explanation:</span> ====
 +
<span lang="en-US">PM²
 +
is a Project Management Methodology developed by the European
 +
Commission. PM² is built on Project Management best practices and is
 +
supported by the following four (4) pillars: </span>
 +
 +
# <span lang="en-US">a project governance model(Roles & Responsibilities) </span>
 +
# <span lang="en-US">a project lifecycle (Project Phases) </span>
 +
# <span lang="en-US">a set of processes (Project Management activities) </span>
 +
# <span lang="en-US">a set of project artifacts (templates and guidelines). </span>
 +
 +
<span lang="en-US">For
 +
a full support of PM² Project Management Methodology by OpenProject,
 +
new modules should be developed on OpenProject that will allow
 +
modeling of the abovementioned four pillars of PM².</span>
 +
 +
==== <span lang="en-US">Expected Results:</span> ====
 +
<span lang="en-US">Support
 +
for the process of PM² itself in OpenProject: That is, development
 +
of  Open Project plug-ins which  should add support for defining and
 +
handling the roles, responsibilities, phases and activities (in terms
 +
of PM² governance, life-cycle and processes pillars) for every new
 +
project. </span>
 +
 +
<span lang="en-US">The
 +
work of this Work-Package includes:</span>
 +
* <span lang="en-US">the analysis of PM2 requirements </span>
 +
* <span lang="en-US">the setup of OpenProject development environment (Development VM)</span>
 +
* <span lang="en-US">the modeling of PM2 requirements in OpenProject environment via the development of one or more plug-ins. The plug-ins should follow the Open Project plug-in guidelines and be consistent with the OpenProject API (http://docs.openproject.org/apiv3-doc/). The plug-ins should add the required models, logic and DB tables in order to: </span>
 +
 +
** <span lang="en-US">Support the PM² Governance Model (Roles, Responsibilities) </span>
 +
** <span lang="en-US">Support the PM² Phases </span>
 +
** <span lang="en-US">Support the PM² Artifacts per Phase</span>
 +
** <span lang="en-US">Support all PM<sup>2 </sup>plans and logs such as Change Log, Communications, Issue, Project, Quality, Requirements, and Risk </span>
 +
* <span lang="en-US">The development of tests for all the requirements (e.g. initiate PM² project, initiate phases, add artifacts, generate reports).</span>
 +
 +
==== <span lang="en-US">'''Related GitHub repositories'''</span> ====
 +
<span lang="en-US">https://github.com/opf/openproject
 +
</span>
 +
 +
https://ec.europa.eu/isa2/solutions/open-pm2_en/
 +
 +
==== '''Knowledge Prerequisites''' ====
 +
* <span lang="en-US">R</span>uby
 +
 +
* <span lang="en-US">Ruby on Rails</span>
 +
 +
* <span lang="en-US">Postgres </span>
 +
 +
* <span lang="en-US">Problem Analysis & Modeling </span>
 +
 +
==== Mentors ====
 +
[http://users.ntua.gr/karounos/karounos.html Theodoros Karounos], [http://www.3-lab.eu/core-team/george-blanas/ George Blanas], [https://www.linkedin.com/in/nicoskourounakis/ Nicos Kourounakis]
 +
 +
== <span lang="en-US">OpenProject Work-Package #2 to support functionality of the PM<sup>2 </sup>methodology for project management</span> ==
 +
 +
==== <span lang="en-US">Brief Explanation:</span> ====
 +
<span lang="en-US">This
 +
work-package is based on and extends OpenProject Work-Package #1
 +
(Support modeling of the PM2 methodology for project management) by
 +
adding visual elements that will support for PM²project artifacts
 +
through templates, wizards, tools and guidelines.</span>
 +
 +
<span lang="en-US">'''Expected
 +
Results:'''</span>
 +
 +
<span lang="en-US">Integrate
 +
the outputs of Work-Package #1 in OpenProject UI. For this, developed
 +
plug-ins from Work_Package #1 will be extended and new plug-ins will
 +
be developed in order to provide a rich User interface for the user.
 +
The plug-ins should follow the Open Project plug-in guidelines and be
 +
consistent with the OpenProject API
 +
(http://docs.openproject.org/apiv3-doc/)
 +
.</span>
 +
 +
<span lang="en-US">The
 +
developed functionality should: </span>
 +
 +
* <span lang="en-US">Provide wizards allowing the PM² user to:</span>
 +
 +
** <span lang="en-US">create and initiate PM² based project Templates</span>
 +
** <span lang="en-US">Initiate Project phases </span>
 +
** <span lang="en-US">add PM² artifacts per phase</span>
 +
** <span lang="en-US">create reporting templates with visual content like Gantt and Pert charts </span>
 +
** <span lang="en-US">add PM² artifacts with textual content like Risk Logs.</span>
 +
* <span lang="en-US">Support all PM<sup>2 </sup>plans and logs such as Change Log, Communications, Issue, Project ,Quality , Requirements, Risk </span>
 +
* <span lang="en-US">Provide tools such as</span>
 +
 +
** <span lang="en-US">3-point estimation with triangular and/or beta distribution</span>
 +
** <span lang="en-US">Critical Path Method (CPM)</span>
 +
** <span lang="en-US">Monte-Carlo analysis/technique</span>
 +
** <span lang="en-US">Network Diagram (FS, SS, FF)</span>
 +
** <span lang="en-US">Work Breakdown Structure (WBS)</span>
 +
* <span lang="en-US">Support Agile Specific Artifacts and Tools, e.g. Iterations, Kanboards etc.</span>
 +
* <span lang="en-US">Support visual representation of PM² using standards like BPMN, STRATML, RDF etc</span>
 +
* <span lang="en-US">Allow connection with external systems (e.g. Open ID, Media-Wiki)</span>
 +
* <span lang="en-US">Allow for Export and import for/to other formats for data exchange (e.g. MS Project export/import, PDF, XLS etc.).</span>
 +
 +
==== <span lang="en-US">'''Related GitHub repositories'''</span> ====
 +
<span lang="en-US">https://github.com/opf/openproject
 +
</span>
 +
 +
<span lang="en-US">https://ec.europa.eu/isa2/solutions/open-pm2_en</span>
 +
 +
==== '''Knowledge Prerequisites''' ====
 +
*Ruby
 +
 +
* Ruby on Rails
 +
 +
* Angular
 +
 +
* <span lang="en-US">ES6</span>
 +
<nowiki>*</nowiki>
 +
 +
<span lang="en-US">statistical modeling methods for PM (Monte carlo , CPM etc)</span>
 +
 +
==== Mentors ====
 +
[http://users.ntua.gr/karounos/karounos.html Theodoros Karounos], [http://www.3-lab.eu/core-team/george-blanas/ George Blanas], [https://www.linkedin.com/in/nicoskourounakis/ Nicos Kourounakis]
 +
 +
==Real time Django monitoring and profiling ==
 +
 +
==== Brief Explanation ====
 +
Modern Django web applications expose a plethora of URLs and API endpoints that are consumed by a number of clients (web browsers, API clients, Django management commands) under different authorization and authentication credentials. It is not always feasible or easy to replicate the action that resulted in a system crash, a 500 error or a heavily delayed response but it is necessary to trace such incidents to facilitate debuggind and fixing of errors. There's also the obvious fact of monitoring the application availability and uptime and get alerted in case of mulfunctions. While there are great tools as Django Debug Toolbar and Silk that provide insights and application profiling for debugging issues, there's a lack of an open source solution that unifies real time monitoring and application profiling for both the application and database layers. This need is usually covered by either inhouse solutions, or by expensive proprietary Software as a Service solutions for those that can afford it.
 +
 +
As part of this project we suggest that a unified solution is developed, either as an extension to an existing open source tool (as Django silk) or by leveraging tools as ElasticSearch/Kibana. The system should be able to monitor and log all sort of requests, along with error stacktraces and related information and present on a web dashboard with grouping capabilities (eg similar endpoints) and statistics about slow requests. Given the fact that the tool should run in production, there are some architectural notes to take care, for example perform database saves not in real time but rather offloaded by a system as Celery, or sent to a separate database (eg ElasticSearch).
 +
 +
This is an opportunity to provide a really beneficial tool for the Django community.
 +
 +
==== Expected Results ====
 +
 +
An overview of similar solutions (mainly open source but also commercial offerings).
 +
A web dashboard exposing information about malfunctions and providing real time monitoring for Django applications.
 +
 +
==== Related  repositories ====
 +
https://github.com/django/django
 +
https://github.com/jazzband/django-debug-toolbar
 +
https://github.com/jazzband/django-silk
 +
 +
==== Knowledge Prerequisites ====
 +
Django, Celery, Django-debug-toolbar, optionally ElasticSearch/Kibana, Postgresql
 +
 +
==== Mentors ====
 +
[https://github.com/mgogoulos Markos Gogoulos], [https://github.com/mpetyx Michael Petychakis], [https://twitter.com/siaterliskonsta Kostas Siaterlis]
 +
 +
== Moodle connection with multiple BigBlueButton servers ==
 +
 +
==== Brief Explanation ====
 +
Moodle is  a free and open-source learning management system (the most widely used one) used by the our Institute in training programmes of thousands of teachers.
 +
 +
BigBlueButton is an open-source web conferencing system while the BigBlueButtonBN  is an open source plugin that integrates BigBlueButton (BBB)  within Moodle, providing online classrooms.
 +
 +
However, the plugin supports the configuration of only one BBB server per Moodle installation. So, the number of students that can participate concurrently in virtual classrooms is limited to the capacity of a specific BBB server.
 +
 +
This is why, for better load balancing, our institute is looking for an upgrade of the plugin so that one can select a different BBB server host (BigBlueButton Server URL and BigBlueButton Shared Secret) ,  for each BBB virtual classroom that one creates. We would also like to have all the rest configuration parameters set per virtual classroom.
 +
 +
==== Expected Results ====
 +
BigBlueButtonBN plugin configuration parameters set per virtual classroom and not globally
 +
 +
==== Related  repositories ====
 +
https://github.com/blindsidenetworks/moodle-mod_bigbluebuttonbn
 +
 +
https://github.com/moodle/moodle
 +
 +
https://github.com/bigbluebutton
 +
 +
==== Knowledge Prerequisites ====
 +
PHP, MySQL, HTML5, CSS3,  jQuery
 +
 +
==== Mentors:  ====
 +
[http://iep.edu.gr/en/natural-sciences-technology-and-mathematics?view=article&id=1339:cv-giannitsaros-panagiotis&catid=181:biographical-notes Panagiotis Giannitsaros], 
  
 
== Creation of an online Greek mail dictation system, using Sphinx and personalized acoustic/language models training ==
 
== Creation of an online Greek mail dictation system, using Sphinx and personalized acoustic/language models training ==
Line 275: Line 640:
 
The expected outcome will be a standalone web page, via which automatic speech to text towards personalized mail dictation will be offered. The code will be opensource and provided by GitHub repositories. Our approach will offer A) improvements in the speech-to-text procedure by acoustic model adaptation to individual users and statistical text model adaptation based on already existent corpuses (the user’s mails) and B) a standalone tool for everyone to utilize.
 
The expected outcome will be a standalone web page, via which automatic speech to text towards personalized mail dictation will be offered. The code will be opensource and provided by GitHub repositories. Our approach will offer A) improvements in the speech-to-text procedure by acoustic model adaptation to individual users and statistical text model adaptation based on already existent corpuses (the user’s mails) and B) a standalone tool for everyone to utilize.
  
==== GSOC 2019 Project Repository ====
+
=== Related  repositories ===
https://github.com/eellak/gsoc2019-sphinx
+
https://github.com/cmusphinx
  
 
=== Knowledge Prerequisites ===
 
=== Knowledge Prerequisites ===
Line 283: Line 648:
 
=== Mentors: ===
 
=== Mentors: ===
 
[https://issel.ee.auth.gr/staff/andreas-l-symeonidis/ Andreas Symeonidis], [http://users.auth.gr/etsardou/ Manos Tsardoulias]
 
[https://issel.ee.auth.gr/staff/andreas-l-symeonidis/ Andreas Symeonidis], [http://users.auth.gr/etsardou/ Manos Tsardoulias]
 +
 +
== Moodle ADaptable VIsualization for CommunitiEs ( Moodle - ADVICE) ==
 +
 +
=== Brief Explanation ===
 +
Make the forum communication more effective by using ADVICE, a visualization learning analytics tool. Through ADVICE, the users are able to characterize every message posted on the forum, based on the learning theory of Communities of Inquiry. At the same time, ADVICE provides to the learners and instructors, adaptable visualizations that reflect the development of the discussion as well as qualitative data about the user’s/learner’s contribution to the discussion. This way, the students are promoted to post messages with cognitive value and the forum is transformed from a simple means of communication into a tool of learning and community building.
 +
 +
=== Expected Results ===
 +
Develop a moodle plugin with the following functionality:
 +
•Allow the users to characterize every user’s message posted in the forum through a dropdown menu with various characterizations that follow the Community of Inquiry theory. • Oblige the student to characterize his own message before posting it to the forum.
 +
•Capture the data derived from the above functionalities.
 +
•Statistically analyze and combine the data from students’ interaction within the forum (number of posted messages, number of visits in the forum, etc) and the data captured from the above functionalities of ADVICE, in order to calculate qualitative and qualitative indicators of the discussion that reflect discussion development according to the Community of Inquiry theory. • Provide an adaptable visualization of the progress of the discussion according to various dimensions that the user will select from (e.g. according to the community’s perspective or the “high-participation students’” perspective).
 +
•Provide a star-chart visualization for the contribution of each user according to the analysis results in means of the Community of Inquiry theory. • Provide to the instructor a file with the data captured and analyzed.
 +
 +
=== Related  repositories ===
 +
 +
https://github.com/moodle/moodle/tree/master/mod
 +
 +
https://moodle.org/plugins/
 +
 +
=== Knowledge Prerequisites ===
 +
PHP, C++, visualization
 +
 +
=== Mentors: ===
 +
[http://education.aspete.gr/index.php/en/personnel/acc/programmes/213-papanikolaou-kyparisia.html Kyparisia Papanikolaou], Maria Tzelepi
  
  
Line 299: Line 688:
  
 
in  (REST/JSON)
 
in  (REST/JSON)
 
==== GSOC 2019 Project Repository ====
 
https://github.com/eellak/gsoc2019-greekspell
 
  
 
==== Knowledge Prerequisites<br> ====
 
==== Knowledge Prerequisites<br> ====
Line 326: Line 712:
 
Ideally this would include in-line editing of identifiers.
 
Ideally this would include in-line editing of identifiers.
  
==== GSOC 2019 Project Repository ====
+
==== Related GitHub repository ====
https://github.com/eellak/gsoc2019-CScout
+
https://github.com/dspinellis/cscout
  
 
==== Knowledge Prerequisites ====
 
==== Knowledge Prerequisites ====
Line 336: Line 722:
  
 
==== Mentor:====
 
==== Mentor:====
[https://www.spinellis.gr Diomidis Spinellis] [http://www.csd.auth.gr/en/staff/faculty?view=user&ro=1&id=14 Stamelos Ioannis]  
+
[https://www.spinellis.gr Diomidis Spinellis] [http://www.csd.auth.gr/en/staff/faculty?view=user&ro=1&id=14 Stamelos Ioannis]  
  
  
Line 374: Line 760:
 
* Make contacts and calendar encrypted
 
* Make contacts and calendar encrypted
  
===== GSOC 2019 Project Repository =====
+
===== Related GitHub repositories =====
https://github.com/eellak/gsoc2019-NextCloudPi
+
https://github.com/nextcloud/nextcloudpi/
  
 
===== Knowledge Prerequisites =====
 
===== Knowledge Prerequisites =====
Line 385: Line 771:
 
===== Mentors =====
 
===== Mentors =====
 
[https://github.com/pant Sarantos Panteleimon], [https://github.com/nachoparker Ignacio Núñez], [https://wiki.gnome.org/EfstathiosIosifidis Efstathios Iosifidis]
 
[https://github.com/pant Sarantos Panteleimon], [https://github.com/nachoparker Ignacio Núñez], [https://wiki.gnome.org/EfstathiosIosifidis Efstathios Iosifidis]
 +
 +
== eIDAS SAML functionality to keycloak ==
 +
 +
===== Brief Explanation =====
 +
[https://www.keycloak.org/ Keycloak] is an open source Identity and Access Management solution aimed at modern applications and services. It makes it easy to secure applications and services with little to no code.
 +
 +
===== Expected Results =====
 +
 +
We would like to add eIDAS eIDAS SAML functionality to  keycloak. Keycloak is one of the open source IAM currently available. A comparison of open-source SSO implementations is available [https://gist.github.com/bmaupin/6878fae9abcb63ef43f8ac9b9de8fafd here], a recent video comparison between keycloak and WS02 was present in recent [https://www.youtube.com/watch?v=hnjBiGsEDoU IDM2018] and an opinionated comparison in [https://stackoverflow.com/questions/46184787/gluu-vs-keycloack-vs-wso2-identity-management stackoverflow]. 
 +
 +
[https://ec.europa.eu/cefdigital/wiki/display/CEFDIGITAL/2016/12/16/eIDAS+Technical+Specifications+v.+1.1 eIDAS(electronic IDentification, Authentication and trust Services)] is an EU regulation on electronic identification and trust services for electronic transactions in the internal market.  A cross border connection within the member states of EU uses an [https://ec.europa.eu/cefdigital/wiki/display/CEFDIGITAL/How+does+it+work+-+eIDAS+solution eIDAS network] that consists of a series of eIDAS-nodes implemented at the member state level.
 +
 +
An eIDAS-node consists of an eIDAS connector and an eIDAS proxy service or eIDAS middleware service. An eIDAS node can request a cross border authentication through the eIDAS connector and provide a cross border authentication through the eIDAS service (an eIDAS service can operate either in an eIDAS proxy service or eIDAS middleware service). As a matter of fact eIDAS implements a specific [https://ec.europa.eu/cefdigital/wiki/display/CEFDIGITAL/eIDAS+Profile dialect]  (i.e. Profile) of SAML. Following is an example eIDAS network with proxy to proxy connection between two member states(MS).
 +
 +
 +
What happens here is as follows:
 +
-The user (citizen) of MS A requests access to a service provider in MS B.
 +
-The service provider in MS B sends the request to its own connector.
 +
-On receipt of the request, the connector asks the user for the country of origin (TLS protocol).
 +
-When the user selects the country of origin, the SAML request is forwarded by the connector to the eIDAS-node proxy service of the user's member state.
 +
- The eIDAS-node proxy service sends the SAML request to the identity provider for authentication, and a user authenticates using the electronic identity.Once authenticated, this identity is returned to the eIDAS-node proxy service.
 +
-The eIDAS-node proxy service sends a SAML assertion to the requesting connector, which forwards the response to the service provider.
 +
-Τhe service provider grants access to the user.
 +
 +
A similar functionality has been added to [https://docs.wso2.com/display/IS570/Electronic+Identification%2C+Authentication+and+Trust+Services+Regulation WSO2].We believe the Apache Keycloack presents a lower barrier to enter, technologically speaking due to its easier admin dashboard procedures. Furthermore keycloak brings enough community to actively support its open software base.
 +
 +
===== Related GitHub repositories =====
 +
 +
https://github.com/keycloak/keycloak
 +
 +
https://readthedocs.org/projects/python-keycloak/
 +
 +
https://github.com/topics/eidas-framework
 +
 +
===== Knowledge Prerequisites =====
 +
 +
* PYTHON
 +
* JAVA
 +
 +
===== Mentors =====
 +
[https://www.linkedin.com/in/antonis-stasis-59a03539/?originalSubdomain=gr Stasis Antonis], [https://github.com/kranidiotis Panagiotis Kranidiotis] [https://github.com/dkalog Dimitris Kalogeras],
 +
 +
== Refactor open source remote systems and network management solution ==
 +
 +
===== Brief Explanation =====
 +
The project is about refactoring the current version of OpenRSM that was initially developed in 2011
 +
It has the following main features:
 +
* It addresses the needs of system and network admins
 +
* Its philosophy is to be simple, fast and configurable in order to foster combinational solutions.
 +
* The core system is capable to manage any workstation or server and monitor the operation of active network elements.
 +
* Extensions of the system cover the management of wireless sensor networks and embedded systems.
 +
* The system has been tested in pilot installations and stressed for scalability in the lab.
 +
 +
===== Expected Results =====
 +
* Port OpenRSM to Qt 5.12
 +
* Port from NINO to OpenNMS
 +
* Port to Winventory to OCS (OCSInventory-Server)
 +
* Port to latest version of OPSI
 +
* Port from UltraVNC to latest version of TigerVNC
 +
* Port OpenRSM from sourceforge to GITHUB
 +
* Upgrade all subsystems of OpenRSM to the latest varsions
 +
* Develop a Docker Installation for OpenRSM
 +
* Develop a Vagrant Installation for OpenRSM
 +
* Develop an Ansible role for OpenRSM
 +
 +
====== Secondary tasks ======
 +
* Update documentation
 +
* Update Installation Guides
 +
* Make video Guides for admins
 +
 +
===== Related repositories =====
 +
http://openrsm.sourceforge.net/
 +
 +
https://github.com/OpenNMS
 +
 +
https://github.com/OCSInventory-NG/OCSInventory-Server
 +
 +
https://sourceforge.net/projects/opsi/
 +
 +
https://tigervnc.org/
 +
 +
https://www.qt.io/
 +
 +
https://github.com/hashicorp/vagrant
 +
 +
https://github.com/ansible/ansible
 +
 +
[https://drive.google.com/drive/folders/1e0fo1MV5g1E-EkQtvnU5v5b-sYZhJXHb Documentation in Greek]
 +
 +
===== Knowledge Prerequisites =====
 +
*QT ([[wikipedia:Qt_(software)|https://en.wikipedia.org/wiki/Qt_%28software%29]])
 +
*Object Pascal
 +
*SQL(MySQL innodb - myisam)
 +
*PHP
 +
*JavaScript
 +
*Perl
 +
*Linux shell/bash
 +
*NSIS (Nullsoft Scriptable Install System)
 +
*TCP/IP protocol
 +
*SNMP protocol
 +
*NAT/PAT
 +
 +
===== Mentors =====
 +
[https://.... ......], [https://.... ......], [https://github.com/pant Sarantos Panteleimon]
 +
 +
== Geometric sampling for volume computation and convex optimization ==
 +
 +
==== Brief Explanation ====
 +
 +
Convex optimization and volume computation are fundamental problems in mathematics and computer science with many applications that span the whole spectrum of sciences and engineering. It appears, for example, in problems in statistics, biology, and economics, to name a few concrete application areas.
 +
 +
==== Expected Results ====
 +
 +
VolEsti (https://github.com/GeomScale/volume_approximation) is a C++ package with an R interface that performs efficient high dimensional sampling and volume computation. It supports a variety of convex polytope representations and scales to high (i.e., a few hundred) dimensions.
 +
To our knowledge it is the only software that combines the above features.
 +
 +
The main purpose of this year’s projects is to extent VolEsti’s functionality and as a consequence to provide state-of-the-art algorithms for sampling and volume computations to the R-project. We propose the following projects:
 +
 +
===== Project 1. Sampling scalability =====
 +
This project contains the empirical study of random walks for convex polytopes (mainly given by a set of linear inequalities). Currently variations of hit-and-run random walks are used but there are methods in bibliography with better mixing time; most notably the hamiltonian walk https://arxiv.org/pdf/1710.06261.pdf. We expect that an efficient implementation of such a method to have a dramatic effect in the scaling of the underlying algorithms (mainly sampling and volume computations, but there are also connections to convex optimization). We set the ultimate goal in one sentence: “scale from a few hundred dimensions to a few thousand”. 
 +
 +
We can divide the coding project in the following steps:
 +
 +
* Understand the code structure and design of VolEsti.
 +
* Create prototypes for new sampling algorithms (the main focus will be in Hamiltonian walk but we may investigate others too).
 +
* Implement the best representatives from the previous step in VolEsti and create R interfaces.
 +
* Write tests and documentation.
 +
 +
===== Project 2. Sampling and volume of spectahedra =====
 +
 +
This is a non-linear extension for VolEsti. Spectahedra are feasible regions of semidefinite programs and are known to be convex. They play an important role in optimization since they are the “next more understandable” convex objects after polytopes. Offering algorithms for sampling and volume computation will shed more light towards their study.
 +
 +
The coding project consists in the following steps:
 +
 +
* Understand the code structure and design of VolEsti. Understand the basics for spectahedra from bibliography.
 +
* Implement a new convex body type and boundary oracle for spectahedra.
 +
* Work on extensions of the problem such as replacing spectahedra by a spectahedral shadow.
 +
*  Write tests and documentation.
 +
 +
===== Project 3. Convex optimization with randomized algorithms =====
 +
 +
A very related topic to volume approximation via sampling is convex optimization. This project proposes the design and implementation of optimization algorithms (available in relevant bibliography) in VolEsti that utilize sampling (already available in the library) as a main subroutine.
 +
 
 +
* Understand the code structure and design of VolEsti.
 +
* Implement optimization algorithms. A good place to start is  http://www.optimization-online.org/DB_FILE/2008/12/2161.pdf
 +
* Test implementations with various random walks available in VolEsti
 +
* Write tests and documentation
 +
 +
==== Expected impact ====
 +
 +
A lot of users such as practitioners or researchers from a variety of scientific fields ranging from biogeography to economics need a high level programming or scripting environment to test volume computation or sampling algorithms. With the successful completion of the current proposed projects the library and thus the R-project will benefit from (a) faster and more scalable sampling methods, (b) support for non-linear objects, (c) support for optimization algorithms. The above benefits will enhance the experience of current users but more importantly it will attract new users  since we expect that the library will be used to solve problems that cannot be solved today with available software tools.
 +
 +
There are practical and theoretical consequences.
 +
From a theoretical point of view we will be able to study the volume of the feasible region of SDP and experiment with theta bodies, thus we will provide a robust for experimentation in convex optimization.
 +
From a practical point of view we expect that the library will find use in the computation of equilibria in thermodynamics, in biology for understanding the evolution of coding sequences, in material sciences; these application require robust volume computations of convex bodies. 
 +
 +
==== Related Repositories ====
 +
https://github.com/GeomScale/volume_approximation
 +
 +
==== Knowledge Prerequisites ====
 +
 +
Students should have a solid background in C++, algorithms and linear algebra. Knowledge of computational geometry, optimization or statistical computing in R will be a plus.
 +
 +
==== Mentors:  ====
 +
 +
[https://vissarion.github.io Vissarion Fisikopoulos], [https://www-polsys.lip6.fr/~elias Elias Tsigaridas], [http://zaf.zafeirakopoulos.info/index.html Zafeirakis Zafeirakopoulos]
 +
 +
==== Tests ====
 +
 +
Students, please do one or more of the following tests before contacting the mentors above.
 +
 +
* Easy:
 +
** compile and run VolEsti.
 +
** Solve this issue https://github.com/GeomScale/volume_approximation/issues/8
 +
** Use the R extension to visualize sampling in a polytope.
 +
* Medium:
 +
** implement the Dikin walk http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.153.7868&rep=rep1&type=pdf
 +
** extent hit-and-run to sample from the boundary of the polytope.
 +
* Hard:
 +
** add support to VolEsti to compute volumes for lower dimensional polytopes, e.g., a segment in the 3-dimensional space (for projects 1,2)
 +
** implement the optimization algorithm from http://www.optimization-online.org/DB_FILE/2008/12/2161.pdf (for project 3)
 +
  
  
  
 
[[Κατηγορία:GSOC]] [[Κατηγορία:GSOC2019]]
 
[[Κατηγορία:GSOC]] [[Κατηγορία:GSOC2019]]

Please note that all contributions to Ελεύθερο Λογισμικό / Λογισμικό ανοιχτού κώδικα are considered to be released under the Creative Commons (see Ελεύθερο Λογισμικό / Λογισμικό ανοιχτού κώδικα:Πνευματικά Δικαιώματα for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

Cancel Editing help (opens in new window)