Hacker News new | past | comments | ask | show | jobs | submit login
The ‘secretary problem’ is so unrealistic it can't inform our decisions (medium.com)
89 points by robertwiblin 13 days ago | hide | past | web | favorite | 73 comments

I've been thinking about an "inverse secretary problem" for choosing contract jobs:

1. I have a limited time in which to secure the next contract

2. Potential clients opportunities appear at a fixed rate (eg 1-2/week)

3. Each client has a different, unknown, maximum daily rate (MDR) they are willing pay. I can discover the MDR only by quoting a higher rate ("sorry the most we can go to is $XXX").

4. If I quote a lower rate than the client's MDR, I have a new contract and the game stops.

Given my goal is to find the client who will pay the highest daily rate before the deadline, what is the best strategy?

My best guess at the moment is to start at a high rate, and gradually decrease it as the deadline approaches. But how can I use the information I gather about rejected client's MDRs to decide the best daily rate to quote future potential clients?

> Given my goal is to find the client who will pay the highest daily rate before the deadline...

Is that actually your goal though? Are you sure you wouldn't prefer a client who will offer repeat business at a decent but not maximal daily rate? How about a client who will offer a more interesting job, or one who will offer you the opportunity to learn something new?

In so many of these optimisation problems, the real difficulty is specifying exactly what you want to optimise (never mind making sure that the specification is tractable). In general the solution you get from your algorithm will depend sensitively on your objective: if you're not completely sure about the objective, you shouldn't be sure about the solution.

> Is that actually your goal though?

When it comes to contracting, this is precisely the goal. Your questions refer to freelancing rather than contracting, which is quite different.

Apparently freelancing and contracting mean different things depending on both industry and where you live. Could you clarify what you mean please, rather than relying on definitions of rather loose terms?

Ok, how about a ten day contact at $1000 per day vs a fifteen day contact at $980 per day. Is it so obvious that the ten day contact is better?

I'm not sure that's the case. I work somewhere that has seen a very high turnover in contractors, paid a decent amount above market averages. It's because project assignments are poorly defined, bureaucratically controlled, and by the time the initial term is up (usually 3 months) the contractor is fed up and has some other work already lined up.


Changing clients is preferable as there are more opportunities for networking, and there is a novelty factor: Each slow-moving bureaucratically-controlled poorly-defined enterprise IT project is slow-moving, bureaucratically-controlled and poorly-defined in its own way.

I start with the lowest rate I'm willing to accept because much of earning money is about networking and your experience.

As you gain experience and projects, increase your rate 10% on each new contract until you encounter consistent resistance.

It's a more cautious approach and takes longer but it worked for me.

You might be able to ask for 10x your current rate, and get more business because now you look and sound like you can do the project. You'll also have less work overall since you don't have to do 10 times as much work to make the same amount of money.

It's why oracle can charge tens of thousands of dollars for software that might run 30 dollars a month from another company.

10x my current rate? A 10% increase makes sense, a 10x increase sounds impossible overnight.

It doesn't mean that it's true

Oracle (and NetSuite) can charge tens of thousands for software because the software is worth thousands of dollars a month. Financial systems that form the backbone of your company are absolutely the one place you don't want to skimp out on your IT spend.

Spoiler alert, oracle software is world renowned for being completely shit.

Spoiler alert: Oracle can be configured to what you need it to do. It can run well, or very poorly, depending on the implementation, and it is extremely powerful from a financial planning, budgeting, and forecasting perspective once you learn the UI. Netsuite (technically now part of Oracle) is almost as powerful but much easier to use from an end-user perspective.

Also: I'm talking about Oracle the enterprise financial management system. I don't know how the database systems get licensed. But I do think it's funny that most complaints from techies about Oracle are really related to the difficulty of learning Oracle's UI or licensing, when most websites, platforms, APIs, etc. these days have worse UI and licensing that's just as bad as Oracle's.

Oracle's not the only game in town.


And anyway it's just an example.

Number 1 limits the model very harshly. If you absolutely need to secure a contract, you need to keep bidding your minimum price.

Else, we can view this as a simple utility maximization problem where each high offer costs you one period of no work. If you knew distribution of MDR exactly, this would be a simple problem. So you can throw away your first two offers (by bidding infinity) to obtain estimators for the mean and standard error of the distribution. Although you should have an idea on the shape of the distribution as you realistically can not gather enough data to derive it.

From there on, you have an estimated probability on whether your offer will be accepted or rejected. If it's accepted, you end up with the money. If not, you end up in the same place, but your utility will be discounted for one time period. To simplify the solution, you can disregard the effects of learning for now and solve the problem to include that later.

Once you factor out the recursion from your utility function (which includes a discounted version of itself, in case of rejection), you should end up with a nice but complex calculus problem. Nonetheless, your optimal offer will depend on the estimators of mean and standard deviation. So each period, you should offer your "optimal number", update the mean/standard deviation with respect to the response and calculate the offer for the next period accordingly.

ED: You can ping me if you need a contract microeconomist :p

> Given my goal is to find the client who will pay the highest daily rate before the deadline, what is the best strategy?

What about fixed price projects? You can potentially earn a much higher day rate. Clients aren't paying for your time in front of a computer, they're paying for your expertise.

"For the advice coming out of this model to beat a very practical alternative — following conventional wisdom or your own common-sense — we’ll need to deal with many of them all at once."

Conventional wisdom and common sense really means "using an ill defined heuristic", which isn't so obviously better than the discussed algorithm. Common sense, as the saying goes, is neither common nor sense, and using this phrase just hides the actual algorithms people really apply.

There is no reason to think that common sense encompasses more reliable judgement than the simple maths here.

Well, in the case of something like dating, I'm not so sure.

If in your first serious relationship you find yourself saying, "I really love this person. They're fantastic. I don't want to give them up." Conventional wisdom would probably say, "Well, don't give them up then."

Our "common sense" has been shaped by the experiences of thousands of generations before us, and it has worked out so far. I wouldn't dismiss it so quickly.

Things started “working out” pretty recently, once we started applying more rigor to our thinking. Life in the thousands of generations before was pretty rough by comparison, to put it very mildly.

That's a naive oversimplification -- the kind of modern thinking that considers history some kind of shit-hole and ours the first enlightened era.

People had extremely rich lives, deep thoughts, and interesting problems to solve, throughout the 3-4K years of history.

So Joe Sixpack today, or even a Joe IvyLeagueDegree today is no more sophisticated than e.g. a citizen of ancient Athens or Rome or Bagdad in most everyday matters.

Pre-industrial society was a shithole for most people compared to the present. And I’m not basing that on metrics like literacy or access to political franchise. I’m talking about things like “how likely are you to bury half your children?”, and “how likely are you to be raped or murdered?” We’ve made ourselves so comfortable now (which is great) that we’ve forgotten how unusual our circumstances are and lost interest in how we created them.

It’s not a comment on the intelligence of the average historical person, or the richness of their emotional life. It’s just an acknowledgement that the tools we used to try to improve our lot for most of human history (including “common sense”) were not very successful, at least compared to the ones we’re using now.

The discussed algorithm doesn't match reality though.

The problem as stated, includes (although there may be variants):

"•After evaluating a person you can offer them a job. But if you reject them at that point, you can never come back to them.

•You want to choose the best person in the sample. Every other outcome except choosing the very best person is equally bad."

In reality choosing the 2nd best mate or candidate isn't much worse than choosing the best and is certainly better than choosing the worst (unless you believe in 'the one'?).

And in reality we can go back to rejected candidates / mates.

My understanding of the article is that that is their problem (with the problem) also.

>Conventional wisdom and common sense really means "using an ill defined heuristic", which isn't so obviously better than the discussed algorithm.

If the ill-defined heuristic has survived for millennia, then it's probably better than so new algorithm in the context it is used. It shows good survival characteristics, and people don't keep around stuff they don't benefit from for millennia.

In absence of a good model, an ad-hoc heuristic (that seems to work just fine in most cases) is not such a bad choice.

> "Should we spend the first 36.8% of our adult lives dating casually, and then settle down with the first person we find who’s better than anyone we’ve dated so far? That would suggest men start seriously looking for a life partner at 39 — and women at 41."

The problem suggest anything like that. It suggest you should spend 36.8% of dating time (or date count) on exploring, not 36.8% of your life...

Second problem with the blog, that it just produces lot of possible issues, but does not show any example where 36.8 algorithm would fail horribly. Maybe those drawbacks does not matter in practice.

Exactly, there are no real takeaways from this article, especially since there are real applications* to the problem so it is worth exploring, even if the original example was flawed.

He spend most of the time debating the exemplification without ever challenging the solution, but the example is just there to entertain the casual reader, the interesting part is the math behind.

*You're on a road trip and want to refuel ok the cheapest pump in range, that satisfied the uncertainties of the original problem plus the given constraints.

That's not a real application. You would just google gas prices. Or you would stop and ask someone.

Assuming you've got cell coverage (or cheap roaming).

So. Should we spend the first 36.8% of our adult lives dating casually, and then settle down with the first person we find who’s better than anyone we’ve dated so far? That would suggest men start seriously looking for a life partner at 39 — and women at 41.

Strawman alert! The rate at which people date varies tremendously with age and life circumstance. To treat someone's dating life like a piece of uniform bar stock which can be cut off at the 36.8% mark is so obviously a bad approach, I'm immediately less sure of the article.

EDIT: It turns out the article's entire point is that the model is too simple. It really rubs me the wrong way that he starts out with an implementation which is way too simple.

A better assumption is to look at the average age of first birth as the 'lifetime' for dating. That age is 28 for the average US female.

Assuming that you enter the marriage market at 18, you then have 10 years to find a partner.

Assume that you have a girl/boyfriend and are 'serious' with them, likely meaning sexual activity. The average number of partners in the US is 7.2

From the optimal strategy in the Secretary problem, you should be 'serious' for ~37% of the time that you have available to date.

Running through the math here, you have 6.2 partners (assuming that you stick with the most recent one for childbirth) over a 10 year dating lifetime. Assume that everyone magically follows the optimal path. That means the trial-time of a 'serious' dating partner is ~7 months and 4 days, on average.

So, if you were to be totally average and also follow the optimal dating strategy, meaning that you dated for 10 years and had 7 serious relationships, you would date 6 people before settling down, and each of the 'calibration' people would last about 7 months from partner to partner.

That sounds reasonable and very similar to a lot of personal anecdata. I've seen a lot of people do ~half a year flings through their college years (18-22) before settling down with someone in the last year of college or thereabouts.

It rubs you the wrong way that I start with an example that clearly illustrates the point I'm trying to make?

It rubs you the wrong way that I start with an example that clearly illustrates the point I'm trying to make?

Since it's such a clear strawman, it doesn't clearly illustrate the point you're trying to make for those readers who can see through it. It's common sense to exclude childhood as irrelevant to dating experience. It's common sense, that people will be more active in dating during certain phases in their life.

The whole point of the strawman, is that it appears to support a point by only weakly representing the counterpoint. A fairer analysis has been posted several times in other comments here.


As I've said to others it highlights one weakness with the model - that it will always say a longer possible search is better because it raises your odds to success and the model features no cost for searching. When you add a cost to delay the appropriate time to spend exploring drops massively.

it highlights one weakness with the model

By applying the strategy in an unintelligent way which seems designed to make the model fail.

it will always say a longer possible search is better because it raises your odds to success and the model features no cost for searching

That's kind of the whole point of this tradeoff and of the analogies used with it. That there is a cost for searching and not "finding."

Yes. If I want to make the point that everything on Hacker News is complete rubbish, and I pick out a recent post about "alien lizards invented facebook to enable mind control", that looks like an example that really clearly illustrates my point, right? But it's not, because it's not a good example of the actual content of hacker news.

I'm currently looking to buy a house, and although I can't say we've followed the prescribed solution to this problem to the letter (partly because house buying has partially overlapping option availability), I have found it to be a useful way to frame our approach to evaluating options.

Concretely, we've very consciously had a "just looking" phase, where we look at a bunch of houses with the rule that we absolutely will not buy one of them, no matter how appealing: they're only there to give us a benchmark. We've tried to size it in proportion to the number of houses we think we'd plausibly want to look at, given our horizon for buying.

I'm curious if anyone has found other useful methodologies for guiding these sorts of life decisions?

I used a similar approach for job hunting at one point. Perform a few interviews in an "exploration phase" where the purpose is less to impress the prospective employer, and moreso to get a pulse on the industry. You won't be able to separate company-specific red flags from industry woes until you compare & contrast a few places.

Shocker: Game theory falls apart in the real world.

Shocker: People aren't always rational.

Shocker: Initial conditions do not stay constant.

Shocker: People's priorities wildly vacillate even on short and medium scales.

Shocker: The economic ideal of the perfectly informed and rational consumer is a complete fantasy and violates multiple physical, computational, and biological theories.

Shocker: misportrayals of simplified but useful models are much worse than those models.

This applies to both the article and the parent's comment.

> Game theory falls apart in the real world.

It explains why people pollute pretty well.

Oversimplified models fall down in the real world. Game theory is useful within a domain.


Incorrect. Game theory predicts pollution. You just need to make sure the game has the correct predicted payoffs for each move, and the set of moves you want to measure, and their interactions...

You'll find Game Theory a lot easier to understand if you mentally replace every instance of "Math" with "AI". (So instead of saying "The Nash Equilibirum is...", just say "I trained an RNN and this is how it would play"). That's really all it is. Usually the games are designed in a simple way because the "AI" that is being run is nothing more complicated than min-cut/max-flow.

"Pollution" specifically is a case of the "Free-Rider Problem", and there are plenty of game theoretic results that explain it.

Wait, you're invoking RNNs as a simpler model than game theory?

It's not simpler, but it is bound to go over better on Hackernews.

Exactly. People here sort of already know RNNs. You could use RNNs in your game theory game (see AlphaGo, etc), but Game Theory is just a set of principals for defining a "Game", and defining incentives, etc.

If the game doesn't properly account for some incentive, it's the problem of the model designer, just like it would be the problem of the RNN designer not gathering the right type of training data.

As I say in the article, the question is how inaccurate these things are - are they good enough to be useful? Or so inaccurate that on balance they're misleading?

You are wrong. Yes individuals are not always completely rational, but in the long run the rational action usually prevails. It's more like an evolutionary attractor.

I am far more perplexed by the fact that this author believes too many people are using mathematically derived models for making life decisions and that we need a serious discussion of their merits to avoid suboptimal decisions than any of the modeling concerns other people here have pointed out.

The secretary problem is the first and simplest problem in optimal stopping. It's not the only one that people have studied, and while it is too simple to describe many realistic scenarios, the insight you get from solving it is valuable.

Not so sure about this guys math, and I assume its because he distributed a lifetime of dating equally across an adult life.

I would guess I had done 36.8% of my dating by age 25 - not 39. Suddenly the model starts to fit better.


And the reason why this matters is that the dating that matters is the dating from when we can have children to when we're done. So if a woman starts seriously dating at 20, and is done with kids by 35, then somewhere around 25 is indeed the proper cutoff.

Men can have children longer, but at some point don't want to.

Presuming that your goal is to have children...

Whatever you personally think, you're dealing with a lot of biological wiring which is intended to optimize your life towards the goal of having children successfully raised to adulthood until they also have children.

This wiring does not work with all individuals nor can it always cope with modern life. But it is still a pretty big factor.

The other problem is that people/choices aren't strictly ordered... they each have various strengths and weaknesses across a multitude of attributes that are not readily comparable. Imagine you are choosing a car, and one is cheaper but the other has higher top speed... how important is each factor? Is a 1mph speed increase worth $1000? Even if you were able to figure out the ratio, it wouldn't be constant, you would get diminishing returns.

This article should be renamed "A Pedants Take on a Statistical Model, an Exploration into Why I'm No Fun at Parties."

A "Pedant's" take. Don't forget the apostrophe.

When you say insulting things like this it makes me feel sad.

Downvoted because I don't like jokes in comment sections, but agreed. This person took the existence of mathematical preconditions, and decided that means that the algorithm is wrong and useless.

It turns out there are variants of the stable marriage problem that allow for accounting for all sort of changes in the preconditions, but I wouldn't expect a random blog author with a bone to pick against math to actually look into it.

> So. Should we spend the first 36.8% of our adult lives dating casually, and then settle down with the first person we find who’s better than anyone we’ve dated so far?

Do you know exactly how many "applicants" exist? No.

Does the length of the "contract" depend significantly on the length of "exploration"? Yes, but not in the model.

Instantly closing that site. sigh

I dunno that it can't inform our decisions; because real decisions don't usually have the same constraints (but sometimes lose approximations of those restraints), the optimal solution to the abstract problem isn't necessary real-world optimal to even the best-fit scenarios, but it's often a good solution and better than a naive solution would be.

It's also the case that the problems that best approximate it's constraints, and for which it offers or suggests a good solution, are probably not usually the familiar problems with which it is usually associated. (Though I can see places that are decent fits that could exist upstream from those, like seeking a parallelizable approach to filtering resumes to get M interview candidates from a pool of N resumes while doing holistic comparison of resumes rather than scoring against an abstract rubric.)

But surely all but the very best strategy for selection are equally worthless!

I see what you did there, but it's worth noting that that's not true even when the related extreme assumption underlying the secretary problem holds: that assumption is that every selection other than the very best is equally worthless. But strategies other than the very best will have different probabilities of picking the best selection, and so will have value proportionate to that probability. (Since they will have a value equal to value of the best selection with that probability, and a value of zero otherwise.)

This algorithm is useful for picking parking spaces at shopping centers.

Assuming you're healthy, the best algorithm in my opinion is to park far away from the door. Less risk of damage to your car, easier time getting in and out, more exercise from walking further.

I don't even think you save time parking closer to the door since you frequently have to wait for others to get out of your way.

Only if you optimize for distance to door. Thing is walking 2 minutes is actually good for us and just because other people are competing to get the closest spot doesn't mean you should fall for that as well.

I spent most of my adult life just parking arbitrarily in large lots. Didn't even realize this until a girlfriend pointed it out to me. In retrospect, I suppose I was optimizing for spending as little time in my car as possible. It never even occurred to me that my goal should be "park as close to the building as possible".

My partner gets mad at me for my "park in the easiest spot to park in" strategy too. We're both able-bodied humans, though, so there's no reason we can't walk 40 extra feet to the store entrance.

FYI if you're applying math to your dating approach ... 'you're doing it wrong'.

... Except there are a number of cases where it is used in practice with success, including assigning medical students to to hospitals for their studies.

I mean, I agree that any time you use an algorithm, you want to know under what conditions it holds... but that doesn't mean that it's suddenly a bad idea to use it.

>The secretary problem does effectively demonstrate the general principle that in life we should spend some time exploring

I have no idea what the author is talking about here... There is no "exploring" in the stable marriage problem.

The stable matching problem and the secretary problem are not the same thing. The stable matching problem is operates at a high level and is simply about matching pairs based on known preferences of multiple agents.

The secretary problem is about a single agent attempting to make a selection based off of incomplete information, and does involve an exploration phase.

The secretary problem and the stable marriage problem are not the same thing.



So, is your point that using a Stable Marriage solution is ok and realistic in the real world, but a Marriage variation is impossible and dumb?

All of the OPs complaints about the Marriage problem apply to the Stable Marriage problem, and yet, the real world doesn't seem to care that the OP thinks it shouldn't work. People use it anyway, and it largely works.

Applications are open for YC Summer 2019

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact