Google Summer of Code 2025 proposed ideas: Διαφορά μεταξύ των αναθεωρήσεων

Από Ελεύθερο Λογισμικό / Λογισμικό ανοιχτού κώδικα
Μετάβαση στην πλοήγηση Πήδηση στην αναζήτηση
Χωρίς σύνοψη επεξεργασίας
Χωρίς σύνοψη επεξεργασίας
Γραμμή 87: Γραμμή 87:
Long (350 hours)
Long (350 hours)


==== Related repositories ====
Related repositories
 
New project, no existing repo available.
New project, no existing repo available.


==== Information links ====
==== Information links ====
- [https://en.wikipedia.org/wiki/Triplestore Triplestore]
- [[wikipedia:Triplestore|Triplestore]]
- [https://en.wikipedia.org/wiki/Semantic_triple Triples]
- [[wikipedia:Semantic_triple|Triples]]
- [https://en.wikipedia.org/wiki/SPARQL Query language]
- [[wikipedia:SPARQL|Query language]]


==== Knowledge Prerequisites ====
==== Knowledge Prerequisites ====
Γραμμή 99: Γραμμή 100:


==== Mentors:Alexios Zavras, TBD====
==== Mentors:Alexios Zavras, TBD====
== Extending the capabilities of OpenTRIM ==
==== Brief Explanation ====
OpenTRIM is a new open-source code for simulating the passage of energetic ions through materials and calculating the associated modifications and damage that they cause to the these materials. It is based on the kinetic Monte-Carlo method and employs the Binary Collision Approximation to describe the interaction between ions and target atoms. OpenTRIM comprises of a set of C++ libraries, a command line program for executing simulations in batch mode and a Qt-based graphical user interface that can be used to configure & run a simulation and evaluate the results. Currently, there are various parts of OpenTRIM where work is needed for improving and extending the capabilities of the code. 
==== Project Description ====
This project will involve a detailed exploration of various triplestore alternatives. The participants will perform rudimentary tests and benchmarks on these alternatives to understand their performance, scalability, and other key features.
The ultimate goal is to develop a library that can act as an abstraction layer for these triplestore alternatives. This library will "hide" the underlying implementation, allowing developers to switch between different triplestores without changing their application code. This abstraction layer can be compared to a library abstracting various specific relational database management systems, all providing very similar functionality, like supporting SQL.
==== Expected Outcome ====
1. Extend the base C++ simulation code to include new capabilities for user-defined “tallies”, i.e., scoring tables where data from the simulation are extracted as a function of ion energy, position, direction or other possible optional variables.  2. Create a tool for 2D or 3D visualization of the simulated ion trajectories. 3. Write a number of example simulations, complete with the required input files and evaluation of the output results, which will become a part of the code documentation.
==== Duration of the Project ====
Long (350 hours)
==== Related repositories ====
https://github.com/ir2-lab/OpenTRIM
==== Knowledge Prerequisites ====
C++, Qt (optional), OpenGL (optional)
==== Mentors:====
George Apostolopoulos (<nowiki>https://github.com/gapost</nowiki>), Michail Axiotis (<nowiki>https://github.com/psaxioti</nowiki>), Eleni Mitsi (<nowiki>https://github.com/elmitsi</nowiki>)


== MyUni  ==
== MyUni  ==

Αναθεώρηση της 07:40, 12 Φεβρουαρίου 2025

Contributors interested to participate should check which of the following projects fits their interests and skills.

Τo communicate with the mentors and ask questions about the projects, students should subscribe to this list and post relevant questions. Please follow the Proposal Template

For practical information, developers should visit this page.

Expanding HassIO smart home capabilities via low-code automation development

Brief Explanation

Smart environments are becoming quite popular in the home setting consisting of a broad range of connected devices. While offering a novel set of possibilities, this also contributes to the complexity of the environment, posing new challenges to allowing the full potential of a sensorized home to be made available to users. SmAuto, is a Domain Specific Language (DSL) that enables users to program complex automation scenarios and pipelines, for connected IoT devices in smart environments, that go beyond simple tasks. It was initially developed by the ISSEL research team (AUTH) as textual DSL and later evolved into a web-based low-code development environment. SmAuto lacks extra features like utilization of external REST data sources, time delays, semantic annotation, and accessing of in-house entities, etc., thus it should be expanded in this direction. Furthermore, HomeAssistant would benefit from the integration of a low-code approach for rapidly developing and deploying automations, using the entities existing in a smart environment.

Expected Results

• In the context of this project, we desire to expand the SmAuto DSL with the following features: a) support the REST protocol, so as for the automations to be able to access information from external data sources, b) incorporate auxiliary concepts like Delay, Switches, or Compute nodes, c) SmAuto integration in HA. The integration of SmAuto and HomeAssistant should occur, by creating a new open-source HA addon, where users will be able to design and deploy automations graphically, using the SmAuto low-code environment.

Duration of the Project

(350 hours).

Related repositories

https://github.com/robotics-4-all/smauto, https://www.home-assistant.io/

Knowledge Prerequisites

[Required]: Python, Software engineering, IoT concepts, Unix/Linux, [Desired]: Model Driven Engineering, HomeAssistant, Docker


Mentors

Konstantinos Panayiotou, Emmanouil Tsardoulias, Andreas Symeonidis


OpenRF 3D

Brief Explanation

This project aims to bridge NVIDIA Sionna’s 6G simulation framework with Cesium’s 3D geospatial engine, enabling real-time, terrain-aware wireless network analysis. The student will develop a bidirectional WebSocket pipeline to dynamically stream Cesium’s elevation and 3D building data into Sionna, where channel models are enhanced to account for terrain-induced pathloss and urban blockages. Simultaneously, Sionna’s ray-traced outputs (e.g., signal strength, beamforming patterns) will be visualized in Cesium as interactive heatmaps and antenna coverage overlays. Key deliverables include a Python/JavaScript interface using Protocol Buffers for efficient data serialization, integration of 3GPP TR38.901 models with real-world terrain, and Jupyter notebooks demonstrating urban/rural 5G optimization.

Expected Results

The project will deliver a fully functional YouTube data engine, interactive dashboards, automated report generation, and an LLM-powered query system, enabling intuitive data exploration and analysis for researchers and content creators. Complete documentation and an open-source release will empower community contributions.

Duration of the Project

(350 hours).

Related repositories

https://github.com/NVlabs/sionna, https://github.com/CesiumGS/cesium

Knowledge Prerequisites

A developer with strong Python &amp; JavaScript skills, and an understanding of real-time networking (WebSockets, Protobuf). Experience in wireless communications &amp; 3D geospatial visualization, and prior exposure to Sionna, CesiumJS would be highly beneficial.


Mentors

Ilias Chrysovergis (https://www.linkedin.com/in/ilias-chrysovergis/), Iason Malkotsis (https://malkotsis.com/)

Exploring and Abstracting Triplestore Alternatives

Brief Explanation

Objective

The primary objective of this project is to explore, analyze, and abstract various triplestore alternatives. The project aims to provide young programmers with a comprehensive understanding of different back-end alternatives that allow for storing data in triple format, commonly known as triplestores.

Background

Triplestores are a type of database specialized in storing triples, a data structure for representing information in a subject-predicate-object format. They are crucial in semantic web technologies, such as RDF, SPARQL, and OWL. However, there are numerous triplestore alternatives available, each with its own strengths and weaknesses.

Project Description

This project will involve a detailed exploration of various triplestore alternatives. The participants will perform rudimentary tests and benchmarks on these alternatives to understand their performance, scalability, and other key features.

The ultimate goal is to develop a library that can act as an abstraction layer for these triplestore alternatives. This library will "hide" the underlying implementation, allowing developers to switch between different triplestores without changing their application code. This abstraction layer can be compared to a library abstracting various specific relational database management systems, all providing very similar functionality, like supporting SQL.

Methodology

Research: Identify and study various triplestore alternatives. Understand their architecture, features, and limitations.

Testing: Perform rudimentary tests and benchmarks on the identified triplestore alternatives.

Analysis: Analyze the test results to understand the performance and scalability of each alternative.

Development: Develop an abstraction layer that can interface with the various triplestore alternatives.

Documentation: Document the findings and the usage of the developed library.

Expected Outcome

By the end of the project, we expect to have a well-documented library that can act as an abstraction layer for various triplestore alternatives. This will provide developers with the flexibility to choose the most suitable triplestore for their specific needs without having to modify their application code.

Conclusion

This project will not only enhance the understanding of participants about triplestore alternatives but also equip them with the skills to develop an abstraction layer, thereby broadening their programming skills and knowledge.

Duration of the Project

Long (350 hours)

Related repositories

New project, no existing repo available.

Information links

- Triplestore - Triples - Query language

Knowledge Prerequisites

Python (mandatory). Other programming languages like C, Go, Rust, Java, might prove useful.

Mentors:Alexios Zavras, TBD

Extending the capabilities of OpenTRIM

Brief Explanation

OpenTRIM is a new open-source code for simulating the passage of energetic ions through materials and calculating the associated modifications and damage that they cause to the these materials. It is based on the kinetic Monte-Carlo method and employs the Binary Collision Approximation to describe the interaction between ions and target atoms. OpenTRIM comprises of a set of C++ libraries, a command line program for executing simulations in batch mode and a Qt-based graphical user interface that can be used to configure &amp;amp; run a simulation and evaluate the results. Currently, there are various parts of OpenTRIM where work is needed for improving and extending the capabilities of the code.

Project Description

This project will involve a detailed exploration of various triplestore alternatives. The participants will perform rudimentary tests and benchmarks on these alternatives to understand their performance, scalability, and other key features.

The ultimate goal is to develop a library that can act as an abstraction layer for these triplestore alternatives. This library will "hide" the underlying implementation, allowing developers to switch between different triplestores without changing their application code. This abstraction layer can be compared to a library abstracting various specific relational database management systems, all providing very similar functionality, like supporting SQL.

Expected Outcome

1. Extend the base C++ simulation code to include new capabilities for user-defined “tallies”, i.e., scoring tables where data from the simulation are extracted as a function of ion energy, position, direction or other possible optional variables.  2. Create a tool for 2D or 3D visualization of the simulated ion trajectories. 3. Write a number of example simulations, complete with the required input files and evaluation of the output results, which will become a part of the code documentation.

Duration of the Project

Long (350 hours)

Related repositories

https://github.com/ir2-lab/OpenTRIM

Knowledge Prerequisites

C++, Qt (optional), OpenGL (optional)

Mentors:

George Apostolopoulos (https://github.com/gapost), Michail Axiotis (https://github.com/psaxioti), Eleni Mitsi (https://github.com/elmitsi)



MyUni

Brief Explanation

Currently there is a University App called MyUoM for Greek universities in https://my.uom.gr/ (followed by an effort in University of West Attica, https://iam.uniwa.gr/. This app is official but it lacks features(e.g. login) and a proper backend with an architecture that will allow different implementations for Universities. In this project we want to add a CMS for info that is changing frequently and a backend that fetches realtime info from the official websites. We want to unify those efforts and make it easier for other universities to join.


Expected Results.

1. Create a structure that can be used by different university structures and can be fully customised based on the needs of each institution. 2. The application should be fully customisable in terms of interface, content and functionality. 3. The content can be personalized and the home page can display tiles selected by each institution and display content that will be created as a page (wordpress type) 4. Adding a students portal where all the student's data, personal and any other information will be collected, in order to be used as a reference point. 5. Add an admin panel from where the appearance and content of the institution's application will be defined. 6. Create a BackEnd system to manage all the data described above. 7. Setup a backend that fetches information from official sources and static information(e.g. map images) to make the frontend lighter. 8. Rewrite in Typescript for maintainability 9. Creation of a custom CMS (consisting of FrontEnd & BackEnd) for data changing frequently 10. Create a system where the application is shared across domains by creating an instance.


Duration of the Project

Depending on the scope

Related repositories

https://github.com/Open-Source-UoM/MyUoM

Knowledge Prerequisites

   • React.js
   • Express.js (for BackEnd)
   • MySQL (for BackEnd)
   • JavaScript
   • TypeScript
   • Next.js (optional)


Mentors:

Anastasios Tsalmas tsalmanastasios@gmail.com, Efstathios Iosifidis eiosifidis@gmail.com

GlossAPI

Brief Explanation

GlossAPI is an open source project seeking to develop a standard open access corpus of the Greek language, and benchmark it against existing and to-be-developed language models, with the objective of providing an upstream service to the Greek tech community. The project is named after a portmandeau of the Greek word for "language" and "API" which creates a visual resemblance to the word Glossary in Greek. This is to express our objective to provide an index of the Greek language via flexible programing interfaces.

Greek is a language that is under-represented in existing LLMs, while it has a complex history, grammar and writing system. Our trials with existing models have shown lack of syntactic and semantic knowledge of advanced Greek and its nuances, and we have put forth a number of analyses showing that this poses a risk for digital divides, language extinction, and subpar experience for users of public services.

To our knowledge other LLM projects that tackle the problem of the Greek language are either proprietary, closed code, narrow scope, or otherwise unfit for our purpose which is to provide publicly available, fully open source language models with respect to all code/weights/procedures/data. We reach out and bring together people that have the expertise, the passion, the collections, or the hardware, to take part in this endeavor, that will help the Greek stratup/tech scene catch up with the rapid developments in downstream applications that are now common place for developers of English language generative models.


Expected Results

The project will result to an Open Source Corpus, representative of the Greek language and its different varieties. At first emphasis will be given to the formal varieties used in government, education and the law. Additionally, we want to represent, in a subsequent training stage, a number of basic knowledge domains to an "undergraduate degree" level. The datasets will be versioned and benchmarked against different models and tokenizers. We also need to develop a sufficient set of evaluation tasks (such as Factual QA - Greek). Finally a couple of foundation models of different architectures will be fitted onto the dataset and the evaluation suite, and published to the community under an open source licence. With these moves we expect to pollinate the Greek tech ecosystem with reliable, inexpensive, and extensible models and datasets, that will help the Greek Open Source AI scence thrive. All data and models will be accompanied by thorough documentation and guides, to ensure replicability and reusability of the results.


Duration of the Project

350 hrs

Related Repositories

https://github.com/eellak/glossAPI/ https://github.com/eellak/glossAPI/wiki


Knowledge Prerequisites

Corpus Annotation for Language Models Quantitative Corpus Linguistics or Natural Language Processing Python with transformers library, sci-kit learn, numpy, pandas and streamlit, langchain or similar Mathematical statistics or similar discipline Django knowledge is good to have

Mentors

F.Karounos, A. Melidis, Greek Free Open Source Software/Hardware Alliance