Bir Beyin Egzersizi Olarak Monty Hall Problemi ve Analizi
Автор: Volkan Sezer
Загружено: 2023-09-21
Просмотров: 1029
Описание:
Monty Hall problemi, "Let's Make a Deal" isimli bir yarışma programına dayanan bir olasılık bulmacasıdır. Problemin yanıtı pek çok insan için ilk bakışta saçma gibi görünse de, ispatı gayet açık ve anlaşılırdır. Bu videoda, 4 farklı yoldan problemin yanıtı elde edilmektedir. Daha önce soruyu ve çözümü görmediyseniz, videoda çözüme geçmeden önce durup düşünmek, iyi bir zihin egzersizi olabilir.
Videoda sonuçları gösterilen Matlab kodu aşağıda gösterilmektedir. İyi seyirler.
numTrials = 10000; % Increase the number of trials for better visualization
changeWins = 0;
changeLosses = 0;
stayWins = 0;
stayLosses = 0;
% Initialize arrays to store success ratios
changeWinRatios = zeros(1, numTrials);
stayWinRatios = zeros(1, numTrials);
% Simulations
for i = 1:numTrials
% Randomly placing the car behind a door
carDoor = randi(3);
% Randomly preferred door
initialChoice = randi(3);
remainingDoors = setdiff(1:3, [initialChoice, carDoor]);
if(length(remainingDoors) == 1) % if the car door and preferred door are different
openedDoor = remainingDoors;
else % if the initially preferred door is the one which has car behind it.
openedDoor = remainingDoors(randi(2));
end
newChoice = setdiff(1:3, [initialChoice, openedDoor]);
if newChoice == carDoor
changeWins = changeWins + 1;
else
changeLosses = changeLosses + 1;
end
if initialChoice == carDoor
stayWins = stayWins + 1;
else
stayLosses = stayLosses + 1;
end
% Calculate and store success ratios for each trial
changeWinRatios(i) = changeWins / i;
stayWinRatios(i) = stayWins / i;
end
% Create a plot to visualize success ratios
figure;
hold on;
plot(1:numTrials, changeWinRatios, 'b', 'LineWidth', 2, 'DisplayName', 'Seçimini Değiştir');
plot(1:numTrials, stayWinRatios, 'r', 'LineWidth', 2, 'DisplayName', 'Seçimini Koru');
xlabel('Toplam Oyun Sayısı');
ylabel('Başarı Oranı');
title('Monty Hall Problem Simülasyonu');
legend('Location', 'southeast');
grid on;
hold off;
% Display final success ratios
fprintf('Final Winning Ratio when changing the choice: %.2f%%\n', changeWinRatios(end) * 100);
fprintf('Final Winning Ratio when not changing the choice: %.2f%%\n', stayWinRatios(end) * 100);
Повторяем попытку...
Доступные форматы для скачивания:
Скачать видео
-
Информация по загрузке: