REPOSITORY OVERVIEWLive repository statistics
★ 0Stars
⑂ 0Forks
◯ 0Open issues
◉ 0Watchers
27/100
OPENREPOHUB HEALTH SIGNALLimited signals
A transparent discovery signal based on current public GitHub metadata.
Recent activity35% weight
10 Community adoption25% weight
0 Maintenance state20% weight
100 License clarity10% weight
0 Project information10% weight
35 This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
README preview
Ferry Simulation 🚢🚗🚌🚛
This project simulates a ferry transportation system using multithreading in Java. Vehicles of different types (cars, minibuses, trucks) are transported between two shores, respecting capacity constraints and random arrival logic.
🧠 Overview
The simulation models a real-world ferry operation:
- Vehicles are randomly generated and assigned to either the LEFT or RIGHT shore.
- Each vehicle passes through a toll booth and waits in a queue.
- The ferry has a fixed capacity of 20 units:
- Car = 1 unit
- Minibus = 2 units
- Truck = 3 units
- The ferry loads vehicles from its current shore, crosses to the other shore, unloads, and repeats.
- The simulation continues until all vehicles return to their original shore.
🔧 Technologies and Concepts
- Java Multithreading
- ExecutorService (Thread Pool)
- BlockingQueue for synchronized vehicle queues
- Enums for vehicle type and shore side
- Randomization for vehicle type and starting side
- Thread-safe design to avoid race conditions
📁 Project Structure
FerrySimulation.java # Main class containing all logic
report.pdf # Project report with detailed explanation
README.md # You're reading it!
▶️ How to Run
-
Make sure you have Java installed (JDK 11+ recommended).
-
Compile the Java file:
javac FerrySimulation.java
3.Run the program:
java FerrySimulation
📄 Report
For a detailed explanation of the simulation structure, components, and sample output, see report.pdf.
🧑💻 Author
Yunus Bozan
Computer Engineering Student
Manisa Celal Bayar University
📌 License
This project is open source and free to use under the MIT License.
ALGORITHMICALLY RELATEDSimilar Open-Source Projects
Selected from shared topics, language and repository description—not editorial ratings.
The goal of this project is to implement two Spring Boot applications: bitcoin-api and bitcoin-client. The bitcoin-api application simulates BTC price changes, while the bitcoin-client application listens to these changes and updates a real-time UI. The bitcoin-client UI is secured using Basic Authentication.
78/100 healthRecently updatedActive repository
JavaMIT#basic-authentication#docker#java#kafka
⑂ 38 forks◯ 0 issuesUpdated 27 days ago
The goal of this repository is to help introductory programming students understand objects, inheritance, polymorphism and compiling java projects with ant and command line by developing a game that simulates a battle between Lord of the Rings heors and beasts.
49/100 healthActive repository
JavaGPL-3.0#ant#comand-line#comand-line-app#game
⑂ 24 forks◯ 2 issuesUpdated Nov 9, 2025