Archives For algorithms

Ningún departamento de marketing desea malgastar el tiempo atendiendo y desarrollando individuos que no tienen intenciones genuinas de comprar, pero es una tarea difícil y agotadora determinar rápidamente cuáles son realmente potenciales compradores, y cuáles no. La complejidad aumenta considerablemente cuando el número de aparentes oportunidades de negocio escala a valores imposibles de analizar humanamente.  

Cuando un negocio tiene aceitado el proceso de captación de oportunidades de negocio (leads), el siguiente paso es el manejo de los mismos para optimizar el uso de recursos y así desarrollar cada cliente según sus necesidades particulares. 

Lead Management

Lead Scoring es una técnica que permite calificar el nivel de interés y calidad de un potencial cliente (lead), y es una forma de valoración de las oportunidades de negocio. Esta calificación se lleva a cabo cuantificando las diferentes acciones directas e indirectas que realiza el lead durante su ciclo de vida.

En la práctica, el lead scoring viene a ayudar a responder preguntas como:

¿Cuáles son datos de calidad, y cuáles pueden ser ignorados?

¿Debo seguir trabajando sobre este lead, o debo descartarlo?

¿Qué clientes necesitan un seguimiento personalizado, y a cuáles puedo hacerles un seguimiento automático?

Con una correcta implementación de un sistema de Lead Scoring, se pueden responder estas preguntas en forma efectiva, dándole diferente peso a características y eventos que el potencial cliente realiza durante su ciclo de vida. Por ejemplo, podríamos pensar que para algunos productos que tienen entrega restringida a cierta área geográfica, el código de área del número telefónico será muy importante para determinar si un lead entrante debe ser desarrollado o directamente descartado. También podríamos deducir que una persona que hace click en un newsletter o que asiste a una conferencia o que hace un llamado para preguntar sobre algún producto, tiene un nivel de interés importante.

Si juntamos la información declarada por el usuario (ubicación, edad, interés declarado en un producto/servicio, etc.) y la combinamos con la información deducida de sus comportamientos (clicks, llenado de formularios, visitas a página web, etc.), tenemos una base de datos útil para encontrar los leads idóneos.

Para traducir esta información, que es no solo numérica sino también en gran medida categórica, en un “score“, debemos dar un puntaje a cada una de las variables que podamos identificar y desarrollar un modelo que permita, por ejemplo, pronosticar la probabilidad de compra de cada cliente potencial. Existen modelos simples (en general aditivos) y otros más complejos que capturan relaciones no lineales entre el comportamiento los usuarios y su compromiso con la compra. En definitiva, lo que buscan las técnicas de Lead Scoring es maximizar la rentabilidad aumentando las ventas y optimizando el uso de los recursos limitados a través de un análisis automatizado y sistemático del comportamiento de los leads.

En el desarrollo de un nuevo sistema de Lead Scoring, hay dos grandes desafíos. El primero es la generación del algoritmo, que sólo se logra estudiando finamente al cliente de cada negocio para identificar las conductas que revelan sus intenciones de compra. El segundo desafío es la implementación del sistema, que busca unificar todo el proceso de gestión de clientes del departamento de Marketing. Continente Siete desarrolla sistemas de Lead Scoring para sus clientes teniendo en cuenta tanto la generación del algoritmo como la implementación del mismo, y de esta manera los ayuda a crecer basándose en la inteligencia de la gestión de sus.oportunidades de negocio.

Al realizar un desarrollo ad-hoc para el cliente se genera una gran ventaja respecto de sistemas o algoritmos enlatados, dado que no es el cliente el que tiene que adaptarse en sus procesos e interpretaciones de los datos, sino que todo se integra con sus procesos actuales y con métricas que tienen sentido a la hora de la toma de decisiones.

Nicolás Oteiza

Continente Siete

Son el único taller de algoritmos en el país, formado por jóvenes profesionales. Garantizan la resolución de problemas, tanto sociales como económicos, de grandes y pequeñas empresas, así como de organismos públicos.

Por Natalia Szydlowski | Toma Mate y Avivate

nysprensa@gmail.com

C7 Jams: Ciclo de Conferencias

En una moderna oficina de Vicente López, encontramos un grupo de jóvenes estudiantes y profesionales, creando cálculos matemáticos muy particulares denominados “algoritmos”. La empresa, Continente Siete, fue llamada así, porque justamente los algoritmos representarían un “séptimo continente virtual”, en el que se desarrolla un modelo matemático, que luego es “bajado” a la realidad. Al aplicar las medidas que surgen de estos algoritmos, siguiendo esta metodología propuesta, se puede solucionar apropiadamente la problemática en cuestión. Así, esta empresa constituye el primer Taller de Algoritmos de la Argentina.

Inicio en la Argentina

Nacieron como un “Laboratorio de Investigación” dentro del Instituto Tecnológico de Buenos Aires (ITBA), y en el año 2008 se organizaron como empresa privada. Integrada mayoritariamente por jóvenes Ingenieros de distintas ramas, Matemáticos, Diseñadores Gráficos y Marketing, se caracteriza por ser una empresa con un staff horizontal, es decir carece de una organización jerárquica. Esto promueve el dinamismo y comunicación intergrupal, características esenciales para este tipo de trabajo. Por otro lado, la diversidad de profesiones permite que cada uno seleccione las herramientas adecuadas para llegar al algoritmo más conveniente que posibilite la resolución del problema presentado.

Funcionamiento

Se organizan en varios grupos de trabajo encabezado por un líder. Cada uno toma un proyecto (problema a resolver), y se realizan varios encuentros con el cliente, quien les explica su/s inconveniente/s además de brindarle la información solicitada. La naturaleza de esta última variará según el caso a resolver, por lo que cada uno difiere tanto en el análisis como en la recolección de datos. Luego, en Continente Siete emplean sus conocimientos para encontrar el algoritmo adecuado al problema, lo prueban y es entregado al cliente. La forma de entrega es diversa, a través de un software, servicio, herramienta online, etc.

Asimismo, se encuentran constantemente investigando y desarrollando nuevas ecuaciones y cálculos de este tipo, para luego ir en búsqueda de mercados “aplicables”.

Desafío

Presenta un gran reto cada uno de los proyectos, debido a que todos difieren en su esencia. Continente Siete trabaja en proyectos que persiguen fines económicos, como la optimización de la venta de productos, publicidad, oferta y demanda. Pero, por otro lado, como los algoritmos son también aplicables a situaciones sociales, esto termina generando un nexo entre dos ciencias (matemáticas-sociales) donde también la empresa se desarrolla. Algunos ejemplos de lo trabajado son: el impacto de las adicciones que tendría en una organización, distribución óptima de francos laborales que brinden mayor grado de satisfacción, mejoras en la frecuencia de horarios del transporte público, etc.

Clientes posibles

Puede acceder desde cualquier individuo que tiene un negocio hasta una gran empresa. Es decir, cualquiera que presente una dificultad a resolver de carácter ambiental, cultural, económico como social.

Ideas a futuro

El taller crece día a día con cada uno de los proyectos que les llega, así como los que generan en forma voluntaria y ofrece al mercado. Es un deseo de la empresa desarrollarse no sólo a nivel privado, sino también estatal.

Quién lava los platos, resuelto con un algoritmo

Alguna vez le habrá pasado de faltar o irse vacaciones o simplemente no almorzar y justo tener designado que Ud. lavaba todos los platos de sus compañeros…Injusto ¿no? Esto en Continente Siete no ocurre, ya que diseñaron un algoritmo, implementado a través de un tablero de goma eva, que se encuentra colgado en una cartelera dentro del comedor. “El algoritmo” es como una “carrera a lavar los platos”. El que come avanza un casillero, el que lava es porque llegó a la meta, y el que lavó vuelve al punto de largada. Esto genera igual grado de satisfacción y equidad, fomentando el buen clima del equipo, sumado a las chistes “matemáticos-nerds” ¡infaltables a la hora de la comida!

Agradecemos a Continente Siete

Para más información:
www.continentesiete.com
info@continentesiete.com

Fuente: Toma Mate y Avivate

Toma Mate y Avivate permite la reproducción total o parcial de sus notas citando la fuente.

  • The Show

During “La Semana de la Matemática” (“Math Week”), an event organized by the Buenos Aires University this past April 23 to 25, two members of C7 had the opportunity to make a presentation about Noise, “Procedural Generation of nth Dimensional Noise” specifically.

Math Week aims at delivering 4th and 5th year high-school students the Big Picture about studying and following a career in Mathematics.

With this in mind, we, Julia Picabea and Agustin Ramos Anzorena prepared a small talk on “Noise”, oriented towards the procedural generation of textures and maps used in 3D Animation, film and videoGame industry. This approach, we believe, softens the hard-algorithm impact that might scare the students away, by providing a familiar frame.

We started out by explaining how noise is, showed an example of a procedure using Voronoi Diagrams, and finally did a realTime demonstration inside a 3d Modelling Application, of how to create a realistic stone, from a simple cube, using nothing but procedural noises. This is what we learned in the process.

 

Also, take a look at the Poster we presented, where you can find some of the stuff explained here, plus q walkthrough of how to create a 3D Stone, in a 3D modelling application, starting from just a simple cube, using nothing but noises. It’s quite interesting.

Look at the Poster

 

  • What’s up with the noise

Noise can be thought of as an error imposed over a signal or measurement of data.

In Computer Graphics (CG), noise can help simulate naturally occurring phenomena that would be very difficult to generate otherwise.

Usually, random noise is no good, as Einstein said “God does not play dice with the universe”. Otherwise, we would have tropical trees scattered around polar glaciers.

This is why researchers seek ways to produce noises, that generate coherent values with parameters that make them highly controllable, while remaining “random” to the human eye. They fall into a category called “Procedural Generation”.

One of the most famous noises is the Perlin Noise, created by Ken Perlin, to produce organic textures for the movie “Tron”, in 1982. The film received an Academy Award for Technical Achievement (14 years later).

Nowadays, noises are widely used to create all sorts of special effects: clouds, fire, organic textures, terrain generation, object scattering and real-Time mesh wreckage in game physics engines.

This is simple Perlin Noise

Perlin Noise

This is simple Perlin Noise

 

This is a fractal Perlin Noise, where many scaled versions are applied on top of each other:

Perlin Noise Fractal

Perlin Noise Fractal

 

  • Voronoi Diagram and Worley Noise

Used in optimization, the Voronoi diagram can also be used to produce textures, and it’s also widely used in CG.

Let’s take a look at the algorithm implemented in a 2D plane in a screen:

  1. Generate random points across the area. These are the “feature points”.
  2. For each of the remaining points/pixels.
    2.1 – Measure the distance to each feature points.
    2.2 - Recognize which feature point is closer that is find the minimum distance.
    2.3 - Inherit/transfer properties of the nearest feature point to the point/pixel

That’s it!

This means that, if the pixel inherits the color of the feature point, we will end up with a vitraux-like plane, where each colored area represents all the pixels nearest to a certain feature point of the same color.

Voronoi Diagram

Voronoi Diagram


Voronoi Diagram (Area Edges)

Voronoi Diagram (Area Edges)

 

But it does not end here: we can tweak some parts of the algorithm to come up with totally different patterns.

For example:
What if we change the way we measure the distance in step 2.1?

The first image measures distances using the euclidean distance.
If A=(xa,ya) and B=(xb, yb) are 2-dimensional points, the euclidean distance between them is

d(A,B)=sqrt((xa-xb)2+(ya-yb)2)

But in CG you could use other distances, for example: Manhattan, Chebyshev, and Minkowski distances.
Let’s take a look at just one of them: Manhattan distance between the points A and B would be

d(A,B)= abs(xa-xb) + abs(ya-yb)

This distance is also called TaxiCab distance, since it would be the shortest distance that one could travel in a city, where it is not possible to move diagonally.

Voronoi Diagram (Manhattan Distance)

Voronoi Diagram (Manhattan Distance)

 

Usually, in CG, if we want to create a texture to control something other than the color of an object, we would create a grayscale image, because it represents an easy-to-handle 1-dimensional gradient. This means working with 1 range/scale of values at a time.

Different types of grayscale images can be generated by playing around with the Voronoi algorithm.

So, instead of inheriting the color, the pixel becomes a grayscale value, which is linearly interpolated between 0 and a specified maximum range.

Worley Noise (Distance: Linear Interpolation to closest Feature Point)

Worley Noise (Distance: Linear Interpolation to closest Feature Point)

Welcome to the Worley family of noises, where what matters is the type of Interpolation and the Feature Selection.

What does this mean?
You can interpolate the distance from the pixel to the feature in whatever way you like, for example:

Linear: sqrt(a2+b2)
Linear Squared: a2 + b2
Quadratic: (a2 + a*b + b2)

Or any other operation…

And what does Feature Selection mean?

All these distances are calculated from the pixel position towards the closest Feature Point. There are variations, called “F values”, which take into account the distance to the second closest Feature Point, or the third, or the nth.

Worley Noise (Distance: Linear Interpolation to second closest Feature Point)

Worley Noise (Distance: Linear Interpolation to second closest Feature Point)

Other variations include operations between F values

The following is F2 minus F1:

Worley Noise (Distance: Linear Interpolation to the difference between the second and the first closest Feature Point)

Worley Noise (Distance: Linear Interpolation to the difference between the second and the first closest Feature Point)

 

As you can see, a lot of these noises can be use to create textures of all sorts, such as leather, animal skin or scales, some plastics, or clouds, and a lot more with some creativity.

 

We hope you enjoyed this post!!