du.sePublications

CiteExport$(function(){PrimeFaces.cw("TieredMenu","widget_formSmash_upper_j_idt158",{id:"formSmash:upper:j_idt158",widgetVar:"widget_formSmash_upper_j_idt158",autoDisplay:true,overlay:true,my:"left top",at:"left bottom",trigger:"formSmash:upper:exportLink",triggerEvent:"click"});}); $(function(){PrimeFaces.cw("OverlayPanel","widget_formSmash_upper_j_idt159_j_idt161",{id:"formSmash:upper:j_idt159:j_idt161",widgetVar:"widget_formSmash_upper_j_idt159_j_idt161",target:"formSmash:upper:j_idt159:permLink",showEffect:"blind",hideEffect:"fade",my:"right top",at:"right bottom",showCloseIcon:true});});

Solving the Vehicle Routing Problem with Genetic ALgorithm and Simulated AnnealingPrimeFaces.cw("AccordionPanel","widget_formSmash_some",{id:"formSmash:some",widgetVar:"widget_formSmash_some",multiple:true}); PrimeFaces.cw("AccordionPanel","widget_formSmash_all",{id:"formSmash:all",widgetVar:"widget_formSmash_all",multiple:true});
function selectAll()
{
var panelSome = $(PrimeFaces.escapeClientId("formSmash:some"));
var panelAll = $(PrimeFaces.escapeClientId("formSmash:all"));
panelAll.toggle();
toggleList(panelSome.get(0).childNodes, panelAll);
toggleList(panelAll.get(0).childNodes, panelAll);
}
/*Toggling the list of authorPanel nodes according to the toggling of the closeable second panel */
function toggleList(childList, panel)
{
var panelWasOpen = (panel.get(0).style.display == 'none');
// console.log('panel was open ' + panelWasOpen);
for (var c = 0; c < childList.length; c++) {
if (childList[c].classList.contains('authorPanel')) {
clickNode(panelWasOpen, childList[c]);
}
}
}
/*nodes have styleClass ui-corner-top if they are expanded and ui-corner-all if they are collapsed */
function clickNode(collapse, child)
{
if (collapse && child.classList.contains('ui-corner-top')) {
// console.log('collapse');
child.click();
}
if (!collapse && child.classList.contains('ui-corner-all')) {
// console.log('expand');
child.click();
}
}
PrimeFaces.cw("AccordionPanel","widget_formSmash_responsibleOrgs",{id:"formSmash:responsibleOrgs",widgetVar:"widget_formSmash_responsibleOrgs",multiple:true}); 2008 (English)Independent thesis Advanced level (degree of Master (Two Years))Student thesis
##### Abstract [en]

##### Place, publisher, year, edition, pages

Borlänge, 2008. , 108 p.
##### Keyword [en]

Simulated Annealing, SA, Genetic Algorithm, GA, Traveling Salesman Problem, TSP, Vehicle Routing Problem, VRP, heuristics, solution, optimal solution, path, feasible path, search taboo search, heuristics
##### Identifiers

URN: urn:nbn:se:du-3306OAI: oai:dalea.du.se:3306DiVA: diva2:518434
##### Uppsok

Technology

#####

PrimeFaces.cw("AccordionPanel","widget_formSmash_j_idt488",{id:"formSmash:j_idt488",widgetVar:"widget_formSmash_j_idt488",multiple:true});
##### Supervisors

PrimeFaces.cw("AccordionPanel","widget_formSmash_j_idt494",{id:"formSmash:j_idt494",widgetVar:"widget_formSmash_j_idt494",multiple:true});
#####

PrimeFaces.cw("AccordionPanel","widget_formSmash_j_idt500",{id:"formSmash:j_idt500",widgetVar:"widget_formSmash_j_idt500",multiple:true});
Available from: 2008-06-23 Created: 2008-06-23 Last updated: 2012-04-24Bibliographically approved

This Thesis Work will concentrate on a very interesting problem, the Vehicle Routing Problem (VRP). In this problem, customers or cities have to be visited and packages have to be transported to each of them, starting from a basis point on the map. The goal is to solve the transportation problem, to be able to deliver the packages - on time for the customers, - enough package for each Customer, - using the available resources - and – of course - to be so effective as it is possible. Although this problem seems to be very easy to solve with a small number of cities or customers, it is not. In this problem the algorithm have to face with several constraints, for example opening hours, package delivery times, truck capacities, etc. This makes this problem a so called Multi Constraint Optimization Problem (MCOP). What’s more, this problem is intractable with current amount of computational power which is available for most of us. As the number of customers grow, the calculations to be done grows exponential fast, because all constraints have to be solved for each customers and it should not be forgotten that the goal is to find a solution, what is best enough, before the time for the calculation is up. This problem is introduced in the first chapter: form its basics, the Traveling Salesman Problem, using some theoretical and mathematical background it is shown, why is it so hard to optimize this problem, and although it is so hard, and there is no best algorithm known for huge number of customers, why is it a worth to deal with it. Just think about a huge transportation company with ten thousands of trucks, millions of customers: how much money could be saved if we would know the optimal path for all our packages. Although there is no best algorithm is known for this kind of optimization problems, we are trying to give an acceptable solution for it in the second and third chapter, where two algorithms are described: the Genetic Algorithm and the Simulated Annealing. Both of them are based on obtaining the processes of nature and material science. These algorithms will hardly ever be able to find the best solution for the problem, but they are able to give a very good solution in special cases within acceptable calculation time. In these chapters (2nd and 3rd) the Genetic Algorithm and Simulated Annealing is described in details, from their basis in the “real world” through their terminology and finally the basic implementation of them. The work will put a stress on the limits of these algorithms, their advantages and disadvantages, and also the comparison of them to each other. Finally, after all of these theories are shown, a simulation will be executed on an artificial environment of the VRP, with both Simulated Annealing and Genetic Algorithm. They will both solve the same problem in the same environment and are going to be compared to each other. The environment and the implementation are also described here, so as the test results obtained. Finally the possible improvements of these algorithms are discussed, and the work will try to answer the “big” question, “Which algorithm is better?”, if this question even exists.

urn-nbn$(function(){PrimeFaces.cw("Tooltip","widget_formSmash_j_idt1338",{id:"formSmash:j_idt1338",widgetVar:"widget_formSmash_j_idt1338",showEffect:"fade",hideEffect:"fade",showDelay:500,hideDelay:300,target:"formSmash:altmetricDiv"});});

CiteExport$(function(){PrimeFaces.cw("TieredMenu","widget_formSmash_lower_j_idt1391",{id:"formSmash:lower:j_idt1391",widgetVar:"widget_formSmash_lower_j_idt1391",autoDisplay:true,overlay:true,my:"left top",at:"left bottom",trigger:"formSmash:lower:exportLink",triggerEvent:"click"});}); $(function(){PrimeFaces.cw("OverlayPanel","widget_formSmash_lower_j_idt1392_j_idt1394",{id:"formSmash:lower:j_idt1392:j_idt1394",widgetVar:"widget_formSmash_lower_j_idt1392_j_idt1394",target:"formSmash:lower:j_idt1392:permLink",showEffect:"blind",hideEffect:"fade",my:"right top",at:"right bottom",showCloseIcon:true});});