[PYTHON] Was ist eine rationale Entscheidung, die die Chancen maximiert, ein "ideales Zuhause" zu finden?

** ■ 1. Einführung **

In letzter Zeit hat der Einfluss von Corona die Zeit erhöht, die ich zu Hause verbringe.

Trotzdem ist das Haus ein Ort, an dem Sie viel Zeit in Ihrem Leben verbringen und es so ideal und komfortabel wie möglich gestalten möchten.

Bist du sehr zufrieden mit dem Haus, in dem du lebst?

Einer Umfrage zufolge antworteten nur etwa 9,8% der Befragten mit "90 Punkten oder mehr", als die Zufriedenheit des eigenen Hauses von 0 auf 100 Punkte bewertet wurde.

Eine der größten Ausgaben im Leben sind die Ausgaben für "Wohnen", obwohl jeden Monat Zehntausende, Hunderttausende (oder Millionen) gezahlt werden.

(Was ist mit Lesern?)

Warum kann ich nicht einfach sagen "Orenya hat 100 Punkte! (Mindestens 90 Punkte)"? ??

Es ist nur eine individuelle Hypothese, aber ich glaube nicht, dass Moyamoya (oder eine Entscheidung getroffen hat, diese Moyamoya loszuwerden) sagte: "Tatsächlich könnte es eine Immobilie gegeben haben, die billiger war als diese ..." ) Ist verwandt.

Um diese Angst zu zerstreuen, werde ich in diesem Artikel eine Entscheidungsmethode einführen / erklären, die die Wahrscheinlichkeit der Begegnung mit einem "idealen Haus" mithilfe der mathematischen Wahrscheinlichkeitstheorie maximiert.

Tatsächlich ist es ** möglich **, Entscheidungen zu treffen, die diese Wahrscheinlichkeit maximieren, indem ein mathematisch-probabilistischer Ansatz verwendet wird.

Wenn Sie eine solche Entscheidung treffen, bekommen Sie das Gefühl, eine rationale Entscheidung getroffen zu haben, was Ihre Zufriedenheit mit Ihrem Leben erhöhen kann.

** ■ 2. Grober Fluss dieses Artikels **

    1. Welche Entscheidung soll ich treffen?
  1. Erklärung / Ableitung des mathematischen Modells

    1. Probabilistische Simulation mit Python
  2. Mathematisch an mathematischen Modellen basteln

(Wenn Sie nur aus der Schlussfolgerung wissen möchten, können Sie "1" lesen. Es kann für einen kleinen Analysten nach 2 sein.)

** ■ 3. Welche Entscheidung soll ich treffen? ** ** **

Wie man eine Entscheidung trifft

Ich werde aus der Schlussfolgerung schreiben,

"Von der Anzahl der zu bestätigenden Immobilien werden 36,8% der Immobilien bedingungslos vergessen, und wenn Sie auf eine Immobilie stoßen, die" das ist das Idealste, was Sie jemals getan haben! "

Das ist die Entscheidungsmethode, die die Wahrscheinlichkeit maximiert.

Was ist das für ein Ding? Ich denke, es fühlt sich so an, also schauen wir uns ein konkretes Beispiel an.

Konkretes Beispiel

Zum Beispiel sehen Sie ungefähr 50 Eigenschaften.

In diesem Fall überprüfen Sie bitte die ersten 18 Fälle (≈36,8%) und überspringen Sie sie bedingungslos.

Und wenn die Eigenschaft, die "die beste" zu sein scheint, unter den 19. und nachfolgenden Eigenschaften erscheint (einschließlich der 18 Eigenschaften, die ich zum ersten Mal gesehen habe), werde ich sie übernehmen.

Dies maximiert die Wahrscheinlichkeit, dass die Immobilie die Nummer eins von insgesamt 50 sein wird, anstatt sie auf einfache Weise auszuwählen. あつこ画像.jpg

** ■ 4. Erklärung / Ableitung des mathematischen Modells **

Warum ist es möglich, auf diese Weise die Chancen zu maximieren, das ideale Zuhause zu wählen?

Wenn Sie alle Eigenschaften der Welt mit unbegrenzter Zeit überprüfen können, benötigen Sie natürlich keine solche Methode.

In der Realität ist eine solche Hausauswahl jedoch nicht möglich, und wir müssen innerhalb einer begrenzten Zeit die idealste Auswahl unter einer bestimmten Anzahl von Immobilien treffen.

Nicht nur das, es gibt auch Zeiten, in denen Sie einen Vertrag mit jemandem bekommen, der nur denkt: "Oh mein Gott!"

Betrachten wir verschiedene Bedingungen für die Auswahl eines Hauses als "Randbedingungen" und betrachten wir es als ein Problem der Maximierung der Wahrscheinlichkeit, auf ein "ideales Haus" zu stoßen.

Klärung des Problems

Erfüllen Sie die folgenden Einschränkungen und maximieren Sie die Wahrscheinlichkeit, das "idealste Haus" aus der Überprüfung von bis zu n Immobilien auszuwählen.

Einschränkungen

  1. Stellen Sie sicher, dass Sie eine Eigenschaft auswählen.
  2. Die Anzahl der Kandidateneigenschaften n ist vorbestimmt.
  3. Die Anzahl der Kandidateneigenschaften wird bewertet, und mehrere Kandidateneigenschaften haben nicht dieselbe Rangfolge.
  4. Überprüfen Sie nacheinander in zufälliger Reihenfolge. Welche Eigenschaft als nächstes überprüft werden soll, ist immer die gleiche Wahrscheinlichkeit.
  5. Entscheiden Sie unmittelbar nach der Bestätigung, ob der Vertrag unterzeichnet werden soll (falls dies nicht bis zum Ende entschieden wird, wählen Sie unbedingt die letzte Kandidateneigenschaft aus).
  6. Sie können keine Eigenschaft auswählen, die rückwirkend abgelehnt wurde.
  7. Weigern Sie sich nicht, die Kandidateneigenschaft selbst auszuwählen.

Was ist das "Ideal"?

Aus den oben genannten Bedingungen für die Problemstellung / Einschränkung werden wir die Rangfolge des "idealen Hauses" selbst bestimmen und als die Immobilie mit der höchsten Rangfolge definieren.

Lösungsansatz

Wir werden es als das Problem der besten Wahl behandeln, das die Wahrscheinlichkeit maximiert, den ersten Platz zu erreichen (kein Informationstyp), nicht als das Problem der Minimierung des Rankings, das die Top-Kandidaten so weit wie möglich kommen lässt (kein Informationstyp).

Aus der Einschränkungsbedingung 6 "Eigenschaften, die nicht rückwirkend abgelehnt wurden, können nicht ausgewählt werden." Lautet die allgemeine Richtlinie "Überprüfen Sie bis zu r Eigenschaften und entscheiden Sie den vorläufigen 1. Platz unter ihnen (r +). 1) Wir möchten die Politik verfolgen, "r zu finden, das die Wahrscheinlichkeit maximiert, dass eine Eigenschaft, die den vorläufigen ersten Platz überschreitet, in den folgenden Fällen erscheint" (1 <r ≤ n).

Überprüfen Sie zunächst ein konkretes Beispiel und leiten Sie dann ein verallgemeinertes Wahrscheinlichkeitsmodell ab.

Das Wahrscheinlichkeitsmodell wird differenziert, um den Maximalwert zu finden, und der Parameter r wird zu diesem Zeitpunkt gefunden.

Bestätigung eines bestimmten Beispiels: Wenn n = 10 und r = 5

Zunächst werden von maximal 10 Eigenschaften bis zu 5 Eigenschaften bedingungslos abgelehnt, die 6. Eigenschaft wird ausgewählt und die Wahrscheinlichkeit ist, dass es die "beste" von 10 Eigenschaften ist. Fragen wir nach.

\underbrace{{9\over 10}\times{8\over 9}\times{7\over 8}\times{6\over 7}\times{5\over 6}}_{reject}\times{1 \over 5}

Die Formel ist wie oben und das Ergebnis ist

{1 \over 10}

Es wird sein.

Dies unterscheidet sich nicht von der Wahrscheinlichkeit, Transcendental Texto zu wählen, und es funktioniert nicht.

Denken wir also über ** "Wie man die ersten 5 beobachteten Informationen nutzt" ** nach.

Mit anderen Worten, ** "Es gibt Eigenschaften (= 1. Platz im Ganzen), die den vorläufigen 1. Platz unter den 5 zuerst beobachteten Fällen einschließen und den vorläufigen 1. Platz im 6. und den folgenden Fällen (j.) Übersteigen. Berechnen wir die Wahrscheinlichkeit, die P "** zu tun hat.

Das ist,

P= \sum_{j=6}^{10} {5 \over j-1}\cdot{1 \over 10}

Wenn Sie das oben genannte berechnen, ist es OK.

Wenn Sie es tatsächlich berechnen, können Sie sehen, dass es ungefähr 37% ist.

P= \sum_{j=6}^{10} {5 \over j-1}\cdot{1 \over 10}={5 \over 10}\sum_{j=6}^{10} {1 \over j-1}
={1 \over 2}({1 \over 5}+{1 \over 6}+{1 \over 7}+{1 \over 8}+{1 \over 9})\approx0.3728174603

Die Chancen, den 1. Platz zu wählen, sind viel höher als bei der Wahl als Lehrbuch.

Wie ändert sich die Wahrscheinlichkeit in Abhängigkeit von der Anzahl der Absendungen r?

Übrigens haben wir oben den Fall betrachtet, in dem die Hälfte der Gesamtzahl (5 von 10 Fällen) bedingungslos vergessen wurde, der vorläufige 1. Platz entschieden wurde und der 1. Platz von allen 10 Fällen nach dem 6. Fall erschien.

Ist es für mein nächstes Interesse wahrscheinlicher, dass ich bis zum 6. Fall bedingungslos abspringe, oder steigt die Wahrscheinlichkeit, wenn ich bis zum 7. Fall abschaue, und wie viele Fälle ist die richtige Antwort?

Es gibt die Einschränkung 6 "Sie können eine Eigenschaft nicht auswählen, die rückwirkend abgelehnt wurde." Es ist also nicht gut, sie zu sehr abzulehnen.

Um dies konkret zu bestätigen, habe ich eine einfache Simulation versucht.

image.png

    import numpy as np
    import pandas as pd
    import matplotlib.pyplot as plt
    
    %matplotlib inline
    
    def choose_candidate(n, reject=np.e):
        candidates = np.arange(1, n+1)
        np.random.shuffle(candidates)
        
        if reject == np.e:
            stop = int(round(n/reject))
        else:
            stop = int(round(reject*n/100))
    
        best_from_rejected = np.min(candidates[:stop])
        rest = candidates[stop:]
        
        try:
            return rest[rest < best_from_rejected][0] 
        except IndexError:
            return candidates[-1] 
        
    best_candidate = []
    for r in range(5, 101, 5):
        sim = np.array([choose_candidate(n=100, reject=r) for i in range(100000)])
        best_candidate.append(np.histogram(sim, bins=100)[0][0]/100000)
    
    plt.figure(figsize=(10, 6))
    plt.scatter(range(5, 101, 5), best_candidate)
    plt.xlim(0, 100)
    plt.xticks(np.arange(0, 101, 10))
    plt.ylim(0, 0.4)
    plt.xlabel('% of candidates rejected')
    plt.ylabel('Probability')
    plt.grid(False)
    plt.axvline(100/np.e, ls='--', c='orange')
    plt.show()

Wenn Sie dies betrachten, können Sie sehen, dass die Wahrscheinlichkeit maximiert wird, indem Sie etwa 37% der Gesamtzahl der Immobilien abwägen.

Warum ist die Wahrscheinlichkeit auf etwa 37% maximiert?

Übrigens, soweit diese Simulation ersichtlich ist, werden ungefähr 37% der Gesamtzahl der Immobilien vergessen, und wenn es eine Eigenschaft gibt, die den vorläufigen ersten Platz unter den Eigenschaften überschreitet, sind die ausgewählten Eigenschaften alle Eigenschaften, wenn Sie einen Vertrag damit abschließen Es scheint, dass die Wahrscheinlichkeit, der erste Platz in den oben genannten zu werden, maximiert ist.

Warum passiert das?

Lassen Sie es uns mathematisch klären.

Zunächst wird zur Bestätigung die Wahrscheinlichkeit, "wenn die Gesamtzahl der Eigenschaften 10 beträgt und bis zu 5 vergessen werden", durch die folgende Formel ausgedrückt.

\sum_{j=6}^{10} {5 \over j-1}\cdot{1 \over 10}

Die Wahrscheinlichkeit, dies auf "die Gesamtzahl der Eigenschaften ist n und r wird vergessen" zu verallgemeinern, ist

\sum_{j=r+1}^{n} {r \over j-1}\cdot{1 \over n}

Kann vertreten werden durch.

Dazu finden wir den Maximalwert und die Parameter zu diesem Zeitpunkt.

\sum_{j=r+1}^{n} {r \over j-1}\cdot{1 \over n}={r \over n}\sum_{j=r+1}^{n} {1 \over j-1}
={r \over n}\sum_{j=r+1}^{n} {n \over j-1}\cdot{1 \over n}={r \over n}\sum_{j=r+1}^{n} ({j-1 \over n})^{-1}\cdot{1 \over n}

Hier setzen Sie t = j / n. Das heißt, da tn = j

j = r+1 \Leftrightarrow tn = r+1
t = {r+1 \over n}

Ist. Ebenfalls,

j = n\Leftrightarrow tn = n
t=1

Daher lautet die ursprüngliche Formel

{r \over n}\sum_{j=r+1}^{n} ({j-1 \over n})^{-1}\cdot{1 \over n}={r \over n}\sum_{t={r+1 \over n}}^{1} ({tn-1 \over n})^{-1}\cdot{1 \over n}={r \over n}\sum_{t={r+1 \over n}}^{1} (t-{1 \over n})^{-1}\cdot{1 \over n}

Es kann so ausgedrückt werden.

Hier wird bei n → ∞ der Grenzwert von (r / n) gesetzt.

\lim_{n→∞}{r \over n}=x

Wenn Sie setzen

\lim_{n→∞}{r \over n}\sum_{t={r+1 \over n}}^{1} (t-{1 \over n})^{-1}\cdot{1 \over n}=\lim_{n→∞}({r \over n})\lim_{n→∞}(\sum_{t={r+1 \over n}}^{1} (t-{1 \over n})^{-1}\cdot{1 \over n})
=x\lim_{n→∞}(\sum_{t={r+1 \over n}}^{1} (t-{1 \over n})^{-1}\cdot{1 \over n})

Auch aus dem Satz von Lopital (* 2)

\lim_{n→∞}{r+1 \over n}=x+0=x, \lim_{n→∞}(t-{1 \over n})^{-1}=t^{-1}

nicht wahr.

Unter Berücksichtigung von n → ∞ und Δx → 0,

x\lim_{n→∞}(\sum_{t={r+1 \over n}}^{1} (t-{1 \over n})^{-1}\cdot{1 \over n})=x\int_{x}^{1}{t^{-1}} \, dt=x\int_{x}^{1}{1 \over t} \, dt

Kann angenähert werden an.

Ich bin endlich da.

Alles was Sie tun müssen, ist dies zu lösen.

x\int_{x}^{1}{1 \over t} \, dt=x[\log{t}]_{x}^{1}=x(\log{1}-\log{x})=-x\log{x}

Die Formel für die Erfolgswahrscheinlichkeit, die Sie finden möchten

-x\log{x}

Und ** könnte in einer sehr einfachen Form platziert werden **.

Lassen Sie uns nun x finden, wenn Sie dies maximieren.

Differenzieren Sie die Formel der Erfolgswahrscheinlichkeit,

{df(x) \over dx}=-1logx-1

Wenn dies 0 wird,

-1logx-1=0
-logx=1
x={1 \over e}

Da der natürliche Logarithmus e ≈ 2.718281828459

x={1 \over e}\approx0.3678794412

Aus dem oben Gesagten wurde gezeigt, dass das Übersehen von etwa 37% die Wahrscheinlichkeit maximiert, den ersten Platz im Ganzen zu finden.

** ■ 5. schließlich**

Derzeit bin ich Analyst bei LIFULL Co., Ltd., daher habe ich versucht, Qiitas ersten Artikel zu Hause x Mathematik (Analyse) zu erstellen.

Es ist interessant, die Phänomene in der Welt mithilfe der Mathematik zu modellieren und zu analysieren, und es entstehen Fakten, die sich von der Intuition unterscheiden.

Wie unten vorgestellt, Professor Hamada von der Tohoku-Universität ["Das Problem, das mathematische Modell wird gelöst"](https://www.amazon.co.jp/dp/B07RGWJQFQ/ref=dp-kindle -redirect? _encoding = UTF8 & btkr = 1) Ich habe den Inhalt referenziert / referenziert / zitiert.

Persönlich denke ich, dass die Anzahl der Bücher im Bereich der mathematischen Modelle in letzter Zeit zugenommen hat, aber unter ihnen ist es in einem interaktiven Format geschrieben, das jeder leicht verstehen kann, und es ist ein ziemlich gutes Buch für diejenigen, die etwas über mathematische Modelle wissen wollen. habe gedacht.

Wenn Sie mehr über die oben genannten Inhalte oder mehr mathematisches Modellmaterial erfahren möchten, kaufen Sie es bitte (der Link ist auch im Referenzabschnitt enthalten).

■ Verbleibende Probleme

・ Die Herangehensweise an das wirklich rationale Entscheidungsproblem wird nicht nur unter dem oben beschriebenen mathematisch-probabilistischen Gesichtspunkt, sondern auch unter verhaltenswissenschaftlichen und psychologischen Gesichtspunkten aufgefrischt. Du wirst es brauchen. In diesem Artikel wird das nicht erwähnt. Wenn ich also Zeit habe, würde ich gerne die Zeitungen und Bücher darüber lesen.

・ Ich möchte versuchen, was passiert, wenn ich es als ein Problem zur Minimierung des Rankings mit dem höchstmöglichen Ranking behandle. Ich werde es wieder schreiben, wenn ich Lust dazu habe.

・ Um die mathematische Handhabung zu vereinfachen, haben wir die Einschränkung übernommen, dass Sie eine Eigenschaft nicht auswählen können, die rückwirkend abgelehnt wurde. Die Realität ist jedoch nicht vollständig, sodass in diesem Bereich Verbesserungspotenzial besteht.

・ In meiner ersten Qiita war ich krank, weil ich meine Kraft nicht anpassen konnte. Machen wir es das nächste Mal leichter.

** ■ Referenz / Referenz **

Dieses Problem löst das mathematische Modell

https://www.amazon.co.jp/dp/B07RGWJQFQ/ref=dp-kindle-redirect?_encoding=UTF8&btkr=1

Andere Artikel referenziert / zitiert

http://www.kurims.kyoto-u.ac.jp/~kyodo/kokyuroku/contents/pdf/1263-11.pdf

https://brave-answer.jp/15547/

https://asset.crasco.jp/shuekibukken/2138

https://imrankhan17.github.io/pages/Solving the secretary problem with Python.html

http://www.iba.t.u-tokyo.ac.jp/iba/SE/Secretary.pdf

https://mathtrain.jp/lhopital

Wir bieten auch mathematische Erklärungen für Analysten, aber wir würden uns freuen, wenn Sie uns mitteilen könnten, ob es Unstimmigkeiten im Inhalt gibt.

Recommended Posts

Was ist eine rationale Entscheidung, die die Chancen maximiert, ein "ideales Zuhause" zu finden?
Was ist ein empfohlener Motor? Zusammenfassung der Typen
Was ist ein Entscheidungsbaum?
Was ist die XX-Datei im Stammverzeichnis eines beliebten Python-Projekts?
Was ist eine C-Sprachbibliothek? Welche Informationen sind für die Öffentlichkeit zugänglich?
Was ist die Ursache für den folgenden Fehler?
[Python] [Meta] Ist der Python-Typ ein Typ?
Lassen Sie uns eine einfache Vorlage anzeigen, die ideal für den ersten Django ist
Es ist ein Mac. Was ist der Linux-Befehl Linux?
Artikel, der Ihnen hilft, den Kollisionsalgorithmus für starre Kugeln ein wenig zu verstehen
Eine Geschichte, die den Aufwand für Betrieb / Wartung reduziert
[Python] Ein Programm, das die Anzahl der Täler zählt
Erstellen Sie einen BOT, der die Discord-URL verkürzt
#Eine Funktion, die den Zeichencode einer Zeichenfolge zurückgibt
Erzeugen Sie diese Form des Bodens einer Haustierflasche
Zip 4 Gbyte Problem ist eine Geschichte der Vergangenheit
Eine Geschichte, die die Lieferung von Nico Nama analysierte.
[Python] Ein Programm, das die Positionen von Kängurus vergleicht.
Was sind die Faktoren für die falsche Vorhersage von ML? ~ Die Faktoruntersuchung wird vom Baum entschieden ~
Ein Beispiel für einen Mechanismus, der eine Vorhersage von HTTP aus dem Ergebnis des maschinellen Lernens zurückgibt
Was machen Sie mit der Konfigurationsverwaltung eines Servers, der Ansible implementiert hat, aber bereits ausgeführt wird? Ich treffe das Problem