この革新的な技術は、量子通信ネットワークや量子コンピューティングの効率化に大きく貢献する可能性があります。
⇧「完全情報ゲーム」みたいなものに対しては、「AI」が向いているってことなんですかね?
完全情報ゲーム(かんぜんじょうほうゲーム、英: game with perfect information)とは、すべての意思決定点において、これまでにとられた行動や実現した状態に関する情報がすべて与えられているような展開型ゲームのことをいう。言いかえれば、情報集合がすべて 1 点からなっており、どのノードにおいてもそこで手番をもつプレーヤーがそれまでの歴史を完全に把握できるようなゲームである。
完全情報と完備情報
類似した概念に完備情報がある。両者の違いは、端的に言えば、完全情報は全員が相手のこれまでの行動などゲームの内部情報について知っていること、完備情報は全員が相手の利得関数などゲームの構造について知っていることである。例えば、囚人のジレンマでは、相手の利得関数については互いに知っているが、相手がどのような行動をとったのかについては知らないので、完備情報ではあるが不完全情報である。
テーブルゲームでは、囲碁、将棋、リバーシなどの古典的ボードゲームのほとんどが完備情報かつ完全情報であるが、コントラクトブリッジやポーカー、麻雀などのカードゲーム・タイルゲームは相手がどのような手札の中から場に出す札を選択したのかなどの情報が全員にあきらかとは言えない。
⇧「AI」は「幻覚(ハルシネーション)」を引き起こすとは言え、人類に比べれば、「完全情報」により近い位置にはいそうですし...
「エネルギー問題」「食糧問題」「環境問題」なども解決して欲しいものですな...
Pythonの標準ライブラリのurllib.parse.urljoinメソッドの挙動が罠過ぎる...
「Ruff」を使うと、「ファイルパス」や「URL」を文字列連結する際に、「os.sep.join」を使うな、「Path」使えって言われるので、「Path」を使うと正常に文字列連結されず、「urllib.parse.urljoin」を使ったら、よく分からん挙動をしたので備忘録として。
公式のドキュメントによりますと、
⇧ とあり、何か補正がかかってしまうのかね?
試してみる。
■/home/ts0818/work/app/python/app/src/test/py/test_poc.py
import logging from urllib.parse import urljoin class TestPoc: _logger = logging.getLogger(__name__) _logger.setLevel(logging.DEBUG) def test_urljoin(self) -> None: """urljoinのテスト.""" owner = "ts0818" git_clone_url_base = f"https://github.com/{owner}" repo_name = "test_github_app.git" url_by_urljoin: str = urljoin(git_clone_url_base, repo_name) url_by_str_join: str = f"{git_clone_url_base}/{repo_name}" url_by_path: str = str(Path(git_clone_url_base) / repo_name) url_by_os_sep_join: str = os.sep.join([git_clone_url_base, repo_name]) self._logger.debug("\n■■■git_clone_url_base■■■\n %s", git_clone_url_base) self._logger.debug("\n■■■url_by_urljoin■■■\n %s", url_by_urljoin) self._logger.debug("\n■■■url_by_str_join■■■\n %s", url_by_str_join) self._logger.debug("\n■■■url_by_path■■■\n %s", url_by_path) self._logger.debug("\n■■■url_by_os_sep_join■■■\n %s", url_by_os_sep_join)
⇧ を実行してみる。
以下、結果。
Running pytest with args: ['-p', 'vscode_pytest', '-c', '/home/ts0818/work/app/python/app/src/test/resources/pytest/conf/pytest.ini', '--cache-clear', '--rootdir=/home/ts0818/work/app/python/app', '--cov=.', '/home/ts0818/work/app/python/app/src/test/py/test_poc.py::TestPoc::test_urljoin'] ============================= test session starts ============================== platform linux -- Python 3.9.18, pytest-8.3.3, pluggy-1.5.0 rootdir: /home/ts0818/work/app/python/app configfile: src/test/resources/pytest/conf/pytest.ini plugins: cov-6.0.0 collected 1 item src/test/py/test_poc.py::TestPoc::test_urljoin -------------------------------- live log call --------------------------------- 2024-12-09 21:50:10 DEBUG ■■■git_clone_url_base■■■ https://github.com/ts0818 2024-12-09 21:50:10 DEBUG ■■■url_by_urljoin■■■ https://github.com/test_github_app.git 2024-12-09 21:50:10 DEBUG ■■■url_by_str_join■■■ https://github.com/ts0818/test_github_app.git 2024-12-09 21:50:10 DEBUG ■■■url_by_path■■■ https:/github.com/ts0818/test_github_app.git 2024-12-09 21:50:10 DEBUG ■■■url_by_os_sep_join■■■ https://github.com/ts0818/test_github_app.git PASSED [100%] ---------- coverage: platform linux, python 3.9.18-final-0 ----------- Name Stmts Miss Cover --------------------------------------------- src/test/py/test_poc.py 20 0 100% --------------------------------------------- TOTAL 20 0 100% ============================== 1 passed in 0.31s =============================== Finished running tests!
⇧ とあり、よく分からん形での文字列連結という結果になってしまうという...
「Ruff」が代替案を出してくれるのは構わないんだが、まさか異なる結果になるとは思わんのよね...
「Python」全く分からん...
毎度モヤモヤ感が半端ない…
今回はこのへんで。