Skip to content

linhngocle2000/collaborative-carrier-network

Repository files navigation

CCN

CCN is an application presenting an auction based Collaborative Carrier Network. It is designed exclusively for small and medium sized carriers and harnesses the power of global optimization to deliver economically efficient solutions to every participant in the network. In addition, carriers incur much lower costs than traditional negotiation processes.

Table of contents

  1. Features
  2. Download
  3. Logs
  4. User manual

Features

  • Optimize the profit of daily "pickup and delivery" transport business for all participated carriers
  • Support the reassignment of transport requests, that assure an increase in profit
  • An auction-based solution is used to support privacy of agents
  • A graphical use interface is available to support the analytical view of solutions

Download

Before starting the application, please make sure you have OpenJDK (Version: 11.0.14 or later) installed on your computer.

Open the repository of the application. Download the file CCN.jar. After download is completed, right-click on the file, choose Open with then choose OpenJDK Platform binary to run the application.

If a login screen appears when accessing the repository or the download link, use the following credentials to log in:

Username: ccn-group4
Password: CCN-tuhh-group4

Note: Since we use a free 30-day-trial for the cloud repository, please download the file before the 8th of August. After that, the repository is not available any more.

Logs

When starting the application, logs are documented in the log file created for the current date. Log files are located in the directory logs and their names indicate which date are the logs referring to. The directory logs is located in the same folder as the application.

User manual

Registration

To register a carrier agent, choose Register in the start window. Fill out the registration form, then click on the Register button at the bottom. Here are notations on some fields in the registration form:

  • Transport requests: Tranport requests are enclosed in <> and separated by commas. Each request is of the form ((x1,y1),(x2,y2)), where (x1,y1) is the coordinate of the pickup point and (x2,y2) is of the delivery point. Coordinates can be negative or contain a decimal point.
  • Base rate A: Base rate to reach the pickup point. The input has to be positive and can have up to two decimal digits.
  • Base rate B: Base rate for loading/unloading. The input has to be positive and can have up to two decimal digits.
  • Price: Price for 1 km. The input has to be positive and can have up to two decimal digits.
  • Internal rate: Internal rate for 1 km. The input has to be positive and can have up to two decimal digits.
  • Depot latitude/longitude: Coordinate where the carriers start their tour. Inputs can be negative and contain a decimal point.

Login as carrier

To login as a carrier agent, choose Login in the start window. Enter a valid username/password, then click on the Login button at the bottom.

After logging in successfully, a window displaying an overview of all transport requests of the carrier appears. Column Price shows the price the carrier has to pay if the corresponding transport request was won in an auction. In the next auction process, the prices of the old transport requests will be set back to 0. Below the table is a revenue report displaying:

  • Total cost: Cost that a carrier has to pay for delivering all requests on a tour
  • Total earning: Earning that a carrier will get from shippers after delivering all requests
  • Total revenue: Total amount of income generated by delivering all requests
  • Total profit: Sum of profit of all transport requests a carrier own

User can set the minimum profit of transport requests to be bid or maximum profit of transport requests to be auctioned off by entering a price in the field Min. profit to bid or Max. profit to auction off respectively. To logout, click on the [X]-Button in the top-right corner.

By clicking on the button Visualize tour (underneath the table), the current tour is visualized in a new window on the right panel. On the left panel is the old tour of the carrier before joining the last auction process. Below are the notations of what each symbol in the plot represents.

Login as auctioneer

To login as an auctioneer, choose Login in the start window. Enter auctioneer as username and password, then click on the Login button at the bottom. After logging in, click on Start auction to start auction process. After the auction process finishes, the application will terminate automatically. To monitor the auction process, please refer to the log file of the current date.

Auction process

The auctioneer calculates the profit of each transport requests for all carriers and decides which request to auction off based on the value set in Max. profit to auction off by carriers. The auctioneer then forms possible bundles from transport requests that were sent to auction and carriers can bid for these bundles. The bid is calculated based on the value set in Min. profit to bid by carriers. Finally, the auctioneer computes the best distribution of bundles to carriers. The implemented auction mechanism is Vickery auction.

Note: Want to know more about how bundles are generated and distributed? Click here.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages