Dynamic programming's principle of optimality as an abstract construct












0












$begingroup$


In dynamic programming, the principle of optimality (refer to Bertsekas's Optimal Control, volume 1, page 18) is a statement that says:




For any optimal policy $pi$ , we always have a suboptimal policy; which solves the corresponding sub-problem.




I want to reformulate this problem as an abstract construct, using the tools of category theory. First of all, I tried to formulate the set of all Paths flowing from A to B as a set $S_{AB}$. Similarly, I can do it for all the pairs of points in the space .This can be viewed as: a filter on the set of all the possible paths; that start and end at the same points. There are, $C(n,2)$ such sets.(does it sound some what like homotopy or something from algebraic topology?)



Now, from each of these sets, I can consider a shortest path as: some index on these objects. Then, I realize that: the principal of optimality, reduces to saying, such an index category is a monoid.



Now, how do I formulate this entire thing as an universal property?
I am trying to make a generic statement; which goes like: "The optimal policy is a monoid on index category" or some other universal language. Can some one help me find, what i am looking for?










share|cite|improve this question











$endgroup$












  • $begingroup$
    0 OK matroids are what I might be looking at, there is an entire category of matroids . though, the universal properties do not look as beautiful as I would've expected. But of all the universal properties of matroids, in this particular case, for the purpose of dynamic programming you need just the hereditary property.
    $endgroup$
    – Sasikanth Raghava
    Jan 11 at 6:28
















0












$begingroup$


In dynamic programming, the principle of optimality (refer to Bertsekas's Optimal Control, volume 1, page 18) is a statement that says:




For any optimal policy $pi$ , we always have a suboptimal policy; which solves the corresponding sub-problem.




I want to reformulate this problem as an abstract construct, using the tools of category theory. First of all, I tried to formulate the set of all Paths flowing from A to B as a set $S_{AB}$. Similarly, I can do it for all the pairs of points in the space .This can be viewed as: a filter on the set of all the possible paths; that start and end at the same points. There are, $C(n,2)$ such sets.(does it sound some what like homotopy or something from algebraic topology?)



Now, from each of these sets, I can consider a shortest path as: some index on these objects. Then, I realize that: the principal of optimality, reduces to saying, such an index category is a monoid.



Now, how do I formulate this entire thing as an universal property?
I am trying to make a generic statement; which goes like: "The optimal policy is a monoid on index category" or some other universal language. Can some one help me find, what i am looking for?










share|cite|improve this question











$endgroup$












  • $begingroup$
    0 OK matroids are what I might be looking at, there is an entire category of matroids . though, the universal properties do not look as beautiful as I would've expected. But of all the universal properties of matroids, in this particular case, for the purpose of dynamic programming you need just the hereditary property.
    $endgroup$
    – Sasikanth Raghava
    Jan 11 at 6:28














0












0








0





$begingroup$


In dynamic programming, the principle of optimality (refer to Bertsekas's Optimal Control, volume 1, page 18) is a statement that says:




For any optimal policy $pi$ , we always have a suboptimal policy; which solves the corresponding sub-problem.




I want to reformulate this problem as an abstract construct, using the tools of category theory. First of all, I tried to formulate the set of all Paths flowing from A to B as a set $S_{AB}$. Similarly, I can do it for all the pairs of points in the space .This can be viewed as: a filter on the set of all the possible paths; that start and end at the same points. There are, $C(n,2)$ such sets.(does it sound some what like homotopy or something from algebraic topology?)



Now, from each of these sets, I can consider a shortest path as: some index on these objects. Then, I realize that: the principal of optimality, reduces to saying, such an index category is a monoid.



Now, how do I formulate this entire thing as an universal property?
I am trying to make a generic statement; which goes like: "The optimal policy is a monoid on index category" or some other universal language. Can some one help me find, what i am looking for?










share|cite|improve this question











$endgroup$




In dynamic programming, the principle of optimality (refer to Bertsekas's Optimal Control, volume 1, page 18) is a statement that says:




For any optimal policy $pi$ , we always have a suboptimal policy; which solves the corresponding sub-problem.




I want to reformulate this problem as an abstract construct, using the tools of category theory. First of all, I tried to formulate the set of all Paths flowing from A to B as a set $S_{AB}$. Similarly, I can do it for all the pairs of points in the space .This can be viewed as: a filter on the set of all the possible paths; that start and end at the same points. There are, $C(n,2)$ such sets.(does it sound some what like homotopy or something from algebraic topology?)



Now, from each of these sets, I can consider a shortest path as: some index on these objects. Then, I realize that: the principal of optimality, reduces to saying, such an index category is a monoid.



Now, how do I formulate this entire thing as an universal property?
I am trying to make a generic statement; which goes like: "The optimal policy is a monoid on index category" or some other universal language. Can some one help me find, what i am looking for?







optimization category-theory control-theory optimal-control dynamic-programming






share|cite|improve this question















share|cite|improve this question













share|cite|improve this question




share|cite|improve this question








edited Oct 27 '18 at 14:46









Rodrigo de Azevedo

12.8k41855




12.8k41855










asked Oct 11 '18 at 5:43









Sasikanth RaghavaSasikanth Raghava

557




557












  • $begingroup$
    0 OK matroids are what I might be looking at, there is an entire category of matroids . though, the universal properties do not look as beautiful as I would've expected. But of all the universal properties of matroids, in this particular case, for the purpose of dynamic programming you need just the hereditary property.
    $endgroup$
    – Sasikanth Raghava
    Jan 11 at 6:28


















  • $begingroup$
    0 OK matroids are what I might be looking at, there is an entire category of matroids . though, the universal properties do not look as beautiful as I would've expected. But of all the universal properties of matroids, in this particular case, for the purpose of dynamic programming you need just the hereditary property.
    $endgroup$
    – Sasikanth Raghava
    Jan 11 at 6:28
















$begingroup$
0 OK matroids are what I might be looking at, there is an entire category of matroids . though, the universal properties do not look as beautiful as I would've expected. But of all the universal properties of matroids, in this particular case, for the purpose of dynamic programming you need just the hereditary property.
$endgroup$
– Sasikanth Raghava
Jan 11 at 6:28




$begingroup$
0 OK matroids are what I might be looking at, there is an entire category of matroids . though, the universal properties do not look as beautiful as I would've expected. But of all the universal properties of matroids, in this particular case, for the purpose of dynamic programming you need just the hereditary property.
$endgroup$
– Sasikanth Raghava
Jan 11 at 6:28










0






active

oldest

votes











Your Answer





StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "69"
};
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
},
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f2950980%2fdynamic-programmings-principle-of-optimality-as-an-abstract-construct%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























0






active

oldest

votes








0






active

oldest

votes









active

oldest

votes






active

oldest

votes
















draft saved

draft discarded




















































Thanks for contributing an answer to Mathematics Stack Exchange!


  • 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.


Use MathJax to format equations. MathJax reference.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f2950980%2fdynamic-programmings-principle-of-optimality-as-an-abstract-construct%23new-answer', 'question_page');
}
);

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







Popular posts from this blog

Mario Kart Wii

What does “Dominus providebit” mean?

Antonio Litta Visconti Arese