Giter Site home page Giter Site logo

bernatbc / plushistics Goto Github PK

View Code? Open in Web Editor NEW

This project forked from loparc/plushistics-royal_hackaway_v6

0.0 0.0 0.0 3.6 MB

Home Page: https://bernatbc.tk/posts/competitions/royalhackawayv6/

Python 0.48% C 0.80% C# 21.56% HLSL 10.85% ShaderLab 62.40% PDDL 3.92%

plushistics's Introduction

Plushistics

The way to distribute plushies across UK.

Inspiration

When we discovered that a Shark Plushie was one of the prizes of the Hackaway we realized that the Hackathons UK needed a way to optimally distribute the shark flushies across the country.

What it does

You can create cities, with a number of sharks already on them, a number of sharks that they require and their name. Then you can link cities with roads choosing the gas spent of traveling by them. Last, but not least, you may select one or more cities to have a plushie van, with its own capacity for shark plushies, which will travel through, and only through, linked cities loading and unloading plushies in order to satisfy the demands of each city. When you have everything you want just press the Run button.

How we built it

The graphical side of the project, and the one that the user sees, is made with Unity. The main algorithms and the search of an optimized solution is made with Metric-FF, using the Planning Domain Definition Langauge (PDDL). It uses A* to guide itself to the optimal solution. If finding such solution becomes algorithmically expensive, then the heuristic will change in a way that we will find an optimized solution, maybe not the most optimized, but it will get it in a reasonable amount of time. Finally, the communication between the graphical side and the PDDL one is made by C# code (how could be otherwise).

Challenges we ran into

We had problems related to the OS that was going to be used. Some code had to be remade to work with C# and Unity in order to work with Windows. Also, we had trouble with large number of cities and connections will were resolved using by decrementing the optimism of the heuristic function.

Accomplishments that we're proud of

Mainly, we made it work! We found ourselves stuck several times during the project, finding new bugs. It is true that it is usually always the same process: you solve one bug, you get three more! But given the limited time we thought to ourselves, during the beginning of the night, that we may not get anything working at all. But, after all, we found our way through and with patience and hard work we ended up getting where we wanted. Such a relief.

What we learned

We have improved our c# coding skills and learned how to communicate Unity, c#, pdll and testing c++ files.

What's next for Plushistics

We would like to not only expand Plushistics to new countries, but also make it playable.
Everyone around the world deserves a shark plushie.

Try it now on Windows (download link)

plushistics's People

Contributors

alexland7219 avatar bernatbc avatar loparc avatar miquelt9 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.