Skip to content

🚒 Full-stack ship routing optimization system using Isochrone A* algorithm. Integrates real-time environmental data to optimize maritime routes, achieving 13% efficiency improvement. Built with Python/Flask backend and Tauri.js frontend.

Notifications You must be signed in to change notification settings

kshitizz36/SIH2024

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

23 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Smart-India-Hackathon-2024

Creovate's Submission for SIH'24

πŸ“Έ Application Screenshots

Ship Routing Interface
Main routing interface showing ship route optimization
Route Visualization
Advanced route visualization with environmental data overlay

Ship Routing Optimization System

A full-stack Ship Routing Optimization System designed to enhance navigational accuracy and adaptive routing for maritime operations. This system leverages advanced algorithms and real-time environmental data to provide optimized ship routes, achieving significant improvements in travel efficiency and cost reduction.

🚒 Overview

This project addresses the critical challenge of optimizing ship routes by implementing a comprehensive solution that combines cutting-edge algorithms with real-time data integration. The system is particularly focused on the Indian Ocean region but is designed to be adaptable for global maritime operations.

✨ Key Features

  • 🧭 Advanced Routing Algorithm: Implements the Isochrone A* algorithm for optimal navigation paths considering time and environmental factors
  • πŸ“‘ Real-time Data Integration: Utilizes live environmental data (currents, waves, winds) for enhanced routing accuracy
  • 🌊 Ocean Grid System: Sophisticated maritime data processing system for accurate route calculations
  • ⚑ Efficiency Gains: Achieved 13% improvement in travel efficiency through optimized route planning
  • πŸ’° Cost Reduction: Significantly reduces fuel consumption and operational costs
  • πŸ–₯️ Full-Stack Architecture: Modern web-based interface with robust backend processing

πŸ› οΈ Technical Stack

Backend

  • Python - Core processing engine
  • Flask - RESTful API framework
  • Pandas - Data manipulation and analysis
  • Xarray - GRIB data handling
  • GeoPandas - Geospatial data processing

Frontend

  • Tauri.js - Desktop application framework
  • React - User interface library
  • Vite.js - Build tool and development server

Data Formats

  • GRIB - Weather and oceanographic data
  • Shapefiles - Geographical boundaries and features
  • JSON - Configuration and port data

πŸ—οΈ System Architecture

image
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    HTTP/API    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Frontend      │◄──────────────►│    Backend       β”‚
β”‚   (Tauri.js)    β”‚                β”‚    (Flask)       β”‚
β”‚                 β”‚                β”‚                  β”‚
β”‚ β€’ User Interfaceβ”‚                β”‚ β€’ Route Calc     β”‚
β”‚ β€’ Visualization β”‚                β”‚ β€’ Data Processingβ”‚
β”‚ β€’ Map Display   β”‚                β”‚ β€’ API Endpoints  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                                            β”‚
                                            β–Ό
                                   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                                   β”‚   Data Sources   β”‚
                                   β”‚                  β”‚
                                   β”‚ β€’ GRIB Files     β”‚
                                   β”‚ β€’ Shapefiles     β”‚
                                   β”‚ β€’ Ship Data      β”‚
                                   β”‚ β€’ Port Info      β”‚
                                   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

The system follows a client-server architecture where:

  • Frontend: Provides user interface for voyage parameters input and route visualization
  • Backend: Processes routing requests using the Isochrone A* algorithm and manages environmental data
  • Data Layer: Handles various data types including real-time forecasts and geospatial information

🎯 Problem Statement

Original Challenge: Development of a versatile and fast algorithm for optimal ship routing

The shipping industry faces significant challenges in route optimization due to:

  • Heavy reliance on fossil fuels and associated costs
  • Need to balance multiple parameters (fuel efficiency, travel time, safety, comfort)
  • Dynamic weather conditions requiring continuous route adaptation
  • Lack of publicly available applications for Indian Ocean region

This system addresses these challenges by providing a comprehensive solution that optimizes voyage time and safety while considering fuel efficiency.

πŸš€ Getting Started

Prerequisites

  • Python 3.8+
  • Node.js 16+
  • Rust (for Tauri)

Installation

  1. Clone the repository

    git clone https://github.com/yourusername/ship-routing-optimization.git
    cd ship-routing-optimization
  2. Backend Setup

    cd backend
    pip install -r requirements.txt
  3. Frontend Setup

    cd frontend
    npm install

Running the Application

  1. Start the Backend

    cd backend
    python app.py
  2. Start the Frontend

    cd frontend
    npm run tauri dev

πŸ“Š Data Sources

  • Environmental Data: INCOIS OSF Portal for surface currents and wave forecasts
  • Weather Data: Surface wind forecasts provided by INCOIS
  • Additional Data: Available through INCOIS collaboration

πŸŽ₯ Resources

🏒 Project Information

  • Organization: Ministry of Earth Sciences
  • Department: Indian National Center for Ocean Information Services (INCOIS)
  • Category: Software
  • Theme: Transportation & Logistics
  • Problem Statement ID: 1658

Acknowledgments

  • Indian National Center for Ocean Information Services (INCOIS)
  • Ministry of Earth Sciences, Government of India
  • Contributors and the open-source community

About

🚒 Full-stack ship routing optimization system using Isochrone A* algorithm. Integrates real-time environmental data to optimize maritime routes, achieving 13% efficiency improvement. Built with Python/Flask backend and Tauri.js frontend.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •