Real world scenario : which machine learning algorithm to choose best attributions
I am a .NET Developer and in my company we have developed an engine that attributes missions (transport those packages from A to B) to the best matching driver based on simple rules (pickup address, delivery address, driver's address, driver's vehicule caracteristics (max weight, length), distance to travel, package types to transport, etc ...).
This engine tries to make its best to provide to the user with the 3 best matching drivers the transport mission.
We are trying to address this scenario with machine learning (100000+ missions in our database).
We want to answer this questions:
- Who is the best matching driver for this mission?
- What is the matching score for XXX driver for this mission?
As a side note, our pool of drivers is evolving (some drivers are removed while some others are added in our system over time).
I am discovering ML and learning about basic ML algorithms, but I can not find an algorithm that could answer to this question.
I would like to develop with the new (still in preview) Microsoft Framework for .NET developers (ML.NET), or maybe Azure Machine Learning Studio or Azure Machine Learning Service
Our data look like (simplified) :
Drivers :
Name City VehicleMaxWeight VehicleLength ... StreetName, ZipCode, Country, Latitude, Longitude ...
Pierre Paris 19000Kg 12m
Francois Bordeaux 26000Kg 12m
Guillaume Montpellier 44000Kg 16.50m
Jacques Montpellier 32000Kg 16.50m
Jean Paris 12000Kg 8m
Bernard Montauban 26000Kg 12m
Transport mission history :
PickupCity DeliveryCity Service TotalWeight TotalLenght DriverAssignment (Distance to PickupCity)
Paris Marseille S1 2000Kg 5m Jean (5km)
Paris Lyon S2 15000Kg 10m Pierre (8km)
Toulouse Lyon S3 5000Kg 5m Bernard (53km)
... ... ... ... ... ... (...)
Lyon Paris S2 3000Kg 3m ????????????????
Or if the first problem cannot be easily addressed, it would be useful to answer to this question :
Which driver can I select to go from Lyon to Paris for service S2, given the following history ?
Transport mission history :
PickupCity DeliveryCity Service DriverAssignment
Paris Marseille S1 Jean
Paris Lyon S2 Pierre
Toulouse Lyon S3 Bernard
... ... ... ...
Lyon Paris S2 ????????????????
I would try to predict the column
DriverAssignment
Could you please help me find an algorithm for this task ? And maybe how I can implement it in ML.NET or Azure ML Studio / Service ?
Thank you !
machine-learning artificial-intelligence azure-machine-learning ml.net
add a comment |
I am a .NET Developer and in my company we have developed an engine that attributes missions (transport those packages from A to B) to the best matching driver based on simple rules (pickup address, delivery address, driver's address, driver's vehicule caracteristics (max weight, length), distance to travel, package types to transport, etc ...).
This engine tries to make its best to provide to the user with the 3 best matching drivers the transport mission.
We are trying to address this scenario with machine learning (100000+ missions in our database).
We want to answer this questions:
- Who is the best matching driver for this mission?
- What is the matching score for XXX driver for this mission?
As a side note, our pool of drivers is evolving (some drivers are removed while some others are added in our system over time).
I am discovering ML and learning about basic ML algorithms, but I can not find an algorithm that could answer to this question.
I would like to develop with the new (still in preview) Microsoft Framework for .NET developers (ML.NET), or maybe Azure Machine Learning Studio or Azure Machine Learning Service
Our data look like (simplified) :
Drivers :
Name City VehicleMaxWeight VehicleLength ... StreetName, ZipCode, Country, Latitude, Longitude ...
Pierre Paris 19000Kg 12m
Francois Bordeaux 26000Kg 12m
Guillaume Montpellier 44000Kg 16.50m
Jacques Montpellier 32000Kg 16.50m
Jean Paris 12000Kg 8m
Bernard Montauban 26000Kg 12m
Transport mission history :
PickupCity DeliveryCity Service TotalWeight TotalLenght DriverAssignment (Distance to PickupCity)
Paris Marseille S1 2000Kg 5m Jean (5km)
Paris Lyon S2 15000Kg 10m Pierre (8km)
Toulouse Lyon S3 5000Kg 5m Bernard (53km)
... ... ... ... ... ... (...)
Lyon Paris S2 3000Kg 3m ????????????????
Or if the first problem cannot be easily addressed, it would be useful to answer to this question :
Which driver can I select to go from Lyon to Paris for service S2, given the following history ?
Transport mission history :
PickupCity DeliveryCity Service DriverAssignment
Paris Marseille S1 Jean
Paris Lyon S2 Pierre
Toulouse Lyon S3 Bernard
... ... ... ...
Lyon Paris S2 ????????????????
I would try to predict the column
DriverAssignment
Could you please help me find an algorithm for this task ? And maybe how I can implement it in ML.NET or Azure ML Studio / Service ?
Thank you !
machine-learning artificial-intelligence azure-machine-learning ml.net
This appears to be a route optimization / resource allocation problem. ML is not necessarily the most suitable approach to such problems. The question that needs to be answered first is: Is ML the right approach to this problem? This can be illuminating: developers.google.com/optimization/routing
– Hapalop
Nov 12 '18 at 22:28
We have other algrithm to compute the itinerary. In our case, we just want to choose a driver based on what we need to transport from an address to another and what capacity the driver is able to carry
– Vincent
Nov 13 '18 at 9:36
I have edited my question with a simplification if the first problem cannot be solved by ML. If we just take into account the history of previous transports, and which service did the drivers had to transport (S1, S2, S3...) and who was assigned, are we able to predict who we can assign for the next mission ? If I add or remove drivers in the system, do I need to train again the model ?
– Vincent
Nov 13 '18 at 10:09
add a comment |
I am a .NET Developer and in my company we have developed an engine that attributes missions (transport those packages from A to B) to the best matching driver based on simple rules (pickup address, delivery address, driver's address, driver's vehicule caracteristics (max weight, length), distance to travel, package types to transport, etc ...).
This engine tries to make its best to provide to the user with the 3 best matching drivers the transport mission.
We are trying to address this scenario with machine learning (100000+ missions in our database).
We want to answer this questions:
- Who is the best matching driver for this mission?
- What is the matching score for XXX driver for this mission?
As a side note, our pool of drivers is evolving (some drivers are removed while some others are added in our system over time).
I am discovering ML and learning about basic ML algorithms, but I can not find an algorithm that could answer to this question.
I would like to develop with the new (still in preview) Microsoft Framework for .NET developers (ML.NET), or maybe Azure Machine Learning Studio or Azure Machine Learning Service
Our data look like (simplified) :
Drivers :
Name City VehicleMaxWeight VehicleLength ... StreetName, ZipCode, Country, Latitude, Longitude ...
Pierre Paris 19000Kg 12m
Francois Bordeaux 26000Kg 12m
Guillaume Montpellier 44000Kg 16.50m
Jacques Montpellier 32000Kg 16.50m
Jean Paris 12000Kg 8m
Bernard Montauban 26000Kg 12m
Transport mission history :
PickupCity DeliveryCity Service TotalWeight TotalLenght DriverAssignment (Distance to PickupCity)
Paris Marseille S1 2000Kg 5m Jean (5km)
Paris Lyon S2 15000Kg 10m Pierre (8km)
Toulouse Lyon S3 5000Kg 5m Bernard (53km)
... ... ... ... ... ... (...)
Lyon Paris S2 3000Kg 3m ????????????????
Or if the first problem cannot be easily addressed, it would be useful to answer to this question :
Which driver can I select to go from Lyon to Paris for service S2, given the following history ?
Transport mission history :
PickupCity DeliveryCity Service DriverAssignment
Paris Marseille S1 Jean
Paris Lyon S2 Pierre
Toulouse Lyon S3 Bernard
... ... ... ...
Lyon Paris S2 ????????????????
I would try to predict the column
DriverAssignment
Could you please help me find an algorithm for this task ? And maybe how I can implement it in ML.NET or Azure ML Studio / Service ?
Thank you !
machine-learning artificial-intelligence azure-machine-learning ml.net
I am a .NET Developer and in my company we have developed an engine that attributes missions (transport those packages from A to B) to the best matching driver based on simple rules (pickup address, delivery address, driver's address, driver's vehicule caracteristics (max weight, length), distance to travel, package types to transport, etc ...).
This engine tries to make its best to provide to the user with the 3 best matching drivers the transport mission.
We are trying to address this scenario with machine learning (100000+ missions in our database).
We want to answer this questions:
- Who is the best matching driver for this mission?
- What is the matching score for XXX driver for this mission?
As a side note, our pool of drivers is evolving (some drivers are removed while some others are added in our system over time).
I am discovering ML and learning about basic ML algorithms, but I can not find an algorithm that could answer to this question.
I would like to develop with the new (still in preview) Microsoft Framework for .NET developers (ML.NET), or maybe Azure Machine Learning Studio or Azure Machine Learning Service
Our data look like (simplified) :
Drivers :
Name City VehicleMaxWeight VehicleLength ... StreetName, ZipCode, Country, Latitude, Longitude ...
Pierre Paris 19000Kg 12m
Francois Bordeaux 26000Kg 12m
Guillaume Montpellier 44000Kg 16.50m
Jacques Montpellier 32000Kg 16.50m
Jean Paris 12000Kg 8m
Bernard Montauban 26000Kg 12m
Transport mission history :
PickupCity DeliveryCity Service TotalWeight TotalLenght DriverAssignment (Distance to PickupCity)
Paris Marseille S1 2000Kg 5m Jean (5km)
Paris Lyon S2 15000Kg 10m Pierre (8km)
Toulouse Lyon S3 5000Kg 5m Bernard (53km)
... ... ... ... ... ... (...)
Lyon Paris S2 3000Kg 3m ????????????????
Or if the first problem cannot be easily addressed, it would be useful to answer to this question :
Which driver can I select to go from Lyon to Paris for service S2, given the following history ?
Transport mission history :
PickupCity DeliveryCity Service DriverAssignment
Paris Marseille S1 Jean
Paris Lyon S2 Pierre
Toulouse Lyon S3 Bernard
... ... ... ...
Lyon Paris S2 ????????????????
I would try to predict the column
DriverAssignment
Could you please help me find an algorithm for this task ? And maybe how I can implement it in ML.NET or Azure ML Studio / Service ?
Thank you !
machine-learning artificial-intelligence azure-machine-learning ml.net
machine-learning artificial-intelligence azure-machine-learning ml.net
edited Nov 13 '18 at 10:06
Vincent
asked Nov 12 '18 at 21:51
VincentVincent
144128
144128
This appears to be a route optimization / resource allocation problem. ML is not necessarily the most suitable approach to such problems. The question that needs to be answered first is: Is ML the right approach to this problem? This can be illuminating: developers.google.com/optimization/routing
– Hapalop
Nov 12 '18 at 22:28
We have other algrithm to compute the itinerary. In our case, we just want to choose a driver based on what we need to transport from an address to another and what capacity the driver is able to carry
– Vincent
Nov 13 '18 at 9:36
I have edited my question with a simplification if the first problem cannot be solved by ML. If we just take into account the history of previous transports, and which service did the drivers had to transport (S1, S2, S3...) and who was assigned, are we able to predict who we can assign for the next mission ? If I add or remove drivers in the system, do I need to train again the model ?
– Vincent
Nov 13 '18 at 10:09
add a comment |
This appears to be a route optimization / resource allocation problem. ML is not necessarily the most suitable approach to such problems. The question that needs to be answered first is: Is ML the right approach to this problem? This can be illuminating: developers.google.com/optimization/routing
– Hapalop
Nov 12 '18 at 22:28
We have other algrithm to compute the itinerary. In our case, we just want to choose a driver based on what we need to transport from an address to another and what capacity the driver is able to carry
– Vincent
Nov 13 '18 at 9:36
I have edited my question with a simplification if the first problem cannot be solved by ML. If we just take into account the history of previous transports, and which service did the drivers had to transport (S1, S2, S3...) and who was assigned, are we able to predict who we can assign for the next mission ? If I add or remove drivers in the system, do I need to train again the model ?
– Vincent
Nov 13 '18 at 10:09
This appears to be a route optimization / resource allocation problem. ML is not necessarily the most suitable approach to such problems. The question that needs to be answered first is: Is ML the right approach to this problem? This can be illuminating: developers.google.com/optimization/routing
– Hapalop
Nov 12 '18 at 22:28
This appears to be a route optimization / resource allocation problem. ML is not necessarily the most suitable approach to such problems. The question that needs to be answered first is: Is ML the right approach to this problem? This can be illuminating: developers.google.com/optimization/routing
– Hapalop
Nov 12 '18 at 22:28
We have other algrithm to compute the itinerary. In our case, we just want to choose a driver based on what we need to transport from an address to another and what capacity the driver is able to carry
– Vincent
Nov 13 '18 at 9:36
We have other algrithm to compute the itinerary. In our case, we just want to choose a driver based on what we need to transport from an address to another and what capacity the driver is able to carry
– Vincent
Nov 13 '18 at 9:36
I have edited my question with a simplification if the first problem cannot be solved by ML. If we just take into account the history of previous transports, and which service did the drivers had to transport (S1, S2, S3...) and who was assigned, are we able to predict who we can assign for the next mission ? If I add or remove drivers in the system, do I need to train again the model ?
– Vincent
Nov 13 '18 at 10:09
I have edited my question with a simplification if the first problem cannot be solved by ML. If we just take into account the history of previous transports, and which service did the drivers had to transport (S1, S2, S3...) and who was assigned, are we able to predict who we can assign for the next mission ? If I add or remove drivers in the system, do I need to train again the model ?
– Vincent
Nov 13 '18 at 10:09
add a comment |
1 Answer
1
active
oldest
votes
If ML is to be used, this can be formulated as a recommendation system problem: given the sequence of the drivers a mission has been matched to before, what drivers should be recommended for the next time this mission comes up again? Both content-based and collaborative filtering recommender systems can be used. If a mission occurs to be all new (no match history), collaborative filtering can still be used.
OR, however, might be a better fit for this problem. The underlying assumption of ML is: the past operation practices (the data you have shared) have been optimal; this is what the ML will learn as good practices and will use subsequently to give future recommendations. Unless reinforcement learning is used, in which case you need to come up with some notion of cumulative reward.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53270630%2freal-world-scenario-which-machine-learning-algorithm-to-choose-best-attributio%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
If ML is to be used, this can be formulated as a recommendation system problem: given the sequence of the drivers a mission has been matched to before, what drivers should be recommended for the next time this mission comes up again? Both content-based and collaborative filtering recommender systems can be used. If a mission occurs to be all new (no match history), collaborative filtering can still be used.
OR, however, might be a better fit for this problem. The underlying assumption of ML is: the past operation practices (the data you have shared) have been optimal; this is what the ML will learn as good practices and will use subsequently to give future recommendations. Unless reinforcement learning is used, in which case you need to come up with some notion of cumulative reward.
add a comment |
If ML is to be used, this can be formulated as a recommendation system problem: given the sequence of the drivers a mission has been matched to before, what drivers should be recommended for the next time this mission comes up again? Both content-based and collaborative filtering recommender systems can be used. If a mission occurs to be all new (no match history), collaborative filtering can still be used.
OR, however, might be a better fit for this problem. The underlying assumption of ML is: the past operation practices (the data you have shared) have been optimal; this is what the ML will learn as good practices and will use subsequently to give future recommendations. Unless reinforcement learning is used, in which case you need to come up with some notion of cumulative reward.
add a comment |
If ML is to be used, this can be formulated as a recommendation system problem: given the sequence of the drivers a mission has been matched to before, what drivers should be recommended for the next time this mission comes up again? Both content-based and collaborative filtering recommender systems can be used. If a mission occurs to be all new (no match history), collaborative filtering can still be used.
OR, however, might be a better fit for this problem. The underlying assumption of ML is: the past operation practices (the data you have shared) have been optimal; this is what the ML will learn as good practices and will use subsequently to give future recommendations. Unless reinforcement learning is used, in which case you need to come up with some notion of cumulative reward.
If ML is to be used, this can be formulated as a recommendation system problem: given the sequence of the drivers a mission has been matched to before, what drivers should be recommended for the next time this mission comes up again? Both content-based and collaborative filtering recommender systems can be used. If a mission occurs to be all new (no match history), collaborative filtering can still be used.
OR, however, might be a better fit for this problem. The underlying assumption of ML is: the past operation practices (the data you have shared) have been optimal; this is what the ML will learn as good practices and will use subsequently to give future recommendations. Unless reinforcement learning is used, in which case you need to come up with some notion of cumulative reward.
answered Nov 13 '18 at 13:48
HapalopHapalop
417414
417414
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53270630%2freal-world-scenario-which-machine-learning-algorithm-to-choose-best-attributio%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
This appears to be a route optimization / resource allocation problem. ML is not necessarily the most suitable approach to such problems. The question that needs to be answered first is: Is ML the right approach to this problem? This can be illuminating: developers.google.com/optimization/routing
– Hapalop
Nov 12 '18 at 22:28
We have other algrithm to compute the itinerary. In our case, we just want to choose a driver based on what we need to transport from an address to another and what capacity the driver is able to carry
– Vincent
Nov 13 '18 at 9:36
I have edited my question with a simplification if the first problem cannot be solved by ML. If we just take into account the history of previous transports, and which service did the drivers had to transport (S1, S2, S3...) and who was assigned, are we able to predict who we can assign for the next mission ? If I add or remove drivers in the system, do I need to train again the model ?
– Vincent
Nov 13 '18 at 10:09