{"id":12374,"date":"2012-05-23T07:20:38","date_gmt":"2012-05-23T06:20:38","guid":{"rendered":"http:\/\/www.decidesoluciones.es\/de-que-hablo-cuando-hablo-de-optimizacion-2\/"},"modified":"2020-03-27T13:15:55","modified_gmt":"2020-03-27T13:15:55","slug":"what-optimization-is","status":"publish","type":"post","link":"https:\/\/decidesoluciones.es\/en\/what-optimization-is\/","title":{"rendered":"What I mean when I talk about Optimization"},"content":{"rendered":"<p style=\"text-align: justify;\">When searching for a topic to write about in this blog, I decided to look for a formal definition of <strong>Constraint Programming<\/strong>, a technique regularly used in <span style=\"color: #ff6633;\"><strong>decide<\/strong><\/span> projects. In <a href=\"http:\/\/en.wikipedia.org\/wiki\/Constraint_programming\" target=\"_blank\" rel=\"noopener noreferrer\">wikipedia<\/a>, Constraint Programming is defined as a programming paradigm which expresses variables in the form of constraints.<\/p>\n<p style=\"text-align: justify;\">The particularity of this paradigm is that, instead of defining the way to reach a solution, it simply defines the properties the solution must have, without specifying how to arrive at it. In this regard, it is clearly a declarative paradigm.<\/p>\n<p style=\"text-align: justify;\">While it is true that the use of this paradigm in business involves more than simply defining the variables and constraints involved in a problem, this definition serves as a starting point to explain what we mean at <span style=\"color: #ff6633;\"><strong>decide<\/strong><\/span> when we talk about Optimization.<\/p>\n<p>&nbsp;<\/p>\n<h2>Constraints (context)<\/h2>\n<p style=\"text-align: justify;\">All the problems we encounter in our everyday lives, for which we must make decisions, can be formulated using this paradigm. Any decision we make will have <span style=\"text-decoration: underline;\">to be applicable<\/span> in a specific context, defined by a set of constraints, of rules that this solution must fulfil to make sense. Every time we make a decision, we need to know the context (constraints) in which this decision will be applied so we can ensure <strong>the decision is viable<\/strong>.<\/p>\n<p style=\"text-align: justify;\">Thus, when you want to move your car from one spot to another, you have to follow, at the very least, the laws of physics and, as you are a responsible citizen, you will naturally want to abide by traffic laws. A <strong>valid path<\/strong> is one that <strong>meets all the constraints imposed by the physical context + traffic laws<\/strong>. Other possible routes, those that cross rivers without bridges, run through buildings or make illegal manoeuvres, are of no interest.<\/p>\n<p style=\"text-align: justify;\">In a <strong>manufacturing problem<\/strong>, constraints will be defined by the capacity of production lines, the time required to carry out each task, precedence relationships between tasks, etc. A viable solution is a sequencing of production tasks that takes into account all these constraints.<\/p>\n<p style=\"text-align: justify;\">When <strong>assigning shifts,<\/strong> the constraints will be defined by the labour agreement, work requirements and individual agreements with each employee, etc. In this case, a solution will consist of allocating shifts to people over a period of time, respecting all these constraints.<\/p>\n<p>&nbsp;<\/p>\n<h2 style=\"text-align: justify;\">Criteria of &#8216;goodness&#8217; (intention)<\/h2>\n<p style=\"text-align: justify;\">While it is true that there are cases where it is sufficient to accept a solution that is simply viable, this is not the norm: generally we want <strong>to make the best decision from the different viable options.<\/strong><\/p>\n<p style=\"text-align: justify;\">But what makes one solution &#8216;better&#8217; than another? Are there any objective criteria to help us make this decision? Actually, no. Behind the judgment that determines that one viable solution is better than another, there is always an intention. Probably our intention is to arrive as soon as possible to our destination, or to take the shortest distance to reach it, or even to choose the most scenic route. And, depending on the criteria we use to evaluate the different routes, the outcome of this judgement will be different.<\/p>\n<p style=\"text-align: justify;\">We always have a criterion which allows us to evaluate solutions. We either prefer to manufacture as quickly as possible, or as cheaply as possible. We prefer to organise a shifts to minimises the number of employees, or one that minimises the financial costs of allocation, or a mixture of both (multi-objective). We always have a criterion.<\/p>\n<p style=\"text-align: justify;\">Thus, all decision-making problems are actually a mix between a <a href=\"http:\/\/en.wikipedia.org\/wiki\/Boolean_satisfiability_problem\" target=\"_blank\" rel=\"noopener noreferrer\">problem of satisfying constraints<\/a> (searching for viable solutions) and a problem of optimization <a title=\"problem of optimization\" href=\"http:\/\/en.wikipedia.org\/wiki\/Optimization_%28mathematics%29\" target=\"_blank\" rel=\"noopener noreferrer\">problem of optimization<\/a> (searching for good solutions).<\/p>\n<p>&nbsp;<\/p>\n<h2>It is a changing world<\/h2>\n<p>A reasonable (and infallible) approach in search of these solutions would be to enumerate all feasible solutions (viabilities), to evaluate each of these and to choose the best one, in accordance with the criteria of &#8216;goodness&#8217; we set.<\/p>\n<p>But the human mind is not good enumerating things. It does have other virtues: it is creative and able to invent rules or guidelines based on experience. And this is the asset that is usually used for solving such decision-making problems: planning experts use their experience, translated into planning guidelines and rules, to make &#8216;good&#8217; decisions in their constrained systems.<\/p>\n<p>But the human mind is not good enumerating things. It does have other virtues: it is creative and able to invent rules or guidelines based on experience. And this is the asset that is usually used for solving such decision-making problems: planning experts use their experience, translated into planning guidelines and rules, to make &#8216;good&#8217; decisions in their constrained systems.<\/p>\n<p>It would be unfair to argue that this technique does not work. The entire evolution of humankind has been a result of using this technique. Over time, humans have gained experience; we have established rules for solving the problems we have encountered, and therefore managed to avert these problems in order to be able to focus on the next ones. It is obvious that this strategy has worked.<\/p>\n<p>However, in the past 50 years decision-making techniques have evolved more than in previous millennia. Moreover, in a changing world, there is no time to leave decision-making to experience. The rules that were \u2018good\u2019 10 years ago are no longer \u2018good\u2019 now; and the rules that are \u2018good\u2019 now will not be \u2018good\u2019 in 5 years time.<\/p>\n<p><strong>This difference between the pace at which changes occur and the pace at which they are assimilated<\/strong> (they become &#8216;experience&#8217;) means that ultimately outdated<strong> solutions end up being applied to new problems<\/strong>; that is to say, often general rules are used which once worked but now no longer work as well.<\/p>\n<p>&nbsp;<\/p>\n<h2>What do I mean when I talk about Optimization?<\/h2>\n<p>If we want to be competitive, if we want to adapt our decision-making processes to changing conditions, we need to approach things differently.<\/p>\n<p>This is when Optimization and Artificial Intelligence techniques start to come into play and make sense.\u00a0 Computers have no problem enumerating solutions or performing millions of calculations in one second. This \u2018brute force\u2019 approach has an important advantage: it does not depend on prior knowledge or on experience. The technique of enumerating possible solutions to a problem and choosing the best one only requires knowledge of the constraints, and the criteria of \u2018goodness\u2019, its structure. If the problem changes, as long as there is information on what has changed (the constraints or criteria), the technique works exactly the same.<\/p>\n<p>While it is true that most problems have too many viable solutions, too many even for a computer, in recent decades the scientific community has worked very hard, both from a theoretical and a practical standpoint, to address this complexity.<\/p>\n<p>&nbsp;<\/p>\n<p style=\"text-align: justify;\">They have created a series of techniques, programming paradigms, and theoretical and practical results that position computers as serious competitors when making decisions. And<strong> this is what I mean when I talk about optimization<\/strong>: the application of software, mathematical or statistical techniques in automated decision-making. This is the work that Decide has been conducting in this area since it was founded.<\/p>\n<p><a href=\"http:\/\/en.wikipedia.org\/wiki\/Constraint_programming\" target=\"_blank\" rel=\"noopener noreferrer\">Constraint Programming<\/a> is one of the techniques we use in particular, but there are others. <a href=\"http:\/\/en.wikipedia.org\/wiki\/Linear_programming\" target=\"_blank\" rel=\"noopener noreferrer\">Linear Programming<\/a> techniques (Integer Linear and Mixed Integer Linear) are able to solve many of our customers\u2019 problems. For example, <a href=\"http:\/\/en.wikipedia.org\/wiki\/Stochastic_programming\" target=\"_blank\" rel=\"noopener noreferrer\">Stochastic Programming <\/a>deals with the appearance of uncertainty in optimization problems. On the other hand, <a href=\"http:\/\/en.wikipedia.org\/wiki\/Metaheuristic\" target=\"_blank\" rel=\"noopener noreferrer\">Metaheuristic<\/a> techniques look at the way nature solves its problems in order to adapt these solutions so that they can be used to solve business problems. There are countless techniques (<a href=\"http:\/\/en.wikipedia.org\/wiki\/Nonlinear_programming\" target=\"_blank\" rel=\"noopener noreferrer\">Non-Linear Programming<\/a>,<a href=\"http:\/\/en.wikipedia.org\/wiki\/Dynamic_programming\" target=\"_blank\" rel=\"noopener noreferrer\"> Dynamic Programming<\/a>, etc.) that science has given us to enable computers to solve human problems.<\/p>\n<p>In later posts, we will have a closer look at each of these techniques, and introduce case studies we have encountered in our projects, showing how each of these techniques has been applied and giving details of the implementation procedures.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is what I mean when I talk about optimisation: the application of software, mathematical or statistical techniques in automated decision-making. This is the work that Decide has been conducting in this area since it was founded.<\/p>\n","protected":false},"author":30,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[262],"tags":[],"class_list":["post-12374","post","type-post","status-publish","format-standard","hentry","category-uncategorized","category-262","description-off"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>What I mean when I talk about Optimization - Decide<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/decidesoluciones.es\/en\/what-optimization-is\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What I mean when I talk about Optimization - Decide\" \/>\n<meta property=\"og:description\" content=\"This is what I mean when I talk about optimisation: the application of software, mathematical or statistical techniques in automated decision-making. This is the work that Decide has been conducting in this area since it was founded.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/decidesoluciones.es\/en\/what-optimization-is\/\" \/>\n<meta property=\"og:site_name\" content=\"Decide\" \/>\n<meta property=\"article:published_time\" content=\"2012-05-23T06:20:38+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-03-27T13:15:55+00:00\" \/>\n<meta name=\"author\" content=\"decide4AI\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@canaldecide\" \/>\n<meta name=\"twitter:site\" content=\"@canaldecide\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"decide4AI\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/what-optimization-is\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/what-optimization-is\\\/\"},\"author\":{\"name\":\"decide4AI\",\"@id\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/#\\\/schema\\\/person\\\/c5a2787a44b67d8f84604a8b87c76075\"},\"headline\":\"What I mean when I talk about Optimization\",\"datePublished\":\"2012-05-23T06:20:38+00:00\",\"dateModified\":\"2020-03-27T13:15:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/what-optimization-is\\\/\"},\"wordCount\":1311,\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/what-optimization-is\\\/\",\"url\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/what-optimization-is\\\/\",\"name\":\"What I mean when I talk about Optimization - Decide\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/#website\"},\"datePublished\":\"2012-05-23T06:20:38+00:00\",\"dateModified\":\"2020-03-27T13:15:55+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/#\\\/schema\\\/person\\\/c5a2787a44b67d8f84604a8b87c76075\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/what-optimization-is\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/what-optimization-is\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/what-optimization-is\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/decide-2\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What I mean when I talk about Optimization\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/\",\"name\":\"Decide\",\"description\":\"Advanced Analytics. Smart Decisions\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/decidesoluciones.es\\\/en\\\/#\\\/schema\\\/person\\\/c5a2787a44b67d8f84604a8b87c76075\",\"name\":\"decide4AI\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5a16f5f3009bc3081c68bd986b0dd38c75f3bfbf37ebdb7e7cdc0594d063a16c?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5a16f5f3009bc3081c68bd986b0dd38c75f3bfbf37ebdb7e7cdc0594d063a16c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5a16f5f3009bc3081c68bd986b0dd38c75f3bfbf37ebdb7e7cdc0594d063a16c?s=96&d=mm&r=g\",\"caption\":\"decide4AI\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"What I mean when I talk about Optimization - Decide","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/decidesoluciones.es\/en\/what-optimization-is\/","og_locale":"en_US","og_type":"article","og_title":"What I mean when I talk about Optimization - Decide","og_description":"This is what I mean when I talk about optimisation: the application of software, mathematical or statistical techniques in automated decision-making. This is the work that Decide has been conducting in this area since it was founded.","og_url":"https:\/\/decidesoluciones.es\/en\/what-optimization-is\/","og_site_name":"Decide","article_published_time":"2012-05-23T06:20:38+00:00","article_modified_time":"2020-03-27T13:15:55+00:00","author":"decide4AI","twitter_card":"summary_large_image","twitter_creator":"@canaldecide","twitter_site":"@canaldecide","twitter_misc":{"Written by":"decide4AI","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/decidesoluciones.es\/en\/what-optimization-is\/#article","isPartOf":{"@id":"https:\/\/decidesoluciones.es\/en\/what-optimization-is\/"},"author":{"name":"decide4AI","@id":"https:\/\/decidesoluciones.es\/en\/#\/schema\/person\/c5a2787a44b67d8f84604a8b87c76075"},"headline":"What I mean when I talk about Optimization","datePublished":"2012-05-23T06:20:38+00:00","dateModified":"2020-03-27T13:15:55+00:00","mainEntityOfPage":{"@id":"https:\/\/decidesoluciones.es\/en\/what-optimization-is\/"},"wordCount":1311,"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/decidesoluciones.es\/en\/what-optimization-is\/","url":"https:\/\/decidesoluciones.es\/en\/what-optimization-is\/","name":"What I mean when I talk about Optimization - Decide","isPartOf":{"@id":"https:\/\/decidesoluciones.es\/en\/#website"},"datePublished":"2012-05-23T06:20:38+00:00","dateModified":"2020-03-27T13:15:55+00:00","author":{"@id":"https:\/\/decidesoluciones.es\/en\/#\/schema\/person\/c5a2787a44b67d8f84604a8b87c76075"},"breadcrumb":{"@id":"https:\/\/decidesoluciones.es\/en\/what-optimization-is\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/decidesoluciones.es\/en\/what-optimization-is\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/decidesoluciones.es\/en\/what-optimization-is\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/decidesoluciones.es\/en\/decide-2\/"},{"@type":"ListItem","position":2,"name":"What I mean when I talk about Optimization"}]},{"@type":"WebSite","@id":"https:\/\/decidesoluciones.es\/en\/#website","url":"https:\/\/decidesoluciones.es\/en\/","name":"Decide","description":"Advanced Analytics. Smart Decisions","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/decidesoluciones.es\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/decidesoluciones.es\/en\/#\/schema\/person\/c5a2787a44b67d8f84604a8b87c76075","name":"decide4AI","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/5a16f5f3009bc3081c68bd986b0dd38c75f3bfbf37ebdb7e7cdc0594d063a16c?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5a16f5f3009bc3081c68bd986b0dd38c75f3bfbf37ebdb7e7cdc0594d063a16c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5a16f5f3009bc3081c68bd986b0dd38c75f3bfbf37ebdb7e7cdc0594d063a16c?s=96&d=mm&r=g","caption":"decide4AI"}}]}},"_links":{"self":[{"href":"https:\/\/decidesoluciones.es\/en\/wp-json\/wp\/v2\/posts\/12374","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/decidesoluciones.es\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/decidesoluciones.es\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/decidesoluciones.es\/en\/wp-json\/wp\/v2\/users\/30"}],"replies":[{"embeddable":true,"href":"https:\/\/decidesoluciones.es\/en\/wp-json\/wp\/v2\/comments?post=12374"}],"version-history":[{"count":2,"href":"https:\/\/decidesoluciones.es\/en\/wp-json\/wp\/v2\/posts\/12374\/revisions"}],"predecessor-version":[{"id":21423,"href":"https:\/\/decidesoluciones.es\/en\/wp-json\/wp\/v2\/posts\/12374\/revisions\/21423"}],"wp:attachment":[{"href":"https:\/\/decidesoluciones.es\/en\/wp-json\/wp\/v2\/media?parent=12374"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/decidesoluciones.es\/en\/wp-json\/wp\/v2\/categories?post=12374"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/decidesoluciones.es\/en\/wp-json\/wp\/v2\/tags?post=12374"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}