JP7446621B2 - Computer system and personal information provision method - Google Patents
Computer system and personal information provision method Download PDFInfo
- Publication number
- JP7446621B2 JP7446621B2 JP2020563862A JP2020563862A JP7446621B2 JP 7446621 B2 JP7446621 B2 JP 7446621B2 JP 2020563862 A JP2020563862 A JP 2020563862A JP 2020563862 A JP2020563862 A JP 2020563862A JP 7446621 B2 JP7446621 B2 JP 7446621B2
- Authority
- JP
- Japan
- Prior art keywords
- personal information
- information
- encrypted
- personal
- simulation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 261
- 230000008569 process Effects 0.000 claims description 236
- 238000012545 processing Methods 0.000 claims description 194
- 238000003860 storage Methods 0.000 claims description 7
- RWSOTUBLDIXVET-UHFFFAOYSA-N Dihydrogen sulfide Chemical compound S RWSOTUBLDIXVET-UHFFFAOYSA-N 0.000 claims description 3
- 230000010365 information processing Effects 0.000 claims description 3
- 239000003795 chemical substances by application Substances 0.000 description 241
- 238000013473 artificial intelligence Methods 0.000 description 234
- 238000004088 simulation Methods 0.000 description 191
- 230000002787 reinforcement Effects 0.000 description 158
- 230000009471 action Effects 0.000 description 114
- 239000000463 material Substances 0.000 description 56
- 238000010801 machine learning Methods 0.000 description 54
- 230000006870 function Effects 0.000 description 47
- 238000009826 distribution Methods 0.000 description 46
- 230000004044 response Effects 0.000 description 32
- 238000010586 diagram Methods 0.000 description 29
- 238000004422 calculation algorithm Methods 0.000 description 27
- 230000006872 improvement Effects 0.000 description 27
- 230000008520 organization Effects 0.000 description 24
- 238000002360 preparation method Methods 0.000 description 24
- 230000002829 reductive effect Effects 0.000 description 24
- 244000205754 Colocasia esculenta Species 0.000 description 15
- 235000006481 Colocasia esculenta Nutrition 0.000 description 15
- 238000012217 deletion Methods 0.000 description 14
- 230000037430 deletion Effects 0.000 description 14
- 238000013461 design Methods 0.000 description 13
- 230000001939 inductive effect Effects 0.000 description 12
- 230000008094 contradictory effect Effects 0.000 description 11
- 238000005065 mining Methods 0.000 description 10
- 238000005457 optimization Methods 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 9
- 230000007613 environmental effect Effects 0.000 description 9
- 230000006399 behavior Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 8
- 230000036961 partial effect Effects 0.000 description 8
- 238000010276 construction Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 241000280258 Dyschoriste linearis Species 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 5
- 230000007423 decrease Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000012795 verification Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000013478 data encryption standard Methods 0.000 description 4
- 230000001965 increasing effect Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000009825 accumulation Methods 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 238000000137 annealing Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 241000282412 Homo Species 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 2
- 238000007418 data mining Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 238000011835 investigation Methods 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 229910052751 metal Inorganic materials 0.000 description 2
- VNWKTOKETHGBQD-UHFFFAOYSA-N methane Chemical compound C VNWKTOKETHGBQD-UHFFFAOYSA-N 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000013439 planning Methods 0.000 description 2
- 230000007115 recruitment Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 241000239290 Araneae Species 0.000 description 1
- 238000012356 Product development Methods 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 238000009412 basement excavation Methods 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 230000036760 body temperature Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000035606 childbirth Effects 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 238000009509 drug development Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 238000003306 harvesting Methods 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 150000002739 metals Chemical class 0.000 description 1
- 239000003345 natural gas Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 239000002547 new drug Substances 0.000 description 1
- 239000003921 oil Substances 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000010248 power generation Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000002747 voluntary effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明は、個人情報を処理するコンピュータシステム及びコンピュータを用いた個人情報提供方法に関する。 The present invention relates to a computer system for processing personal information and a method for providing personal information using a computer .
従業員等の個人が、ネットワークを介して「情報銀行」となるサーバに各人のライフログデータ等のパーソナルデータを預け、個人が承諾すると、パーソナルデータが、所定の企業に開示される。次に、パーソナルデータが開示されると、企業は、例えば、パーソナルデータを分析して、各人のライフステージに応じたサービス等を予測し、情報提供等を行う。このようなビジネスモデルを構築する技術において、個人情報等が不正な目的を持つ者等に漏洩するのを防ぐ情報処理システム、情報処理方法及びプログラムを提供するものとして、例えば、特許文献1がある。
Individuals such as employees deposit their personal data such as life log data to a server that serves as an "information bank" via a network, and when the individual consents, the personal data is disclosed to a predetermined company. Next, when the personal data is disclosed, the company analyzes the personal data, predicts services, etc. according to each person's life stage, and provides information. In technology for building such a business model, for example,
本発明の目的は、ユーザが、自身の個人情報を自己管理下に置くことを可能にすることである。 The purpose of the invention is to enable users to put their personal information under self-control .
本発明は、個人情報を処理するコンピュータシステムであって、
ユーザの個人情報を暗号化した暗号化個人情報を格納している個人情報格納手段と、
前記暗号化個人情報を暗号化したまま検索を可能にするための検索可能化手段と、
前記検索可能化手段による検索の結果希望する個人情報がある場合に、当該個人情報の希望者と当該個人情報を提供する本人との間での合意のもと取引を成立させて当該個人情報を希望者に提供する取引実行手段と、を備え、
前記検索可能化手段は、
前記暗号化個人情報をキーワード検索するための索引であるインデックスを共通鍵により暗号化する暗号化処理が施された暗号化インデックスをブロックチェーンに記録する暗号化インデックス記録手段と、
検索に用いるキーワードである検索クエリを前記共通鍵により暗号化する暗号化処理が施された暗号化検索クエリを用いて、前記暗号化インデックスを検索する検索手段と、を含み、
前記取引実行手段は、
希望者に提供した個人情報を希望者が閲覧可能にする閲覧可能化手段と、
前記個人情報を提供する本人の意思に従った取引条件が満たされた場合に当該個人情報の取引をスマートコントラクトを用いて行うスマートコントラクト処理手段と、を含み、
前記スマートコントラクト処理手段により行われた取引をブロックチェーンに記録する記録手段をさらに備える。
The present invention is a computer system that processes personal information,
a personal information storage means storing encrypted personal information obtained by encrypting the user's personal information;
search enablement means for making the encrypted personal information searchable while encrypted;
If the desired personal information is found as a result of the search using the search enablement means, a transaction is concluded between the person requesting the personal information and the person providing the personal information, and the personal information is transferred. A transaction execution means provided to those who wish to do so;
The search enablement means includes:
an encrypted index recording means for recording on a blockchain an encrypted index that has been subjected to an encryption process of encrypting an index for keyword searching the encrypted personal information using a common key;
a search means for searching the encrypted index using an encrypted search query that has been subjected to an encryption process of encrypting a search query that is a keyword used for the search with the common key,
The transaction execution means is
A means for making personal information provided to the applicant available for viewing by the applicant;
a smart contract processing means that uses a smart contract to transact the personal information when transaction conditions according to the intention of the person providing the personal information are satisfied;
The smart contract processing means further includes recording means for recording transactions performed by the smart contract processing means on a blockchain.
本発明の他の局面は、コンピュータを用いた個人情報提供方法であって、
ユーザの個人情報を暗号化した暗号化個人情報を格納するステップと、
前記暗号化個人情報を暗号化したまま検索を可能にするための検索可能化ステップと、
該検索可能化ステップによる検索の結果希望する個人情報がある場合に、当該個人情報の希望者と当該個人情報を提供する本人との間での合意のもと取引を成立させて当該個人情報を希望者に提供する取引実行ステップと、を含み、
前記検索可能化ステップは、
前記暗号化個人情報をキーワード検索するための索引であるインデックスを共通鍵により暗号化する暗号化処理が施された暗号化インデックスをブロックチェーンに記録する暗号化インデックス記録ステップと、
検索に用いるキーワードである検索クエリを前記共通鍵により暗号化する暗号化処理が施された暗号化検索クエリを用いて前記暗号化インデックスを検索する検索ステップと、を有し、
前記取引実行ステップは、
希望者に提供した個人情報を希望者が閲覧可能にする閲覧可能化ステップと、
前記個人情報を提供する本人の意思に従った取引条件が満たされた場合に当該個人情報の取引をスマートコントラクトを用いて行うスマートコントラクト処理ステップと、を有し、
前記スマートコントラクト処理ステップにより行われた取引をブロックチェーンに記録する記録ステップをさらに含む。
Another aspect of the present invention is a personal information providing method using a computer, comprising:
storing encrypted personal information obtained by encrypting the user's personal information;
a search enablement step for making the encrypted personal information searchable while encrypted;
If the desired personal information is found as a result of the search in the search enablement step, a transaction is concluded between the person requesting the personal information and the person providing the personal information, and the personal information is transferred. A transaction execution step provided to a person who wishes to do so;
The searchability step includes:
an encrypted index recording step of recording on a blockchain an encrypted index that has been subjected to an encryption process of encrypting an index for keyword searching the encrypted personal information using a common key;
a search step of searching the encrypted index using an encrypted search query that has been subjected to an encryption process of encrypting a search query that is a keyword used for the search with the common key,
The transaction execution step includes:
a viewing enablement step for allowing the applicant to view the personal information provided to the applicant;
a smart contract processing step for performing a transaction of the personal information using a smart contract when transaction conditions according to the intention of the person providing the personal information are satisfied;
The method further includes a recording step of recording the transaction performed by the smart contract processing step on a blockchain.
本発明によれば、ユーザの個人情報が暗号化されており、その暗号化個人情報を暗号化したまま検索を可能にし、検索の結果希望する個人情報がある場合に、当該個人情報の希望者と当該個人情報を提供する本人との間での合意のもと取引を成立させて当該個人情報が希望者に提供される。よって、ユーザが、自身の個人情報を自己管理下に置くことが可能になる。 According to the present invention , the user's personal information is encrypted, and the encrypted personal information is searched while being encrypted, and when the desired personal information is found as a result of the search, the desired personal information is searched. The personal information is provided to the person who requests it after a transaction is concluded based on an agreement between the person providing the personal information and the person providing the personal information . Therefore , it becomes possible for users to put their own personal information under their own control.
[第1実施形態]
図1~図13に基づいて本発明の第1実施形態を説明する。まず、図1の全体システムを参照し、3種類のブロックチェーンネットワークであるプライベートチェーン2、コンソーシアムチェーン3及びパブリックチェーン4が集中型オラクル21に接続されている。パブリックチェーン4は、完全にオープンな仕組みで、個人や団体が誰でもそこで取引することが可能である。取引はそのブロックチェーンで効果的に確認ができる。マイニング(記帳権の競争)も自由で誰でも参加できる。コンソーシアムチェーン3は、協会や組合に属しているパートナーのみが使うことができるブロックチェーンである。その中の人達(各ノード)は記帳者に指定される。ブロックの生成も事前に決定され、それ以外の他の人達(ノード)は、取引はできるが記帳権はない。プライベートチェーン2は、ブロックチェーン技術で記帳するのみで、記帳権はオープンではなく個人または企業が独占し、内部の取引だけを記録する。ブロックチェーン同士を繋いで各ブロックチェーン間でトークンやデータの交換を行うには、Polkadotを用いる。Polkadotとは、異なるブロックチェーンを繋ぐためのブロックチェーンである。Substrateを用いて開発されたブロックチェーンはPolkadotに接続することができ、Polkadotに接続することで、Polkadotに接続された他のブロックチェーンとトークンやデータの交換ができるようになる。
[First embodiment]
A first embodiment of the present invention will be described based on FIGS. 1 to 13. First, referring to the overall system of FIG. 1, three types of blockchain networks, a
集中型オラクル21は、ブロックチェーンとインターネット1の間でデータの橋渡しをするシステムであり、インターネット1に接続されてネット上に散在している各種情報を収集してブロックチェーンのスマートコントラクトに情報提供を行う。
The
プライベートチェーン2、コンソーシアムチェーン3及びパブリックチェーン4の各ノード19は、パーソナルコンピュータ(以下「PC」という)16等のユーザ端末で構成されている。このPC(以下「ユーザ端末」ともいう)16がインターネット1に接続されている。インターネット1には、さらに、SNS(Social Networking Service)40のサーバ20及びブロックチェーンの認定事業者17のサーバ18が接続されている。なお、認定事業者17のサーバ18は、ノード19としてブロックチェーンに参加してもよい。また、PKI(Public Key Infrastructure)での電子証明書を発行する認証局のサーバがインターネット1に接続されていてもよい。
Each
認定事業者17は、個人情報を預かりその個人準情報主に電子IDを発行すると共に、その個人情報のハッシュ値をブロックチェーンに記録する。預かった個人情報は個人情報データベース(以下「個人情報DB」という)29に格納される。なお、認定事業者17がノード19としてブロックチェーンに参加してもよい。
The
PC16は、制御中枢としてのCPU(Central Processing Unit)10、CPU10のワークエリアとして機能するRAM(Random Access Memory)9、データやプログラムを記憶しているROM(Read Only Memory)11、HDD(hard disk drive)12などの記憶部、ディスプレイ、キーボード等の入力操作部7、通信部5、表示部6、インタフェース8、バス13、その他種々のハードウェアによって構成される。サーバ20及びサーバ18等の各種サーバも、PC16と同様のハードウェアによって構成されており、ここでは図示及び説明の繰り返しを省略する。なお、記憶部として、上記HDDに加えてまたはその代わりSDD(Solid State Drive)を用いてもよい。
The
コンソーシアムチェーン3のノード19には、IoT(Internet of Things)用デバイス14及びワイヤレスセンサネットワーク15が接続されている。IoT用デバイス14及びワイヤレスセンサネットワーク15からのセンサ信号がノード19に入力されると共に、ノード19からIoT用デバイス14の駆動信号が出力される。IoT用デバイス14は、IoT用の各種センサやアクチュエータ等である。
The
ワイヤレスセンサネットワーク15とは、複数のセンサ付無線端末を空間に散在させ、それらが協調して環境や物理的状況を採取することを可能とする無線ネットワークのことである。例えばエネルギーハーベスティングかM2Mあるいは電池などでセンサ装置を作り、例えば金属疲労の劣化等を圧力センサやゲージセンサで常時モニターしておき、その変化があると知らせる。主に橋梁やトンネル等の建造物に設置される。一般的に、複数のセンサノードとゲートウェイセンサノードとを含む。それらノードは、通常1個以上のセンサ、無線チップ、マイクロプロセッサ、電源(電池など)により構成される。ワイヤレスセンサネットワークは、通常、アドホック(ad hoc)機能と、各ノードから中枢ノードへデータを送るためのルーティング機能(routing algorithm)を持つ。つまり、ノード間の通信に障害がでると別の通信経路を自律的に再構築する機能がある。ノードがグループとして連携するため分散処理の要素もある。加えて、外部から電力供給を受けずに長期間動作する機能もあり、そのために省電力機能または自己発電機能を持つ。
The
本実施形態では、IoT用デバイス14及びワイヤレスセンサネットワーク15がノード19を介してコンソーシアムチェーン3に接続されているが、ノード19を介することなく、IoT用デバイス14及びワイヤレスセンサネットワーク15の一方または双方自体がコンソーシアムチェーン3のノード19の一部となっていてもよい。
In this embodiment, the
次に図2(A)を参照し、PC16のHDD12に記憶されている情報を説明する。HDD12には、ユーザの秘密鍵SK、公開鍵PK、共通鍵K1、トラップドア用共通鍵K2、ブロックチェーンでのユーザのアドレス、スマートコントラクト、トークン、人工知能(「AI(Artificial Intelligence)」ともいう)及びブロックチェーンデータ等が記憶されている。なお、ユーザは、自然人ばかりでなく法人をも含む広い概念である。
Next, information stored in the
秘密鍵SKと公開鍵PKは、PKI(Public key Infratructure)で用いる鍵ペアであり、公開鍵PKで暗号化されたデータを秘密鍵SKで復号する。秘密鍵SKは電子署名にも用いる。共通鍵K1は、例えばDES(Data Encryption Standard)やAES(Advanced Encryption Standard)等の共通鍵暗号に用いる鍵である。共通鍵K1により暗号化されたデータを同じ共通鍵K1を用いて復号する。本実施形態では、暗号化対象の個人情報毎に異なる共通鍵を用いている。第1実施形態では、暗号化個人情報EK1(個人情報)を暗号文についてキーワード検索用の索引(インデックス)が設けられている。そのインデックスは共通鍵K2により暗号化されている。キーワード検索するためには、検索に用いるキーワード(検索クエリ)を共通鍵K2で暗号化した暗号化検索クエリ(これを「トラップドア」という)を用いて検索する。この共通鍵K2をトラップドア用共通鍵K2としてHDD12に記憶している。
The private key SK and public key PK are a key pair used in PKI (Public Key Infrastructure), and data encrypted with the public key PK is decrypted with the private key SK. The private key SK is also used for electronic signatures. The common key K1 is a key used for common key encryption such as DES (Data Encryption Standard) and AES (Advanced Encryption Standard). Data encrypted with the common key K1 is decrypted using the same common key K1. In this embodiment, a different common key is used for each piece of personal information to be encrypted. In the first embodiment, an index for keyword search is provided for encrypted personal information E K1 (personal information) in cipher text. The index is encrypted using the common key K2. In order to perform a keyword search, a search is performed using an encrypted search query (referred to as a "trapdoor") in which the keyword (search query) used for the search is encrypted using the common key K2. This common key K2 is stored in the
ブロックチェーンでのユーザのアドレスは、以下のプロセスを経て生成される。
1 秘密鍵からECDSAで公開鍵を生成する。
2 公開鍵をハッシュ関数SHA-256に通しハッシュ値を得る。
3 そのハッシュ値をさらにハッシュ関数RIPEMD-160に通しハッシュ値を得る。
4 ハッシュ値の先頭にプレフィックスとして00を加える。
5 ハッシュ関数SHA-256に通す。
6 もう一度ハッシュ関数SHA-256に通す。
7 4バイトのチェックサムを一番後ろに加える。
8 Base58のフォーマットでエンコーディングする。
A user's address on the blockchain is generated through the following process.
1 Generate a public key using ECDSA from the private key.
2 Pass the public key through the hash function SHA-256 to obtain the hash value.
3 Pass the hash value further through hash function RIPEMD-160 to obtain a hash value.
4 Add 00 as a prefix to the beginning of the hash value.
5 Pass through hash function SHA-256.
6 Pass it through the hash function SHA-256 again.
7 Add a 4-byte checksum to the end.
8 Encode in Base58 format.
スマートコントラクトとは、契約のスムーズな検証、条件確認、執行、実行、交渉を意図したコンピュータプロトコルである。トークンとは、企業や個人よりブロックチェーン上で発行された独自通貨のことである。 A smart contract is a computer protocol intended for smooth verification, condition confirmation, execution, execution, and negotiation of contracts. A token is a unique currency issued on a blockchain by a company or individual.
次に、ブロックチェーンデータを説明する。ブロックチェーンの各ブロック内のデータは、前のブロックのハッシュ値、ナンス及び複数の取引のデータ(トランザクションともいう)を含んでいる。また、図示を省略しているが、タイムスタンプもブロックチェーンに埋め込まれている。このようなブロックチェーンは、各ノード19がブロックチェーン処理(後述するS3、S19、S30、S51、S117、S122、S153等参照)を行うことにより生成されて新たなブロックチェーンとして追加される。ブロックチェーン処理は、主に、取引、伝搬及び記録の3つのフェーズからなる。
Next, we will explain blockchain data. The data in each block of the blockchain includes the hash value of the previous block, a nonce, and data of multiple transactions (also called transactions). Additionally, although not shown, a timestamp is also embedded in the blockchain. Such a blockchain is generated by each
取引のフェーズは、一般的にトランザクションといわれる行為であり、売買行為、譲渡行為、貸与(貸渡し)行為等の法律行為を意味する。この取引フェーズは、より具体的には、生成→署名→伝搬と3つのフェーズに分けることができる。 The transaction phase is generally referred to as a transaction, and refers to legal acts such as buying and selling, transfer, and lending. More specifically, this transaction phase can be divided into three phases: generation → signature → propagation.
生成フェーズは、トランザクションの生成を行うことであり、例えば、A氏がB氏に対し「休止状態のPC資源(計算資源)を39005秒貸与して25.78トークンを得る。」と決め、トランザクションを生成したことを電子署名する。この電子著名は、トランザクションデータを所定のハッシュ関数を通すことによりハッシュ値を生成し、トランザクション(取引)の当事者(A氏とB氏)の秘密鍵SKを用いてそのハッシュ値を暗号化したものである。また、認証局によりデジタル公開鍵証明書を発行してもらってもよい。図2では、PC資源(計算資源)を貸与する例を示しているが、貸与対象はそれに限定されるものではなく、例えば、家庭や企業で自己発電した電力、ユーザの専門的知識経験やスキルや人脈(ネット上での人的ネットワークを含む)や信用等の価値、などが考えられる。 The generation phase is to generate a transaction. For example, Mr. A decides to ``lend dormant PC resources (computing resources) for 39005 seconds and obtain 25.78 tokens'' to Mr. B, and the transaction is generated. electronically sign that it was generated. This electronic signature generates a hash value by passing transaction data through a predetermined hash function, and encrypts the hash value using the private keys SK of the parties to the transaction (Mr. A and Mr. B). It is. Alternatively, a digital public key certificate may be issued by a certification authority. Although Figure 2 shows an example of lending PC resources (computing resources), the scope of lending is not limited to this, and includes, for example, electric power self-generated at home or business, the user's specialized knowledge and experience, and skills. Possible values include personal connections (including online human networks), trust, and other values.
伝搬フェーズは、正しくトランザクションの生成・署名が完了したことを、他のノードに確認してもらうことである。正しくトランザクションの生成・署名が行われなかったと判断された場合、そのトランザクションは破棄される The propagation phase is to have other nodes confirm that the transaction has been correctly generated and signed. If it is determined that the transaction was not correctly generated and signed, the transaction will be discarded.
記録フェーズは、正しくトランザクションの生成・署名が完了したことが確認された場合に、マイナーがマイニングを行って取引の記録を行うことである。正しく生成・署名が完了したことが確認されたトランザクションは、マイニングプールといわれる場所に移動する。その後、マイナーが、マイニングプールから記録するトランザクションを選んでマイニングを行う。 In the recording phase, when it is confirmed that the transaction has been correctly generated and signed, the miner performs mining and records the transaction. Transactions that are confirmed to have been correctly generated and signed are moved to a location called a mining pool. Then, miners select transactions to record from the mining pool and mine them.
マイニングは、ナンスを算出する作業である。ナンスとは、ブロックのデータをハッシュ関数に通したときに先頭に0がたくさん並ぶような非常に小さなハッシュ値が生成されるように調整するための値のことである。ハッシュ値がターゲット値以下になるようなナンスを計算することができると新しいブロックが生成される。 Mining is the process of calculating nonces. A nonce is a value used to adjust the hash value so that when a block's data is passed through a hash function, a very small hash value with many leading zeros is generated. A new block is generated when a nonce whose hash value is less than or equal to the target value can be calculated.
なお、取引のデータは、図2の右側の取引Iに示すように、ユーザの個人情報を鍵K1で暗号化したEK1(個人情報)のハッシュ値、その電子ID、及び個人情報のインデックスと個人情報の提供に対する対価(図2では2.4トークンで提供)とを鍵K2で暗号化したEK2(インデックス+2.4トークンで提供)も含んでいる。個人情報の具体例としては、ユーザの心拍数、血圧、体温、脳波等のバイタル情報、購買履歴やウェブサイト閲覧履歴等の行動履歴情報、GPS等のユーザの位置情報、人種、信条、社会的身分、病歴、電子カルテデータ、ID(identification)、SNS等への投稿情報等である。 Furthermore, as shown in transaction I on the right side of Figure 2, the transaction data includes the hash value of E K1 (personal information), which is the user's personal information encrypted with the key K1, its electronic ID, and the index of the personal information. It also includes the consideration for providing personal information (provided with 2.4 tokens in Figure 2) and E K2 (provided with index + 2.4 tokens) which is encrypted with key K2. Specific examples of personal information include vital information such as the user's heart rate, blood pressure, body temperature, and brain waves, behavioral history information such as purchase history and website browsing history, user location information such as GPS, race, creed, and society. Personal status, medical history, electronic medical record data, ID (identification), information posted to SNS, etc.
SNS等への投稿情報は、既にSNS25に投稿されてサーバ20に記憶されている過去の投稿情報をサーバ20から個人情報DB29及びブロックチェーンに移し替えたものである。具体的には、ユーザ自身が自身の過去の投稿情報を全て暗号化して認定事業者の個人情報DB29に記憶させると共にそのハッシュ値をブロックチェーンに記録する。以降、ユーザは、SNS25に投稿するのではなく、投稿内容を認定事業者の個人情報DB29に暗号化して記憶させると共にそのハッシュ値をブロックチェーンに記録する。これにより、ユーザは、個人情報をSNS等の事業者から取戻して自己管理下に置くことが可能になる。
The information posted to the SNS etc. is obtained by transferring past posted information that has already been posted to the
なお、個人情報の提供に対する対価(図2では2.4トークンで提供)については、暗号化することなく平文のままブロックチェーンに記録してもよい。その場合には、他ユーザが暗号鍵K2を入手しなくてもブロックチェーンを検索して対価を知ることができる。さらに、個人情報の提供に対する対価やPC資源(計算資源)の貸与の対価(図2ではPC資源(計算資源)を39005秒貸与して25.78トークンを得る)等の取引条件を、スマートコントラクトとしてコードの形にし、スマートコントラクトにより取引(法律行為)の自動化を行うようにしてもよい。 Note that the compensation for providing personal information (2.4 tokens in Figure 2) may be recorded in plain text on the blockchain without being encrypted. In that case, other users can search the blockchain and know the price without having to obtain the encryption key K2. Furthermore, transaction conditions such as compensation for providing personal information and compensation for lending PC resources (computing resources) (in Figure 2, 25.78 tokens are obtained by lending PC resources (computing resources) for 39005 seconds) are set in the smart contract. It is also possible to put it in the form of code and automate transactions (legal acts) using smart contracts.
取引Iとして記録されるハッシュ値の対象である暗号化個人情報自体は、認定事業者17の個人情報DB29に記憶されている。具体的には、図2(B)に示すように、認定事業者17が暗号化個人情報EK1(個人情報)に対し発行した電子IDに対応付けて暗号化個人情報EK1(個人情報)が個人情報DB29に記憶されている。
The encrypted personal information itself, which is the object of the hash value recorded as transaction I, is stored in the
インデックスとは、暗号化個人情報EK1(個人情報)をキーワード検索するための索引のことである。本実施形態では、インデックスを共通鍵K2により暗号化する共通鍵暗号方式を採用しているため、キーワード検索するためには、検索に用いるキーワード(検索クエリ)を共通鍵K2で暗号化した暗号化検索クエリ(これを「トラップドア」という)を用いて検索する。共通鍵K2は、ユーザ毎に異なる鍵であるが、同じユーザの暗号化インデックスであれば同じ鍵が用いられる。よって、後述するスマートコントラクトにより、例えばユーザAがユーザBに対して共通鍵K2を配布するトランザクションを行えば、ユーザBは、EK2(検索クエリ)を用いてユーザAの全ての暗号化インデックスをブロックチェーン上で検索可能となる。 The index is an index for keyword searching for encrypted personal information E K1 (personal information). In this embodiment, a common key encryption method is adopted in which the index is encrypted using the common key K2. Therefore, in order to perform a keyword search, the keyword (search query) used for the search must be encrypted using the common key K2. Search using a search query (this is called a "trapdoor"). The common key K2 is a different key for each user, but the same key is used for encrypted indexes of the same user. Therefore, using the smart contract described below, for example, if user A performs a transaction to distribute common key K2 to user B, user B will use E K2 (search query) to retrieve all encrypted indexes of user A. It will be searchable on the blockchain.
なお、暗号文を暗号化したまま検索できる準同型暗号や完全準同型暗号等の検索可能暗号を用いてもよい。その際、準同型暗号や完全準同型暗号を用いて個人情報を暗号化し、その暗号化個人情報をブロックチェーンに直接記録してもよい。また、暗号化個人情報EK1(個人情報)を直接ブロックチェーンに記録するようにしてもよい。 Note that a searchable encryption such as a homomorphic encryption or a completely homomorphic encryption, which allows searching while encrypting the ciphertext, may be used. At that time, personal information may be encrypted using homomorphic encryption or completely homomorphic encryption, and the encrypted personal information may be directly recorded on the blockchain. Alternatively, the encrypted personal information E K1 (personal information) may be directly recorded on the blockchain.
次に、図3(A)を参照して、パブリックチェーン19のユーザ端末のメインルーチンプログラムのフローチャートを説明する。ステップS(以下単に「S」という)1により、個人情報記録処理が行われ、S2によりスマートコントラクト処理が行われ、S3によりブロックチェーン処理が行われる。
Next, a flowchart of the main routine program of the user terminal of the
個人情報記録処理とは、個人情報主が個人情報を暗号化して認定事業者17に登録してその暗号化個人情報のハッシュ値をブロックチェーンに記録する処理である。スマートコントラクト処理とは、予め決められているルールに従って契約の締結及び執行等の法律行為を自動的に行う処理である。ブロックチェーン処理の具体的内容は、図2(A)に基づいて前述したとおりである。
The personal information recording process is a process in which the owner of personal information encrypts personal information, registers it with the authorized
図3(B)を参照して個人情報記録処理を説明する。S5により、パブリックチェーン19のノード19を構成しているユーザ端末において個人情報の登録操作があったか否か判定される。ない場合にはこの個人情報記録処理がリターンしてS2のスマートコントラクト処理に移行する。個人情報の登録操作があったと判定された場合には、S6により、ユーザ端末のメモリ(HDD12等)に記憶されている個人情報を鍵K1で暗号化した上で秘密鍵SKで電子署名し、かつ、インデックスを鍵K2で暗号化して認定事業者17のサーバ18へ送信する。
The personal information recording process will be explained with reference to FIG. 3(B). In S5, it is determined whether a personal information registration operation has been performed on a user terminal forming a
それをS7で受信した認定事業者17のサーバ18は、電子IDを発行すると共に受信した暗号化個人情報であるEK1(個人情報)のハッシュ値を生成する。次に、発行した電子IDをユーザ端末に返信する(S9)。それを受信したユーザ端末は、電子IDをメモリ(HDD12等)に記憶する。認定事業者17のサーバ18は、S10において、電子IDとハッシュ値と暗号化インデックスとをブロックチェーンに記録するための処理を行う。
The
S2に示されたスマートコントラクト処理のサブルーチンプログラムのフローチャートを説明する。図4を参照して、S13において、共通鍵K2の配布契約が成立したか否か判定され、成立していない場合にはS15において、ユーザ端末のPC資源(計算資源)の貸与契約が成立したか否か判定され、成立していない場合にはS16において個人情報の提供契約が成立したか否か判定され、成立していない場合にはS17においてオーダーメイド商品等を発注する発注契約が成立したか否か判定され、成立していない場合にはS22において商品等の売買契約が成立したか否か判定され、成立していない場合にはリターンする。これらの判定はスマートコントラクトによって行われる。例えば、前述した対価等をスマートコントラクトとしてコード化している場合には、当事者双方の対価等の条件が合致したか否かをスマートコントラクトが判定し、合致したと判定した場合に、契約の締結及び執行を自動的に行う。 A flowchart of the smart contract processing subroutine program shown in S2 will be explained. Referring to FIG. 4, in S13, it is determined whether a distribution contract for the common key K2 has been established, and if not, in S15, a loan contract for PC resources (computing resources) of the user terminal has been established. If not, it is determined in S16 whether or not a personal information provision contract has been established, and if not, it is determined in S17 that an ordering contract for ordering custom-made products, etc. has been established. If not, it is determined in S22 whether or not a sales contract for the product, etc. has been concluded, and if not, the process returns. These decisions are made by smart contracts. For example, if the consideration mentioned above is coded as a smart contract, the smart contract determines whether the conditions of consideration, etc. of both parties match, and if it is determined that they match, the contract is concluded and Execute automatically.
共通鍵K2の配布契約が成立したと判定された場合には制御がS14へ進み、配布先に共通鍵K2が送信された後、制御がS19へ進む。S19では、その成立した契約をトランザクションとしてブロックチェーンに記録するための処理が行われる。PC資源(計算資源)の貸与契約が成立したと判定された場合には制御がS18へ進み、PC資源(計算資源)の貸与処理が行われる。個人情報の提供契約が成立したと判定された場合には制御がS20へ進み、提供する個人情報の電子IDと個人情報の提供に合意する署名とを提供相手に返信すると共に、提供する個人情報の暗号化に使用した共通鍵K1を提供相手の公開鍵で暗号化して提供相手に返信する。 If it is determined that the distribution contract for the common key K2 has been established, the control proceeds to S14, and after the common key K2 is transmitted to the distribution destination, the control proceeds to S19. In S19, processing is performed to record the established contract as a transaction on the blockchain. If it is determined that a loan contract for PC resources (computing resources) has been established, the control proceeds to S18, and a process for lending PC resources (computing resources) is performed. If it is determined that a personal information provision contract has been established, the control proceeds to S20, in which the electronic ID of the personal information to be provided and the signature agreeing to the provision of personal information are returned to the providing party, and the personal information to be provided is The common key K1 used for encryption is encrypted with the public key of the provider and sent back to the provider.
発注契約が成立したと判定された場合には制御がS21へ進み、発注処理が行われた後にS19へ進む。売買契約が成立したと判定された場合には制御がS23へ進み、購入対象を入手する処理が実行されてS19へ進む。 If it is determined that an ordering contract has been established, control proceeds to S21, and after ordering processing is performed, control proceeds to S19. If it is determined that a sales contract has been established, the control proceeds to S23, a process for obtaining the purchase object is executed, and the process proceeds to S19.
次に、プライベートチェーン2のノード19を構成しているユーザ端末のメインルーチンプログラムのフローチャートを図5(A)に基づいて説明する。S28により個人情報検索処理が行われ、S29によりスマートコントラクト処理が行われ、S30によりブロックチェーン処理が行われ、S31により機械学習処理が行われ、S32によりAIスマートコントラクト生成処理が行われ、S33によりスマートコントラクト信託請負い処理が行われる。AIスマートコントラクトは、「一体化タイプ」と「連携タイプ」との両者を含む概念である。「一体化タイプ」とは、AIとスマートコントラクトとが一体化し契約(法律行為)のデータに基づいて機械学習を行いスマートコントラクト自体をAI化したものである。「連携タイプ」とは、契約(法律行為)のデータに基づいて機械学習を行ったAIとスマートコントラクトとが連携したものである。連携タイプの場合、学習済みAI(以下「連携用AI」という)が状況に応じてスマートコントラクトの追加、変更及び更新等を行う。
Next, a flowchart of the main routine program of the user terminal configuring the
個人情報検索処理とは、ブロックチェーンに記録されている暗号化インデックスをトラップドア(暗号化検索クエリ)により検索する処理である。スマートコントラクト処理とは、予め決められているルールに従って契約の締結及び執行等の法律行為を自動的に行う処理である。ブロックチェーン処理の具体的内容は、図2(A)に基づいて前述したとおりである。機械学習処理とは、多数のユーザの個人情報を学習用データとして機械学習して人工知能の学習済みモデルを生成する処理である。より具体的には、個人情報主を特定できない形の膨大な個人情報を学習用データとして機械学習して人工知能の一般的学習済みモデルを生成した後、個人情報主を特定できるデータ(例えばブロックチェーンにおけるアドレス)毎に分類された個人情報を用いて個人情報主毎(ブロックチェーンのアドレス毎)にパーソナライズされたパーソナライズド学習済みモデルを生成する処理である。 Personal information search processing is a process of searching an encrypted index recorded on a blockchain using a trapdoor (encrypted search query). Smart contract processing is processing that automatically performs legal acts such as conclusion and enforcement of contracts according to predetermined rules. The specific content of the blockchain processing is as described above based on FIG. 2(A). Machine learning processing is processing that generates a trained model of artificial intelligence by performing machine learning using personal information of a large number of users as learning data. More specifically, after using machine learning as training data to generate a general trained model of artificial intelligence, a huge amount of personal information in a form that cannot identify the owner of the personal information, data that can identify the owner of the personal information (for example, block This is a process of generating a personalized trained model personalized for each individual information owner (each address on the blockchain) using personal information classified by each address in the chain.
AIスマートコントラクト生成処理とは、契約(法律行為)に関する個人情報を学習用データとして機械学習して人工知能によるスマートコントラクトの学習済みモデルを生成する処理である。より具体的には、個人情報主を特定できない形の膨大な契約(法律行為)に関する個人情報を学習用データとして機械学習して人工知能によるスマートコントラクトの一般的学習済みモデルを生成した後、個人情報主を特定できるデータ(例えばブロックチェーンにおけるアドレス)毎に分類された契約(法律行為)に関する個人情報を用いて個人情報主毎(例えばブロックチェーンにおけるアドレス毎)にパーソナライズされたパーソナライズドAIスマートコントラクト学習済みモデルを生成する処理である。 The AI smart contract generation process is a process in which personal information related to contracts (legal acts) is used as learning data for machine learning to generate a trained model of a smart contract using artificial intelligence. More specifically, after using machine learning as learning data on a huge amount of personal information related to contracts (legal acts) in which the owner of the personal information cannot be identified, a general trained model for smart contracts using artificial intelligence is generated. A personalized AI smart contract that is personalized for each individual information owner (e.g., each blockchain address) using personal information related to contracts (legal acts) classified by data that can identify the information owner (e.g., blockchain address). This is the process of generating a trained model.
スマートコントラクト信託請負い処理とは、契約の締結及び執行等の法律行為を自動的に行う処理を本人から請負い本人に代わって実行するサービスを行う処理である。より具体的には、信託者用にパーソナライズされたパーソナライズドAIスマートコントラクト学習済みモデルを生成し、そのパーソナライズドAIスマートコントラクト学習済みモデルを用いて信託者に代わって法律行為を実行する。その実行の結果に基づいてAI用の報酬を決め、その報酬によりパーソナライズドAIスマートコントラクト学習済みモデルをさらに強化学習させる。 Smart contract trust contract processing is a process that provides a service in which a person contracts out processing to automatically perform legal acts such as contract conclusion and execution on behalf of the principal. More specifically, a personalized AI smart contract trained model is generated for the trustor, and the personalized AI smart contract trained model is used to execute a legal act on behalf of the trustor. A reward for the AI is determined based on the result of the execution, and the trained model of the personalized AI smart contract is further trained using the reward.
次に、図5(B)に基づいて、S28に示された個人情報検索処理のサブルーチンプログラムのフローチャートを説明する。S37により共通鍵K2の記憶があるか判定され、ない場合にはリターンする。後述のS45によりK2が記憶されている場合には、S37により共通鍵K2の記憶があると判定されて制御がS38へ進む。S38では、K2で暗号化した検索クエリ(トラップドア)でブロックチェーン上の暗号化インデックスを検索する処理が行われる。その検索を行なった結果、入手したい個人情報があるか否かがS39により判定される。入手したい個人情報がないと判定された場合にはリターンするが、入手したい個人情報があると判定された場合にはS40により、その入手希望個人情報の電子IDが記憶される。 Next, a flowchart of the subroutine program of the personal information search process shown in S28 will be explained based on FIG. 5(B). In S37, it is determined whether the common key K2 is stored, and if not, the process returns. If K2 is stored in S45, which will be described later, it is determined in S37 that the common key K2 is stored, and control proceeds to S38. In S38, processing is performed to search the encrypted index on the blockchain using the search query (trapdoor) encrypted with K2. As a result of the search, it is determined in S39 whether or not there is personal information to be obtained. If it is determined that there is no personal information to be obtained, the process returns, but if it is determined that there is personal information to be obtained, the electronic ID of the personal information to be obtained is stored in S40.
次に、図6及び図7(A)に基づいて、S29に示されたスマートコントラクト処理のサブルーチンプログラムのフローチャートを説明する。S42により検索希望個人情報があるか否か判定される。この判定は、例えば、未だ検索していない個人情報主のスマートコントラクトと順次交渉して条件が合致した場合にその個人情報主の個人情報を検索希望個人情報と判定する。S42により検索希望個人情報がないと判定された場合は、S46により入手希望個人情報の記憶があるか否か判定され、ないと判定された場合には制御が図7(A)のS55へ進み、PC資源(計算資源)の貸与契約が成立しているか否か判定され、成立していないと判定された場合にはS56により発注契約が成立しているか否か判定され、成立していないと判定された場合にはS57により売買契約が成立しているか否か判定され、成立していないと判定された場合にはリターンする。 Next, a flowchart of the smart contract processing subroutine program shown in S29 will be explained based on FIGS. 6 and 7(A). In S42, it is determined whether or not there is personal information desired to be searched. This determination is made, for example, by sequentially negotiating with the smart contract of a personal information owner who has not yet been searched, and when the conditions are met, the personal information of that personal information owner is determined to be the personal information desired to be searched. If it is determined in S42 that there is no personal information desired to be retrieved, it is determined in S46 whether or not the personal information desired to be obtained is stored, and if it is determined that there is no personal information desired to be obtained, control proceeds to S55 in FIG. 7(A). , it is determined whether a loan contract for PC resources (computing resources) has been established, and if it is determined that it has not been established, it is determined in S56 whether or not an ordering contract has been established, and if it has not been established. If it is determined, it is determined in S57 whether or not a sales contract has been established, and if it is determined that it has not been established, the process returns.
S42により検索希望個人情報があると判定された場合には制御がS43へ進み、共通鍵K2を個人情報主に要求する。具体的には、検索希望個人情報の個人情報主のブロックチェーン上でのアドレス宛てに自身のアドレス及び属性証明書(Attribute Certificate)を送信して共通鍵K2を要求する。S44によりK2の返信があったか否か判定し、あるまで待機する。個人情報主または個人情報主のスマートコントラクトは、送信されてきた属性証明書を確認してK2を返信してよいか否か判定し、返信して良いと判定した場合にK2を返信する。その個人情報主からK2の返信があった段階で制御がS45へ進み、返信されたK2を記憶した後、制御がS54へ移行する。S54では、その成立した契約をトランザクションとしてブロックチェーンに記憶する処理がなされる。この場合は、返信した個人情報主のアドレスから返信を受信したユーザのアドレスへインデックスの暗号化に用いている共通鍵K2が配布された旨の契約がブロックチェーンに記憶される。 If it is determined in S42 that there is personal information desired to be searched, control proceeds to S43, where a common key K2 is requested from the personal information owner. Specifically, it requests the common key K2 by transmitting its own address and attribute certificate to the address on the blockchain of the owner of the personal information desired to search. In step S44, it is determined whether there is a reply of K2 or not, and the process waits until there is a reply. The personal information owner or the smart contract of the personal information owner checks the transmitted attribute certificate and determines whether or not K2 can be returned, and if it is determined that it is okay to reply, returns K2. When the personal information owner returns K2, control proceeds to S45, and after storing the returned K2, control proceeds to S54. In S54, the established contract is stored in the blockchain as a transaction. In this case, a contract indicating that the common key K2 used to encrypt the index is distributed from the address of the person who sent the reply to the address of the user who received the reply is stored in the blockchain.
S46により入手希望個人情報の記憶があると判定された場合は制御がS47へ進み、入手希望個人情報を個人情報主に要求する処理が成される。具体的には、入手希望個人情報の個人情報主のブロックチェーン上でのアドレス宛てに自身のアドレス及び属性証明書を送信して入手希望個人情報を要求する。それを受けたパブリックチェーンのユーザ端末では、スマートコントラクトが属性証明書を確認すると共に個人情報の提供条件が合致するか否か判定し、個人情報を提供してよいと判定した場合に(S16でYES)、提供する個人情報の電子ID及び個人情報の提供に合意する署名を返信すると共に、提供する個人情報の暗号化に使用した共通鍵K1を提供相手の公開鍵で暗号化して返信する(S20参照)。 If it is determined in S46 that the personal information desired to be obtained is stored, the control proceeds to S47, where processing is performed to request the personal information owner to request the personal information desired to be obtained. Specifically, the user requests the personal information he or she wishes to obtain by transmitting his or her address and attribute certificate to the address on the blockchain of the owner of the personal information he wishes to obtain. On the user terminal of the public chain that receives the information, the smart contract checks the attribute certificate and determines whether the personal information provision conditions are met, and if it is determined that the personal information may be provided (in S16). YES), reply with the electronic ID of the personal information to be provided and a signature agreeing to the provision of the personal information, and encrypt the common key K1 used to encrypt the personal information to be provided with the public key of the provider and reply ( (See S20).
その返信があった場合には、S48により個人情報主からの返信があったと判定されて制御がS49に進み、返信されてきた暗号化共通鍵であるEPK(K1)を自身の秘密鍵SKで復号化する演算、すなわち、DSK(EPK(K1))を行ってK1を算出する。次に、S50により、個人情報主から返信された電子IDと署名を認定事業者17のサーバ18へ送信する処理が行われる。それを受けた認定事業者17のサーバ18は、送信されてきた署名を確認した上で、受信した電子IDに基づいて個人情報DB29(図2(B)参照)を検索し、受信した電子IDに対応付けて記憶している暗号化個人情報EK1(個人情報)を読出して返信する。
If there is a reply, it is determined in S48 that there has been a reply from the personal information owner, and the control proceeds to S49, where the returned encryption common key E PK (K1) is used as the own private key SK. K1 is calculated by performing the decoding operation, that is, D SK (E PK (K1)). Next, in S50, a process of transmitting the electronic ID and signature returned from the personal information owner to the
その返信を受信すればS51によりYESと判定されて制御がS52へ進み、その返信された暗号化個人情報であるEK1(個人情報)をS49で算出されたK1により復号化する演算、すなわち、DK1(EK1(個人情報))を行って平文の個人情報を得る。その個人情報をS53により記憶する。その後S54に進み、その個人情報の提供契約をトランザクションとしてブロックチェーンに記録するための処理がなされる。 If the reply is received, it is determined as YES in S51 and the control proceeds to S52, where an operation is performed to decrypt the returned encrypted personal information E K1 (personal information) using K1 calculated in S49. Execute D K1 (E K1 (personal information)) to obtain plaintext personal information. The personal information is stored in S53. Thereafter, the process proceeds to S54, where processing is performed to record the personal information provision contract as a transaction on the blockchain.
次に、パブリックチェーンのユーザ端末との間でPC資源(計算資源)の貸与契約が成立すれば(S15でYES)、S55によりYESと判定されて制御がS58へ進み、PC資源(計算資源)の借用処理が行われる。その後制御がS54へ移行し、その貸借契約をトランザクションとしてブロックチェーンに記録するための処理がなされる。パブリックチェーンのユーザ端末との間で発注契約が成立すれば(S17でYES)、S56により発注契約が成立したと判定されて制御がS59へ進み、その発注に対する受注を記憶する処理が行われる。その後制御がS54へ移行し、その受注契約をトランザクションとしてブロックチェーンに記録するための処理がなされる。 Next, if a loan contract for PC resources (computing resources) is established with the user terminal of the public chain (YES in S15), YES is determined in S55 and control proceeds to S58, in which the PC resources (computing resources) are The borrowing process is performed. Control then moves to S54, where processing is performed to record the loan contract as a transaction on the blockchain. If an order contract is established with the user terminal of the public chain (YES in S17), it is determined in S56 that the order contract has been established, and the control proceeds to S59, where a process is performed to store the received order for the order. Control then moves to S54, where processing is performed to record the order contract as a transaction on the blockchain.
パブリックチェーンのユーザ端末との間で売買契約が成立すれば(S15でYES)、S57によりPC資源(計算資源)の貸与契約が成立したと判定されて制御がS60へ進み、販売対象を提供するための処理が行われる。その後制御がS54へ移行し、その売買契約をトランザクションとしてブロックチェーンに記録するための処理がなされる。なお、以上説明したスマートコントラクト処理において、スマートコントラクトに基づいたプライベートチェーンユーザ端末16での判断(例えば、S42、S46、S55、S56、S57)のみに基づいて行為(例えば、S42、S47、S58、S56、S60)を執行するのではなく、当該スマートコントラクトの所有者の同意を得た上で行為を執行するようにしてもよい。この所有者の同意は、以降記載しているスマートコントラクトによる契約の実行に際しても行なうようにしてもよい。 If a sales contract is established with the user terminal of the public chain (YES in S15), it is determined in S57 that a loan contract for PC resources (computing resources) has been established, and control proceeds to S60 to provide the object for sale. Processing is performed for this purpose. Control then moves to S54, where processing is performed to record the sales contract as a transaction on the blockchain. In addition, in the smart contract processing described above, actions (for example, S42, S47, S58, Instead of executing steps S56 and S60), the action may be executed after obtaining the consent of the owner of the smart contract. This owner's consent may also be obtained when executing a contract using the smart contract described below.
次に、図7(B)に基づいて、S31に示された機械学習処理のサブルーチンプログラムのフローチャートを説明する。S63により、個人情報主を特定できない形で記憶している膨大な個人情報を学習用データにする処理が行われる。この機械学習に採用されている学習アルゴリズムとしては、例えば、教師あり学習としての回帰や識別、教師なし学習としてのモデル推定やデータマイニング、中間的手法としての強化学習や深層学習等、種々のものが用意されている。 Next, a flowchart of the subroutine program of the machine learning process shown in S31 will be explained based on FIG. 7(B). In S63, a process is performed in which a huge amount of personal information stored in a form in which the owner of the personal information cannot be identified is converted into learning data. There are various learning algorithms used in this machine learning, such as regression and discrimination as supervised learning, model estimation and data mining as unsupervised learning, and reinforcement learning and deep learning as intermediate methods. is available.
次に、S64により、借用中のPC資源(計算資源)を利用して学習用データによる機械学習を行う。例えば、教師あり学習としての回帰の場合は、入力情報(ベクトルx)と正解情報yとからなる大量のデータセットを訓練データ(学習用データ)にする。教師あり学習の場合、入力xを正解yに写像する関数ci(x)(ci:x→y)を学習するものであるため、学習済みモデルは関数ciを含むものとなる。なお、機械学習手段34が行う機械学習は、教師あり学習に限定されるものではなく、モデル推定やパターンマイニング(データマイニング)等の教師なし学習、教師あり学習と教師なし学習との中間的手法である半教師あり学習や強化学習や深層学習等、どのようなものであってもよい。 Next, in S64, machine learning is performed using learning data using the borrowed PC resources (computing resources). For example, in the case of regression as supervised learning, a large amount of data set consisting of input information (vector x) and correct answer information y is used as training data (learning data). In the case of supervised learning, the function ci(x) (ci:x→y) that maps the input x to the correct answer y is learned, so the learned model includes the function ci. Note that the machine learning performed by the machine learning means 34 is not limited to supervised learning, and may include unsupervised learning such as model estimation and pattern mining (data mining), and intermediate methods between supervised learning and unsupervised learning. It can be anything, such as semi-supervised learning, reinforcement learning, or deep learning.
S64による機械学習によって一般的学習済みモデルが生成され、それを記憶する(S65)。この一般的学習済みモデルは、多数のユーザの個人情報であって個人情報主を特定できない形で記憶している膨大な個人情報を学習用データとしたモデルであり、多数のユーザに広く適用できる平均的な学習済みモデルである。 A general learned model is generated by machine learning in S64, and is stored (S65). This general trained model is a model that uses as training data a huge amount of personal information that is stored in a form that cannot identify the owner of the personal information of many users, and can be widely applied to a large number of users. This is an average trained model.
次に、S66により受注記憶があるか否か判定され、ない場合にはリターンするが、ある場合にはS67により、人工知能の受注か否か判定される。人工知能の受注でない場合にはリターンするが、人工知能の受注である場合には、S68により、発注者のアドレス宛てに個人情報を要求する処理がなされる。発注者から個人情報の返信があればS69によりYESと判定されてS70に進む。S70では、返信された個人情報に基づいて一般的学習済みモデルをパーソナライズしてパーソナライズド学習済みモデルを生成する処理がなされる。この一般的学習済みモデルをパーソナライズしてパーソナライズド学習済みモデルを生成する処理については、特許第6432859号公報に記載されている。パーソナライズに必要な個人情報は、ブロックチェーンを利用して収集されるため、ブロックチェーンの匿名性を担保して収集されることにより、プライバシーの問題を極力回避できる利点がある。次に、S71により、発注者のアドレス宛てにパーソナライズド学習済みモデルが送信される。 Next, it is determined in S66 whether or not there is an order received, and if there is not, the process returns, but if there is, it is determined in S67 whether or not the order is received for artificial intelligence. If the order is not for artificial intelligence, the process returns; however, if the order is for artificial intelligence, a process is performed in which personal information is requested from the orderer's address in step S68. If there is a reply with personal information from the orderer, a YES determination is made in S69 and the process proceeds to S70. In S70, a process is performed to personalize the general trained model based on the returned personal information to generate a personalized trained model. The process of personalizing this general trained model to generate a personalized trained model is described in Japanese Patent No. 6432859. The personal information necessary for personalization is collected using blockchain, which has the advantage of avoiding privacy issues as much as possible by ensuring the anonymity of blockchain. Next, in S71, the personalized learned model is sent to the address of the orderer.
次に、図8に基づいて、S32に示されたAIスマートコントラクト生成処理のサブルーチンプログラムのフローチャートを説明する。S80により、個人情報主を特定できない形で記憶している膨大な個人情報の中から契約(法律行為)に関する個人情報を抽出して学習用データにする処理がなされる。次に、S81により、借用中のPC資源(計算資源)を利用して学習用データによる機械学習が行われる。S80及びS81の処理は、前述のS63及びS64で説明したものと同様であり、ここでは説明の繰り返しを省略する。 Next, a flowchart of the subroutine program of the AI smart contract generation process shown in S32 will be explained based on FIG. 8. In S80, personal information related to a contract (legal act) is extracted from a large amount of personal information stored in a form that does not allow identification of the owner of the personal information, and is converted into learning data. Next, in S81, machine learning is performed using learning data using borrowed PC resources (computing resources). The processes in S80 and S81 are the same as those described in S63 and S64 above, and will not be repeated here.
次に、S82により、一般的AIスマートコントラクトの学習済みモデルを生成して記憶する処理が行われる。次に、S83により、シミュレーション学習処理が実行される。このシミュレーション学習処理は、本来多数の人間同士が行っている契約の検証、条件確認、執行、実行、交渉等の法律行為を、多数のAIスマートコントラクト群に肩代わりさせてコンピュータ内で仮想的に実行(シミュレーション)させ、各AIスマートコントラクトに対し成果に応じた報酬を与えて強化学習を行うものである。現実世界での強化学習ではなくコンピュータ内でのシミュレーションによる強化学習のため、短時間に膨大な強化学習が可能となる利点がある。強化学習とは、ある環境の状態に置かれたエージェントが、行動を選択したときに与えられる報酬をもとに、初期状態からゴールまでの累積報酬を最大化するような方策を獲得する仕組みのことである。強化学習ではAIの一種であるソフトウェアエージェント(以下「エージェント」という)と環境が相互作用することで学習を進めていく。ここにエージェントとはAIの一種であり、ユーザやソフトウェアなどと通信しながら自らがある程度の判断能力を持って自律的にふるまい永続的に活動するソフトウェアのことである。エージェントが環境に対して或る行為aを行うことによりその環境の状態sが変化し或る目的状態に達することにより報酬rがエージェントに与えられる。エージェントは、この報酬rを最大化することを目的として状態sを入力として行為aを出力する関数を学習する。 Next, in S82, a process of generating and storing a trained model of a general AI smart contract is performed. Next, in S83, simulation learning processing is executed. This simulation learning process uses a large group of AI smart contracts to perform legal acts such as contract verification, condition confirmation, enforcement, implementation, and negotiation, which are normally performed by many humans, virtually within a computer. (simulation) and performs reinforcement learning by rewarding each AI smart contract according to its performance. Since reinforcement learning is performed through computer simulation rather than reinforcement learning in the real world, it has the advantage of being able to perform a huge amount of reinforcement learning in a short period of time. Reinforcement learning is a mechanism in which an agent placed in a certain environmental state acquires a policy that maximizes the cumulative reward from the initial state to the goal, based on the reward given when an action is selected. That's true. In reinforcement learning, learning progresses through the interaction between a software agent (hereinafter referred to as an ``agent''), which is a type of AI, and the environment. An agent is a type of AI, and refers to software that behaves autonomously and permanently with a certain degree of decision-making ability while communicating with users and software. When an agent performs a certain action a on the environment, the state s of the environment changes and a reward r is given to the agent when a certain target state is reached. The agent learns a function that inputs the state s and outputs the action a in order to maximize the reward r.
強化学習は次の単純なステップを繰り返すことで時間が進行していく。
1 エージェントは環境から受け取った観測o(あるいは直接、環境の状態s)を受け取り、方策πに基いて環境に行為aを返す。
2 環境はエージェントから受け取った行為aと現在の状態sに基いて、次の状態s′に変化し、その遷移に基いて次の観測o′と、報酬rと呼ばれる直前の行動の良し悪しを示す1つの数(スカラー量)をエージェントに返す。
3 時間の進行:t←t+1
ここで←は代入操作を表す。
強化学習として、例えば、アルファゼロ型強化学習アルゴリズムを用いてもよい。このアルファゼロ型強化学習アルゴリズムは、DQN(Deep Q-Network)などのアルゴリズムとことなり、探索にモンテカルロ木探索(Monte Carlo tree search,MCTS)を用い、価値(Value)と方策(Policy)をすべてニューラルネットワークに予測させ、木探索によるセルフプレイで得られた経験のみで予測を修正する構成になっている。従来のアルファ碁に比べ、価値を予測するバリューネットワークと方策を予測するポリシーネットワークが1つのニューラルネットワークに統合され、マルチタスク学習により予測精度の向上が図られている。また、ニューラルネットワークの性能向上により、木探索でのプロセッサレイアウト(報酬を貰うまで探索木を伸ばす)処理が不要となり、より高速に探索を行える。さらに、進化計算(evolutionary computation)、遺伝的アルゴリズム(genetic algorithm)、敵対的生成ネットワーク(Generative adversarial networks)を用いるようにしてもよい。
Reinforcement learning progresses over time by repeating the following simple steps.
1. The agent receives the observation o (or directly the state of the environment s) from the environment and returns an action a to the environment based on the policy π.
2 The environment changes to the next state s′ based on the action a received from the agent and the current state s, and based on that transition, the next observation o′ and the goodness or badness of the previous action, called reward r, are calculated. Returns a single number (a scalar quantity) to the agent.
3 Progress of time: t←
Here, ← represents an assignment operation.
For example, an alpha zero type reinforcement learning algorithm may be used as the reinforcement learning. This alpha-zero reinforcement learning algorithm differs from algorithms such as DQN (Deep Q-Network) in that it uses Monte Carlo tree search (MCTS) for searching, and searches for all values and policies. The system uses a neural network to make predictions and corrects the predictions based solely on the experience gained through self-play through tree search. Compared to the conventional AlphaGo, the value network that predicts values and the policy network that predicts policies are integrated into one neural network, and the prediction accuracy is improved through multi-task learning. Additionally, improved performance of neural networks eliminates the need for processor layout processing (extending the search tree until a reward is obtained) during tree search, allowing faster searches. Furthermore, evolutionary computation, genetic algorithms, and generative adversarial networks may be used.
次にS84により、AIスマートコントラクトの受注記憶があるか否か判定され、ない場合にはリターンする。前述のS59により受注が記憶されている場合にはS84によりYESと判定されて制御がS85へ進み、記憶されている受注がシミュレーション学習済みAIスマートコントラクトの受注であるか否か判定される。シミュレーション学習済みAIスマートコントラクトの受注でない場合には、パーソナライズドAIスマートコントラクト学習済みモデルの受注であり、その場合には制御がS86へ進み、発注者のアドレス宛てに契約(法律行為)に関する個人情報を要求する処理が行われる。発注者から個人情報の返信があった段階でS87によりYESと判定されて制御がS88へ進む。 Next, in S84, it is determined whether or not there is an order memory of the AI smart contract, and if there is not, the process returns. If the order is stored in S59 described above, YES is determined in S84, and control proceeds to S85, where it is determined whether the stored order is an order for a simulation-trained AI smart contract. If the order is not for a simulation-trained AI smart contract, the order is for a personalized AI smart contract trained model, and in that case, control proceeds to S86, and personal information related to the contract (legal act) is sent to the orderer's address. Processing to request is performed. When personal information is returned from the orderer, YES is determined in S87, and control proceeds to S88.
S88では、返信された契約(法律行為)に関する個人情報に基づいて一般的AIスマートコントラクトの学習済みモデルをパーソナライズしてパーソナライズドAIスマートコントラクト学習済みモデルを生成する処理が行われる。この一般的AIスマートコントラクトの学習済みモデルをパーソナライズしてパーソナライズドAIスマートコントラクト学習済みモデルを生成する処理については、特許第6432859号公報に記載されている。そのパーソナライズド学習済みモデルがS89により発注者のアドレスへ送信される。 In S88, a process is performed to personalize the general AI smart contract trained model based on the returned personal information regarding the contract (legal act) to generate a personalized AI smart contract trained model. The process of personalizing this general AI smart contract trained model to generate a personalized AI smart contract trained model is described in Japanese Patent No. 6432859. The personalized trained model is sent to the orderer's address in S89.
一方、シミュレーション学習済みAIスマートコントラクトの受注の場合にはS85によりYESと判定されて制御がS90へ進み、シミュレーション学習済みAIスマートコントラクトが発注者のアドレスへ送信される。 On the other hand, in the case of receiving an order for a simulation-trained AI smart contract, YES is determined in S85, control proceeds to S90, and the simulation-trained AI smart contract is sent to the orderer's address.
次に、図9(A)に基づいて、S83に示されたシミュレーション学習処理のサブルーチンプログラムのフローチャートを説明する。S334により、シミュレーションの入力があったか否か判定され、ない場合にはリターンする。このシミュレーションは、プライベートチェーン2のユーザ端末によって入力されるものであり、例えば、政府が採用しようとしている政策や法律(例えば、消費増税に伴う軽減税率、改正出入国管理法、イギリスのEU(European Union)からの離脱、ベーシックインカムの部分的または全面的採用、日本国憲法9条の改正等)が採用されたと仮定した場合における、株取引や先物取引等の投資市場での取引シミュレーション、会社経営シミュレーション、または消費行動シミュレーション等である。さらには、新商品(金融商品や生命保険を含む)や新サービスの各種メディアによるプロモーションのシミュレーション等でもよい。S334によりシミュレーションの入力があったと判定されれば制御がS335に進み、AIスマートコントラクト群生成処理が実行される。
Next, a flowchart of the subroutine program of the simulation learning process shown in S83 will be explained based on FIG. 9(A). In S334, it is determined whether or not there is a simulation input, and if there is no input, the process returns. This simulation is inputted by the user terminal of
このAIスマートコントラクト群生成処理のサブルーチンプログラムのフローチャートを図9(B)に基づいて説明する。S344により、借用中のPC資源(計算資源)を利用して、入力されたシミュレーションにマッチするペルソナ群を設定する処理が行われる。ペルソナとは、一般的には、企業や商品やサービスの典型的なターゲットとなる人物像を仮想の人物として定義したものである。本実施形態では、ペルソナとは、シミュレーション内容がターゲットとする典型的な人物像を仮想の人物として定義したものである。例えば、前述の消費増税に伴う軽減税率下での消費行動シミュレーションの場合には、一般消費者に相当するペルソナであって、性別、年代別、地域別、年収別等にグルーピングした各グループ毎にペルソナとして設定する。 A flowchart of a subroutine program for this AI smart contract group generation process will be explained based on FIG. 9(B). In S344, a process is performed to set a group of personas that match the input simulation using borrowed PC resources (computing resources). A persona is generally defined as a virtual person who is a typical target for a company, product, or service. In this embodiment, a persona is defined as a typical human image targeted by the simulation content as a virtual person. For example, in the case of a consumption behavior simulation under the reduced tax rate associated with the consumption tax increase mentioned above, personas corresponding to general consumers are used for each group grouped by gender, age, region, annual income, etc. Set as a persona.
設定されるペルソナの数は、グループに属するユーザ数に比例した数にする。例えば、一般消費者の年代別人口分布が10代5%、20代5%、30代10%、40代10%、50代20%、60代20%、70代20%、80代5%、90代5%、の場合に、10代を代表するペルソナ数が1、20代を代表するペルソナ数が1、30代を代表するペルソナ数が2、40代を代表するペルソナ数が2、50代を代表するペルソナ数が4、60代を代表するペルソナ数が4、70代を代表するペルソナ数が4、80代を代表するペルソナ数が1、90代を代表するペルソナ数が1と、設定する。 The number of personas to be set should be proportional to the number of users belonging to the group. For example, the population distribution of general consumers by age group is 5% in their teens, 5% in their 20s, 10% in their 30s, 10% in their 40s, 20% in their 50s, 20% in their 60s, 20% in their 70s, and 5% in their 80s. , 5% are in their 90s, then the number of personas representing teenagers is 1, the number of personas representing people in their 20s is 1, the number of personas representing people in their 30s is 2, the number of personas representing people in their 40s is 2, There are 4 personas representing people in their 50s, 4 personas representing people in their 60s, 4 personas representing people in their 70s, 1 persona representing people in their 80s, and 1 persona representing people in their 90s. , set.
次に、S345により、借用中のPC資源(計算資源)を利用して、各ペルソナに属するユーザ群を選定する処理が行われる。次に、S346により、ペルソナ毎に属するユーザ群をグループピングしてグループ毎にユーザ群の取引データをブロックチェーンから収集する処理が行われる。例えば、前述の消費増税に伴う軽減税率下での消費行動シミュレーションの場合には、ユーザ群を、性別、年代別、地域別、年収別等にグルーピングし、そのグループ毎にユーザ群の取引データをブロックチェーンから収集する。このS345、S346におけるユーザ群の選定及びユーザ群の取引データの収集は、例えば、インターネットアンケート調査会社が保有するアンケート回答用モニター会員のデータベースを利用するのが有用である。インターネットアンケート調査会社では、性別,年代別,居住地,未婚,既婚,職業,世帯年収等の属性に対応付けてアンケート回答用モニター会員の連絡先(メールアドレス等)をデータベースに記憶しており、その属性別のモニター会員データを利用する。後述するS145及びS146、S586及びS587、S622及びS623等においても同様に、インターネットアンケート調査会社が保有するアンケート回答用モニター会員のデータベースを利用するのが有用である。次に、S347により、借用中のPC資源(計算資源)を利用して、取引データを学習データとして機械学習を行ってペルソナ毎に学習済みのAIスマートコントラクトを生成する処理が行われる。このAIスマートコントラクトは、対応するペルソナの設定数と同じ数だけ生成される。これにより、シミュレーションを実行するための環境が整い、その環境内でシミュレーションを行う。 Next, in S345, a process of selecting a group of users belonging to each persona is performed using the borrowed PC resources (computing resources). Next, in S346, a process is performed to group the users belonging to each persona and collect the transaction data of the users for each group from the blockchain. For example, in the case of a consumption behavior simulation under the reduced tax rate associated with the consumption tax increase mentioned above, users are grouped by gender, age, region, annual income, etc., and the transaction data of the user group is analyzed for each group. Collect from blockchain. For selecting the user group and collecting the transaction data of the user group in S345 and S346, it is useful to use, for example, a database of survey response monitor members held by an Internet survey research company. Internet survey research companies store the contact information (email addresses, etc.) of survey response monitor members in a database in association with attributes such as gender, age group, place of residence, unmarried, married, occupation, annual household income, etc. Use monitor member data by attribute. Similarly, in S145 and S146, S586 and S587, S622 and S623, etc., which will be described later, it is useful to use a database of survey response monitor members held by an Internet survey company. Next, in S347, processing is performed to perform machine learning using the transaction data as learning data using the borrowed PC resources (computing resources) to generate a learned AI smart contract for each persona. This AI smart contract is generated in the same number as the number of corresponding persona settings. This prepares the environment for executing the simulation, and the simulation is performed within that environment.
図9(A)に戻り、上記のようにして生成された各AIスマートコントラクトが行為aに従った契約(法律行為)を執行する(S336)。この「行為a」とは、S338による強化学習の結果としての行為aである。次に、S337により、各AIスマートコントラクト同士で成立した契約をブロックチェーンに記録する処理が行われる。 Returning to FIG. 9A, each AI smart contract generated as described above executes the contract (legal act) according to act a (S336). This "action a" is action a as a result of reinforcement learning in S338. Next, in S337, a process is performed to record the contract established between each AI smart contract on the blockchain.
次に、S338により、借用中のPC資源(計算資源)を利用して、成立した契約内容に基づいて報酬rを算出し、TD学習により最適政策π*に従った行為aを求める処理が行われる。例えば、前述の消費増税に伴う軽減税率下での消費行動シミュレーションの場合には、(増税前の出費額-増税後の出費額)が小さい値ほど高い報酬rを与える。そして、S339によりシミュレーションが終了したか否か判定され、未だ終了していない場合には制御がS336へ戻り、S337→S338→S339→S336を繰り返し巡回して強化学習を進行させる。シミュレーションが終了した段階でS339によりYESと判定されて制御がS340へ進み、1番高い報酬rを得たAIスマートコントラクトを記憶した後リターンする。なお、1番高い報酬rを得たAIスマートコントラクトに限定されるものだはなく、例えば上位5%のAIスマートコントラクトを記憶してもよい。また、S337によるブロックチェーンへの記録を必ずしも行わなくてもよく、その場合には、前述した連携タイプにおいては、S335、S336、S340及びS347における「AIスマートコントラクト」を「連携用AI」と変更する。つまり、コンピュータ内でのシミュレーションの場合、現実世界での契約(法律行為)の執行を伴わないため、ブロックチェーンへの記録を行わない場合には、わざわざスマートコントラクトを用いる必要がなく、各連携用AI同士が行為aを実行して強化学習を行えば事足りるためである。強化学習を終了し実際の引用段階では、学習済み連携用AIがスマートコントラクトと連携して契約の執行を行ってブロックチェーンに記録するようにすればよい。 Next, in S338, a process is performed in which the borrowed PC resources (computing resources) are used to calculate the reward r based on the concluded contract details, and TD learning is performed to obtain the action a according to the optimal policy π * . be exposed. For example, in the case of a consumption behavior simulation under the reduced tax rate due to the above-mentioned consumption tax increase, the smaller the value of (expenses before tax increase - expense after tax increase), the higher the reward r is given. Then, it is determined in S339 whether or not the simulation has ended, and if it has not ended yet, the control returns to S336 and repeats S337→S338→S339→S336 to proceed with reinforcement learning. At the stage where the simulation is completed, it is determined as YES in S339, and the control proceeds to S340, where the AI smart contract that obtained the highest reward r is stored, and then the process returns. It should be noted that the storage is not limited to the AI smart contract that obtained the highest reward r, and for example, the top 5% of AI smart contracts may be stored. In addition, it is not necessary to record on the blockchain in S337, and in that case, in the above-mentioned cooperation type, "AI smart contract" in S335, S336, S340, and S347 is changed to "AI for collaboration". do. In other words, in the case of a simulation in a computer, it does not involve the execution of a contract (legal act) in the real world, so if there is no recording on the blockchain, there is no need to use a smart contract, and each collaboration This is because it is sufficient for AIs to perform reinforcement learning by performing action a. When the reinforcement learning is finished and the actual quoting stage occurs, the trained collaboration AI can cooperate with the smart contract to execute the contract and record it on the blockchain.
次に、図10に基づいて、S33に示されたスマートコントラクト信託請負い処理のサブルーチンプログラムのフローチャートを説明する。S94により、スマートコントラクト信託の受注記憶があるか否か判定され、受注記憶がないと判定された場合にはリターンする。前述のS59により記憶されている受注記憶の内容を確認してスマートコントラクト信託の受注である場合にはS94によりYESと判定されて制御がS95へ進む。S95では、発注者のアドレス宛てに契約(法律行為)に関する個人情報を要求し、発注者から個人情報が返信された段階でS96によりYESと判定されて制御がS97へ進む。 Next, based on FIG. 10, a flowchart of the subroutine program of the smart contract trust acceptance process shown in S33 will be explained. In S94, it is determined whether or not there is an order memory for the smart contract trust, and if it is determined that there is no order memory, the process returns. The content of the order stored in S59 is checked, and if the order is for a smart contract trust, YES is determined in S94, and control proceeds to S95. In S95, personal information regarding the contract (legal act) is requested from the orderer's address, and when the personal information is returned from the orderer, a YES determination is made in S96 and control proceeds to S97.
S97では、返信された契約(法律行為)に関する個人情報に基づいて一般的AIスマートコントラクトの学習済みモデルをパーソナライズしてパーソナライズドAIスマートコントラクト学習済みモデルを生成する処理が行われる。この一般的AIスマートコントラクトの学習済みモデルをパーソナライズしてパーソナライズドAIスマートコントラクト学習済みモデルを生成する処理については、特許第6432859号公報に記載されている。 In S97, a process is performed to personalize the general AI smart contract trained model based on the returned personal information regarding the contract (legal act) to generate a personalized AI smart contract trained model. The process of personalizing this general AI smart contract trained model to generate a personalized AI smart contract trained model is described in Japanese Patent No. 6432859.
次に、S98により、発注者のアドレスとパーソナライズドAIスマートコントラクト学習済みモデルとを対応付けて記憶する処理が行われる。この記憶したパーソナライズドAIスマートコントラクト学習済みモデルを用いて発注者に対し信託請負い処理を行う(S99)。次に、S100により、パーソナライズドAIスマートコントラクト学習済みモデルの強化学習処理が実行される。 Next, in S98, processing is performed to associate and store the orderer's address and the personalized AI smart contract trained model. Using this stored personalized AI smart contract trained model, a trust contract process is performed for the orderer (S99). Next, in S100, reinforcement learning processing of the personalized AI smart contract trained model is executed.
図11(A)に基づいて、S100に示されたパーソナライズドAIスマートコントラクト学習済みモデルの強化学習処理のサブルーチンプログラムのフローチャートを説明する。強化学習において、状態stで行為atを行なうときの価値をQ(st,at)とした場合のQ値を推定する方法として、環境をモデル化する知識、すなわち、状態遷移確率と報酬の確率分布が与えられている場合はモデルベースの手法を用いればよいが、環境モデルが未知の場合、TD(Temporal Difference)学習を用いる。先ず、環境の探索が必要なため、ε-greedy法を用いる。探索の初期はいろいろな行為を試し、落ち着いてくると最適な行為を多く選ぶように、温度の概念を導入する。温度をTとして、次の式で表される確率に従って行為を選ぶ。 A flowchart of the subroutine program of the reinforcement learning process of the personalized AI smart contract trained model shown in S100 will be explained based on FIG. 11(A). In reinforcement learning, knowledge of modeling the environment, i.e. state transition probability and reward probability distribution, is used to estimate the Q value when the value of performing an action at in state st is Q(st,at). If the environment model is given, a model-based method may be used, but if the environment model is unknown, TD (Temporal Difference) learning is used. First, since we need to search the environment, we use the ε-greedy method. Introduce the concept of temperature so that at the beginning of the search, you try a variety of actions, and as things settle down, you choose as many optimal actions as possible. Let temperature be T, and choose an action according to the probability expressed by the following formula.
P(a|s)={exp(Q(s,a)/T)}/{Σexp(Q(s,b)/T} (なおΣの下にb∈Aが記載されており、上記式ではその記載を省略している)
ここに、aは行為、Q(s,a)は状態sで行為aを行なうときの価値、
P(a|s)={exp(Q(s,a)/T)}/{Σexp(Q(s,b)/T} (note that b∈A is written under Σ, and the above formula (The description is omitted here.)
Here, a is the action, Q(s,a) is the value when performing action a in state s,
Tをアニーリング(焼き鈍し)における温度と呼び、高ければ行為を等確率に近い確率で選択し、低ければ最適なものに偏らせる。学習が進むにつれて、Tの値を小さくすることで、学習結果が安定する。このようなQ値の推定方法は、前述した強化学習及び後述する強化学習全てに適用してもよい。また、強化学習等の機械学習を行うコンピュータとしては、ノイマン型の一般的なコンピュータを用いているが、ニューラル・ネット・プロセッサー(NNP)を用いてもよい。NNPのチップ上には本物のニューロンをモデルにした「人工ニューロン」が多数搭載されており、各ニューロンはネットワークでそれぞれ連携し合う。また、「量子アニーリング方式」を採用した量子コンピュータを用いてもよい。特に、「量子アニーリング方式」を採用した量子コンピュータを用いることにより、機械学習における最適化計算の所要時間を大幅に短縮できる。 T is called the temperature during annealing; if it is high, actions are selected with a probability close to equal probability, and if it is low, it is biased toward the optimal one. As learning progresses, decreasing the value of T stabilizes the learning results. Such a Q-value estimation method may be applied to both the reinforcement learning described above and the reinforcement learning described below. Further, although a general Neumann type computer is used as a computer for performing machine learning such as reinforcement learning, a neural net processor (NNP) may also be used. The NNP chip is equipped with many "artificial neurons" modeled after real neurons, and each neuron works together in a network. Alternatively, a quantum computer that employs a "quantum annealing method" may be used. In particular, by using a quantum computer that employs the "quantum annealing method," the time required for optimization calculations in machine learning can be significantly reduced.
S105により、パーソナライズドAIスマートコントラクト学習済みモデルによる信託請負い処理を行った結果に対する評価を信託者から受信する。次に、S106により、受信した評価に基づいて報酬rを算出する処理が行われる。次に、S107により、借用中のPC資源(計算資源)を利用して、TD学習により最適政策π*に従った行為aを求める処理が行われる。次に、S108により、行為aに従ったコントラクトを信託者の代理として実行する。その結果に対する評価を信託者から受信することにより(S105)、S106~S108の処理が実行される。 In S105, an evaluation of the result of the trust contract processing using the trained model of the personalized AI smart contract is received from the trustor. Next, in S106, a process of calculating the reward r based on the received evaluation is performed. Next, in S107, a process is performed to obtain an action a according to the optimal policy π * by TD learning using the borrowed PC resources (computing resources). Next, in S108, the contract according to act a is executed on behalf of the trustor. By receiving an evaluation of the results from the trustor (S105), the processes of S106 to S108 are executed.
次に、図11(B)に基づいて、コンソーシアムチェーン3のノードを構成するユーザ端末のメインルーチンプログラムのフローチャートを説明する。S114によりIoTセンサデータ集計処理が実行され、S115によりスマートコントラクト処理が実行され、S116によりシミュレーション処理が実行され、S117によりブロックチェーン処理が実行される。ブロックチェーン処理の具体的内容は、図2(A)に基づいて前述したとおりである。
Next, a flowchart of a main routine program of a user terminal forming a node of
次に、図12(A)に基づいて、S114に示されたIoTセンサデータ集計処理のサブルーチンプログラムのフローチャートを説明する。S120により、IoTセンサデータを種類毎、期間毎、地域毎等に分類してグルーピングする処理が行われる。この処理は、IoTセンサデータばかりでなくワイヤレスセンサネットワークからのデータも含めて処理される。次に、S121により、グルーピングされた各データの価値を決定する処理が行われる。この決定された価値に応じて、データの提供に対する対価(トークンの量)が対応するデータ毎にスマートコントラクトとしてコード化される。次に、S122により、グルーピングされた各データをブロックチェーンに記録する処理が行われる。 Next, a flowchart of the subroutine program of the IoT sensor data aggregation process shown in S114 will be explained based on FIG. 12(A). In S120, a process of classifying and grouping IoT sensor data by type, period, region, etc. is performed. This process includes not only IoT sensor data but also data from wireless sensor networks. Next, in S121, processing is performed to determine the value of each grouped data. According to this determined value, the consideration (amount of tokens) for providing data is coded as a smart contract for each corresponding data. Next, in S122, a process of recording each grouped data on the blockchain is performed.
次に、図13(B)に基づいて、S115に示されたスマートコントラクト処理のサブルーチンプログラムのフローチャートを説明する。S150により、データの入手希望者との売買契約が成立したか否か判定される。この判定は、スマートコントラクトとしてコード化されたデータの提供に対する対価(トークンの量)について互いの条件が合致することにより、自動的にS150によりYESと判定される。S150によりNOと判定された場合は制御がS151へ進み、PC資源の貸与契約が成立したか否か判定され、成立していない場合にはリターンする。 Next, a flowchart of the smart contract processing subroutine program shown in S115 will be explained based on FIG. 13(B). In S150, it is determined whether a sales contract has been concluded with the person who wishes to obtain the data. This determination is automatically determined to be YES in S150 when the mutual conditions regarding the compensation (amount of tokens) for providing data encoded as a smart contract match. If the determination in S150 is NO, control proceeds to S151, where it is determined whether a PC resource loan contract has been established, and if not, the process returns.
S150によりYESと判定された場合は制御がS152へ進み、入手希望者のアドレスにデータを送信し、その対価としてのトークンを取得する処理が行われる。その成立した契約がS153によりトランザクションとしてブロックチェーンに記録される。一方、PC資源(計算資源)の貸与契約が成立した場合には、制御がS154へ進み、PC資源(計算資源)の借用処理を行い、その契約がS153によりトランザクションとしてブロックチェーンに記録される。 If YES is determined in S150, control proceeds to S152, where data is transmitted to the address of the person who wishes to obtain it, and processing is performed to obtain a token as compensation. The established contract is recorded in the blockchain as a transaction in S153. On the other hand, if a loan contract for PC resources (computing resources) is established, the control proceeds to S154, where a PC resource (computing resource) borrowing process is performed, and the contract is recorded in the blockchain as a transaction at S153.
次に、図12(B)に基づいて、S116に示されたシミュレーション処理のサブルーチンプログラムのフローチャートを説明する。このシミュレーション処理は、本来多数の人間同士が行っている契約の検証、条件確認、執行、実行、交渉等の法律行為を、多数のAIスマートコントラクト群に肩代わりさせてコンピュータ内で仮想的に実行(シミュレーション)させ、或る条件下においてどのようなシミュレーション結果になるかを検証するものである。上記「或る条件下」の具体例としては、政府が採用しようとしている政策や法律(例えば、消費増税に伴う軽減税率、改正出入国管理法、イギリスのEU(European Union)からの離脱、ベーシックインカムの部分的または全面的採用、日本国憲法9条の改正等)、マーケティング関連の条件(例えば、新商品(金融商品や生命保険を含む)や新サービスの価格や対価の設定、各種メディアによるプロモーション効果等)、投資市場関連の条件(例えば、先物取引における気象条件、株式市場における金融引き締め政策等)等が、考えられる。
Next, a flowchart of the subroutine program of the simulation processing shown in S116 will be explained based on FIG. 12(B). This simulation process uses a large number of AI smart contracts to perform legal acts such as contract verification, condition confirmation, execution, execution, and negotiation, which are normally performed by many people, virtually within a computer ( (simulation) and verify what kind of simulation results will be obtained under certain conditions. Specific examples of the above-mentioned "under certain conditions" include policies and laws that the government is trying to adopt (e.g., reduced tax rates associated with a consumption tax increase, revised immigration control laws, the UK's withdrawal from the European Union (EU), basic income). partial or full adoption of
S134により、シミュレーションの依頼があったか否か判定され、ない場合にはリターンする。S134によりシミュレーションの依頼があったと判定されれば制御がS135に進み、AIスマートコントラクト群生成処理が実行される。 In S134, it is determined whether or not there is a request for simulation, and if there is no request, the process returns. If it is determined in S134 that there is a request for simulation, control proceeds to S135, and AI smart contract group generation processing is executed.
このAIスマートコントラクト群生成処理のサブルーチンプログラムのフローチャートを図13(A)に基づいて説明する。S144により、借用中のPC資源(計算資源)を利用して、依頼されたシミュレーションにマッチするペルソナ群を設定する処理が行われる。ペルソナとは、一般的には、企業や商品やサービスの典型的なターゲットとなる人物像を仮想の人物として定義したものである。本実施形態では、ペルソナとは、シミュレーション内容がターゲットとする典型的な人物像を仮想の人物として定義したものである。例えば、前述の消費増税に伴う軽減税率のシミュレーションの場合には、一般消費者に相当するペルソナであって、性別、年代別、地域別、年収別等にグルーピングした各グループ毎にペルソナとして設定する。 A flowchart of a subroutine program for this AI smart contract group generation process will be explained based on FIG. 13(A). In S144, a process is performed to set a group of personas that match the requested simulation using borrowed PC resources (computing resources). A persona is generally defined as a virtual person who is a typical target for a company, product, or service. In this embodiment, a persona is defined as a typical human image targeted by the simulation content as a virtual person. For example, in the case of simulating the reduced tax rate due to the consumption tax increase mentioned above, personas corresponding to general consumers are set as personas for each group grouped by gender, age, region, annual income, etc. .
設定されるペルソナの数は、グループに属するユーザ数に比例した数にする。例えば、一般大衆の年代別人口分布が10代5%、20代5%、30代10%、40代10%、50代20%、60代20%、70代20%、80代5%、90代5%、の場合に、10代を代表するペルソナ数が1、20代を代表するペルソナ数が1、30代を代表するペルソナ数が2、40代を代表するペルソナ数が2、50代を代表するペルソナ数が4、60代を代表するペルソナ数が4、70代を代表するペルソナ数が4、80代を代表するペルソナ数が1、90代を代表するペルソナ数が1と、設定する。 The number of personas to be set should be proportional to the number of users belonging to the group. For example, the population distribution of the general public by age is 5% in their teens, 5% in their 20s, 10% in their 30s, 10% in their 40s, 20% in their 50s, 20% in their 60s, 20% in their 70s, 5% in their 80s, If 5% are in their 90s, the number of personas representing teenagers is 1, the number of personas representing people in their 20s is 1, the number of personas representing people in their 30s is 2, the number of personas representing people in their 40s is 2, and the number of personas is 50. There are 4 personas representing people in their 20s, 4 personas representing people in their 60s, 4 personas representing people in their 70s, 1 persona representing people in their 80s, and 1 persona representing people in their 90s. Set.
次に、S145により、借用中のPC資源(計算資源)を利用して、各ペルソナに属するユーザ群を選定する処理が行われる。次に、S146により、ペルソナ毎に属するユーザ群をグループピングしてグループ毎にユーザ群の取引データをブロックチェーンから収集する処理が行われる。例えば、前述の消費増税に伴う軽減税率のシミュレーションの場合には、ユーザ群を、性別、年代別、地域別、年収別等にグルーピングし、そのグループ毎にユーザ群の取引データをブロックチェーンから収集する。次に、S147により、借用中のPC資源(計算資源)を利用して、取引データを学習データとして機械学習を行ってペルソナ毎に学習済みのAIスマートコントラクトを生成する処理が行われる。このAIスマートコントラクトは、対応するペルソナの設定数と同じ数だけ生成される。これにより、シミュレーションを実行するための環境が整い、その環境内でシミュレーションを行う。 Next, in S145, a process of selecting a group of users belonging to each persona is performed using the borrowed PC resources (computing resources). Next, in S146, a process is performed in which the user groups belonging to each persona are grouped and transaction data of the user group is collected from the blockchain for each group. For example, in the case of simulating the reduced tax rate due to the consumption tax increase mentioned above, users are grouped by gender, age, region, annual income, etc., and the transaction data of each group is collected from the blockchain. do. Next, in S147, processing is performed to perform machine learning using the transaction data as learning data using the borrowed PC resources (computing resources) to generate a learned AI smart contract for each persona. This AI smart contract is generated in the same number as the number of corresponding persona settings. This prepares the environment for executing the simulation, and the simulation is performed within that environment.
図12(B)に戻り、上記のようにして生成された各AIスマートコントラクトが行為aに従った契約(法律行為)を執行する(S136)。この「行為a」とは、S138による強化学習の結果としての行為aである。次に、S137により、各AIスマートコントラクト同士で成立した契約をブロックチェーンに記録する処理が行われる。さらに、シミュレーションの進行による状況の変遷状況をブロックチェーンに記録する。例えば、前述の消費増税に伴う軽減税率のシミュレーションの場合には、シミュレーションの進行に伴って内需や景気がどのように変化したかをブロックチェーンに記録する。 Returning to FIG. 12(B), each AI smart contract generated as described above executes the contract (legal act) according to act a (S136). This "action a" is action a as a result of reinforcement learning in S138. Next, in S137, a process is performed to record the contract established between each AI smart contract on the blockchain. Additionally, changes in the situation as the simulation progresses are recorded on the blockchain. For example, in the case of a simulation of the reduced tax rate due to the consumption tax increase mentioned above, how domestic demand and the economy have changed as the simulation progresses is recorded on the blockchain.
次に、S138により、借用中のPC資源(計算資源)を利用して、成立した契約内容に基づいて報酬rを算出し、TD学習により最適政策π*に従った行為aを求める処理が行われる。そして、S139によりシミュレーションが終了したか否か判定され、未だ終了していない場合には制御がS136へ戻り、S137→S138→S139→S136を繰り返し巡回して強化学習を進行させる。シミュレーションが終了した段階でS139によりYESと判定されて制御がS140へ進み、シミュレーション結果を導出する処理が行われた後にリターンする。 Next, in S138, a process is performed in which the borrowed PC resources (computing resources) are used to calculate the reward r based on the concluded contract details, and TD learning is performed to obtain the action a according to the optimal policy π * . be exposed. Then, it is determined in S139 whether or not the simulation has ended, and if it has not ended yet, the control returns to S136 and repeats S137→S138→S139→S136 to advance reinforcement learning. When the simulation is completed, a YES determination is made in S139, and the control proceeds to S140, where processing for deriving the simulation results is performed, and then the process returns.
シミュレーション結果を導出する処理の具体例としは、例えば、消費増税に伴う軽減税率の採用に伴う景気変動のシミュレーションの場合には、シミュレーションの結果景気動向指数の各項目がどのように変動したかを導出する。株式市場における金融引き締め政策に伴うシミュレーションの場合には、シミュレーションの結果株式市場がどのように変動したかを導出する。また、消費増税に伴う軽減税率の具体的態様(例えば、なにを軽減税率対象品目にするかや各軽減税率対象品目毎の軽減税率等)を複数態様に変動させながら最適な軽減税率の態様を決定するという、シミュレーション最適化の手法を採用してもよい。この場合、最適な軽減税率の態様として、(税収増加率(%)+景気動向指数としてのディフュージョン・インデックス(DI)/50)を期待値Eとし、その期待値Eを最大化するシミュレーション結果を得るようにする。シミュレーションにおけるコントロールパラメータ(軽減税率の態様)をθとし、シミュレーションの結果をY(θ)とし、maxE[Y(θ)]におけるθを求める。このようなシミュレーションを最適化する具体的手法として、例えば、メタヒューリスティックなアルゴリズムとして粒子群最適化法(Particle Swarm Optimization:PSO)、目的関数の解析的表現が困難な場合や目的関数の微分に関する情報を用いることが出来ない状況下で最適解を求めるDFO(derivative free optimization)等を用いる。なお、S137によるブロックチェーンへの記録を必ずしも行わなくてもよく、その場合には、前述した連携タイプにおいては、S135、S136及びS147における「AIスマートコントラクト」を「連携用AI」と変更する。つまり、コンピュータ内でのシミュレーションの場合、現実世界での契約(法律行為)の執行を伴わないため、ブロックチェーンへの記録を行わない場合には、わざわざスマートコントラクトを用いる必要がなく、各連携用AI同士が行為aを実行して強化学習を行えば事足りるためである。
[変形例]
A specific example of processing to derive simulation results is, for example, in the case of simulating economic fluctuations due to the adoption of a reduced tax rate due to a consumption tax increase, it is possible to calculate how each item of the economic trend index has changed as a result of the simulation. Derive. In the case of a simulation associated with a financial tightening policy in the stock market, how the stock market fluctuated as a result of the simulation is derived. In addition, we will vary the specific aspects of the reduced tax rate associated with the consumption tax increase (for example, what items are eligible for the reduced tax rate, the reduced tax rate for each item eligible for the reduced tax rate, etc.) to determine the optimal reduced tax rate form. A simulation optimization method may be used to determine the . In this case, as the optimal form of the reduced tax rate, the expected value E is (tax revenue increase rate (%) + diffusion index (DI) as an economic trend index / 50), and the simulation result that maximizes the expected value E is calculated. Try to get it. Let θ be the control parameter (aspect of reduced tax rate) in the simulation, let Y(θ) be the simulation result, and find θ at maxE[Y(θ)]. Specific methods for optimizing such simulations include, for example, Particle Swarm Optimization (PSO) as a metaheuristic algorithm, cases where it is difficult to express the objective function analytically, and information on the differentiation of the objective function. DFO (derivative free optimization) is used to find the optimal solution in situations where it is not possible to use . Note that it is not necessary to record on the blockchain in S137, and in that case, in the above-mentioned cooperation type, the "AI smart contract" in S135, S136, and S147 is changed to "AI for collaboration." In other words, in the case of a simulation in a computer, it does not involve the execution of a contract (legal act) in the real world, so if there is no recording on the blockchain, there is no need to use a smart contract, and each collaboration This is because it is sufficient for AIs to perform reinforcement learning by performing action a.
[Modified example]
(1) 認定事業者17は、ユーザの暗号化個人情報EK1(個人情報)を記憶しているが、それに代えて、暗号化個人情報であるEK1(個人情報)を直接ブロックチェーンに記録するようにしてもよい。
(1) The certified
(2) 図2の取引Cや取引Fのような個人情報以外の取引データも、個人情報と同様に鍵K1等で暗号化してブロックチェーンに記録してもよい。 (2) Transaction data other than personal information, such as transaction C and transaction F in FIG. 2, may also be encrypted with the key K1 or the like and recorded on the blockchain in the same way as personal information.
(3) 前述の説明では各ブロックチェーンネットワーク2、3、4のノード19の動作処理を示したが、プライベートチェーン2のノード19について示した動作処理を他のブロックチェーンネットワーク3、4のノード19で行なってもよく、コンソーシアムチェーン3のノード19について示した動作処理を他のブロックチェーンネットワーク2、4のノード19で行なってもよく、パブリックチェーン4のノード19について示した動作処理を他のブロックチェーンネットワーク2、3のノード19で行なってもよい。この変形例は、後述する実施態様においても同様に適用してもよい。
(3) In the above explanation, the operation processing of the
(4) 借用したPC資源(計算資源)を利用してブロックチェーンにおけるマイニング(記帳権の競争)を行なうようにしてもよい。その際、第1実施形態のように時間単価でPC資源(計算資源)を貸与するようにしてもよいが、マイニング(記帳権の競争)に成功したマイナーが得られる利益(トークン等)の何割かをPC資源(計算資源)の貸与者に分配(配当)するようにしてもよい。その配当割合(配当量)は、PC資源(計算資源)の貸与量(PCの貸与台数×貸与時間等)に比例するように制御する。 (4) Borrowed PC resources (computing resources) may be used to perform mining (competition for bookkeeping rights) in the blockchain. In this case, PC resources (computing resources) may be lent at an hourly rate as in the first embodiment, but what is the profit (tokens, etc.) that miners who succeed in mining (competition for bookkeeping rights) receive? The discount may be distributed (divided) to the lender of PC resources (computing resources). The dividend ratio (dividend amount) is controlled to be proportional to the loan amount of PC resources (computing resources) (number of PCs loaned x loan time, etc.).
(5) 前述したPC資源(計算資源)や自家発電の電力等の貸与(提供)対象を借用(利用)して何らかのプロジェクトを遂行するようにしてもよい。プロジェクトの具体例としては、研究開発(例えば、人工知能開発、機械学習、人ゲノム解析、新製品開発、新薬開発等)、レアメタルや石油や天然ガスや海洋資源等の探査・発掘、宇宙開発等が、考えられる。その際、第1実施形態のように貸与(提供)対象の貸与量(提供量)に応じた対価(トークン等)を貸与者(提供者)が取得するようにしてもよいが、プロジェクトの成功によってプロジェクト遂行者(個人または法人または団体)が得られる利益の何割かを資源貸与者(資源提供者)に分配(配当)するようにしてもよい。その配当割合(配当量)は、資源の貸与量(提供量)に比例するように制御する。 (5) It is also possible to carry out some project by borrowing (using) the above-mentioned PC resources (computing resources), privately generated electric power, and the like. Specific examples of projects include research and development (e.g., artificial intelligence development, machine learning, human genome analysis, new product development, new drug development, etc.), exploration and excavation of rare metals, oil, natural gas, marine resources, etc., space development, etc. However, it is possible. In this case, the lender (provider) may obtain consideration (tokens, etc.) according to the loan amount (provided amount) of the loan (provided) target as in the first embodiment, but the success of the project A percentage of the profits obtained by the project executor (individual, corporation, or group) may be distributed (divided) to the resource lender (resource provider). The dividend ratio (dividend amount) is controlled to be proportional to the loan amount (provided amount) of resources.
さらに、資源貸与者(資源提供者)が配当自体を受け取るのではなく、配当を受け取る権利(以下「配当享受権」という)を取得するようにしてもよい。この配当享受権は、例えば、プロジェクト遂行者が発行したトークンの形で貸与者(提供者)が取得するように制御してもよい。そして、貸与者(提供者)は、取得した配当享受権(トークン)を、そのときの相場に応じた価格(トークン)で他人に譲渡できるように制御してもよい。このように構成することにより、配当享受権(トークン)を、あたかも株式市場におけるセカンダリーマーケットでの株取引のように運用することができる。 Furthermore, the resource loaner (resource provider) may acquire the right to receive the dividend (hereinafter referred to as "dividend enjoyment right") instead of receiving the dividend itself. This dividend enjoyment right may be controlled so that the lender (provider) acquires it in the form of a token issued by the project executor, for example. Then, the lender (provider) may control the acquired dividend enjoyment rights (tokens) so that they can be transferred to others at a price (tokens) according to the market price at that time. With this configuration, the dividend enjoyment rights (tokens) can be managed as if they were traded in a secondary market in the stock market.
(6) S71では生成されたパーソナライズド学習済みモデルを発注者のアドレス宛てに送信して納品しているが、それに加えてまたはその代わりに、生成されたパーソナライズド学習済みモデルを活用して発注者にパーソナライズされたサービスを提供するようにしてもよい。 (6) In S71, the generated personalized trained model is sent to the orderer's address and delivered, but in addition to or in place of that, orders can be placed using the generated personalized trained model. It may also be possible to provide personalized services to users.
(7) 前述の説明ではスマートコントラクトにより契約の検証、条件確認、執行、実行、交渉を自動化しているが、契約(取引等の法律行為)の締結及び執行を行う前にユーザ本人の承諾を求めるように制御してもよい。また、全ての契約(取引等の法律行為)についてユーザ本人の承諾を求めるのではなく、予め定められた重要な契約(取引等の法律行為)か否かを判定し、重要な契約(取引等の法律行為)であると判定された場合にユーザ本人の承諾を求めるように制御してもよい。さらに、締結及び執行が急がれる契約(取引等の法律行為)であるか否かを判定し、急がれる契約(取引等の法律行為)であると判定された場合には、ユーザ本人の承諾を得ることなく契約(取引等の法律行為)の締結及び執行する制御を行い、後からユーザ本人に報告するように制御してもよい。この変形例は、後述する実施態様においても同様に適用してもよい。 (7) In the above explanation, smart contracts automate contract verification, condition confirmation, execution, implementation, and negotiation, but it is necessary to obtain the user's consent before concluding and executing a contract (legal act such as a transaction). It may be controlled as desired. In addition, instead of requesting the user's consent for all contracts (legal acts such as transactions), the system determines whether or not it is a predetermined important contract (legal acts such as transactions), and control may be performed so that the user's consent is requested if it is determined that the act is a legal act). Furthermore, it is determined whether the contract is one that requires urgent conclusion and execution (legal acts such as transactions), and if it is determined that the contract is urgent (legal acts such as transactions), the user It is also possible to perform control to conclude and execute a contract (legal act such as a transaction) without obtaining consent, and control to report it to the user himself/herself later. This modification may be similarly applied to the embodiments described below.
(8) 各ブロックチェーンのノード19を構成するユーザ端末16等及び各種サーバで動作する前述したプログラムは、所定のウェブサイト等からダウンロードしてインストールしてもよいが、例えばCD-ROM99等の記録媒体(非一時的(non-transitory)な記録媒体)に記録させて流通させ、そのCD-ROM99等を購入した者がプログラムをユーザ端末16及び各種サーバにインストールしてもよい(図60参照)。
(8) The above-mentioned programs that operate on the
(9) 前述の説明では集中型オラクル21を採用しているが、ネットワーク全体で分散して管理される分散型オラクルを採用してもよい。ネットワーク全体で分散している複数のオラクルが収集した情報を寄せ集めて平均的な情報を抽出し、その平均的情報を正しい情報とみなしてブロックチェーン内に取込みスマートコントラクトに用いる。これは、ジェームズ・スロウィッキーが書籍『みんなの意見は案外正しい』で提唱した「集団において情報を寄せ集めることで、その集団が出す結論は集団の中の個人の誰が考えるよりもよい結論を導くことができる」という理論に基づいたものである。そして、平均的情報に近い情報を収集したオラクルに対しトークン等の報酬を与えることにより、分散型オラクルを運用するインセンティブを与える。
(9) In the above description, a
まとめると、ネットワーク上で分散している複数のオラクルが収集した情報を寄せ集めて平均的な情報を抽出する抽出手段と、該抽出手段により抽出された平均的情報を採用する採用手段と、オラクルに対し報酬を与える報酬付与手段とを備え、前記複数のオラクルは、第1オラクルと第2オラクルとを含み、前記報酬付与手段は、前記第1オラクルよりもより前記平均的情報に近い情報を収集した前記第2オラクルにより多くの報酬を付与する。なお、第1オラクルに付与する報酬は0であってもよく、また、マイナスであってもよい。 In summary, there is an extraction means that collects information collected by multiple oracles distributed on a network and extracts average information, a recruitment means that employs the average information extracted by the extraction means, and an oracle. the plurality of oracles include a first oracle and a second oracle, and the reward granting means provides information closer to the average information than the first oracle. More rewards are given to the collected second oracles. Note that the reward given to the first oracle may be 0 or may be negative.
(10) 前述のS13のK2配布契約の成立及びS16の個人情報の提供契約の成立のうちの一方または双方の判定について、個人情報主本人の意思を特定する情報(以下「意思特定情報」という)に従って成立させるか否判定する機能を設けてもよい。具体的には、個人情報主が、実店舗や電子ショッピングモール等において自分にマッチする商品やサービスをレコメンドしてもらうときに、自身が所持する携帯端末(スマートフォンまたはICカード等)の特定情報を読取らせると共に契約を成立させてよい旨の暗証番号を入力することによって、特定情報及び暗証番号からなる意思特定情報を当該個人情報主のスマートコントラクトに通知し、その意思特定情報に従ってスマートコントラクが判定する。 (10) Regarding the determination of the establishment of the K2 distribution contract in S13 and/or the establishment of the personal information provision contract in S16, information that specifies the intention of the personal information owner (hereinafter referred to as "intention identification information") is required. ) may be provided. Specifically, when the owner of personal information receives recommendations for products or services that match him or her at a physical store or electronic shopping mall, etc., the owner of the personal information may provide specific information on his/her own mobile device (smartphone, IC card, etc.). By reading the information and entering a PIN that indicates that the contract can be concluded, the personal information owner's smart contract is notified of the intention-specific information consisting of the specific information and the PIN, and the smart contract is executed according to the intention-specific information. will judge.
このようにすることにより、ユーザは、SNS等の事業者から取戻して自己管理化に置いた個人情報を自分の意思によって自分のために活用することができる。
[第2実施形態]
By doing so, the user can utilize the personal information retrieved from the SNS etc. operator and placed under self-management according to his or her own will.
[Second embodiment]
次に、第2実施形態を説明する。この第2実施形態は、ブロックチェーンを利用して記録した個人情報に対し、暗号化技術を応用することにより、自己の個人情報を削除する個人情報削除権(いわゆる忘れられる権利)の必要性に応えるものである。ブロックチェーンは一旦記録した情報が改竄不可能または改竄が極めて困難である点が特徴であり、そのために、一旦記録した情報の削除が不可能または極めて困難である(これを以下「削除不可能性」という)。一方、欧州におけるGDPR(General Data Protection Regulation)では、記録した個人情報をその個人情報主が削除できる個人情報削除権(いわゆる忘れられる権利)を保証することが要求されている。このGDPRの個人情報削除権の要請とブロックチェーンにおける削除不可能性とが真っ向から対立し二律背反するジレンマとなっている。つまり、この第2実施形態は、削除したい情報の削除権を保証する要請と削除不可能性とが二律背反するジレンマを解決するものである。その概要を図14に基づいて説明する。 Next, a second embodiment will be described. This second embodiment addresses the need for the right to delete personal information (the so-called right to be forgotten) by applying encryption technology to personal information recorded using blockchain. It is something to respond to. Blockchain is characterized by the fact that once recorded information cannot be tampered with or is extremely difficult to tamper with, and for this reason it is impossible or extremely difficult to delete information once recorded (hereinafter referred to as "impossibility of deletion"). ). On the other hand, the General Data Protection Regulation (GDPR) in Europe requires that the right to delete personal information (the so-called right to be forgotten), which allows the owner of personal information to delete recorded personal information, is guaranteed. This GDPR requirement for the right to delete personal information and the impossibility of deletion in blockchain are in direct conflict, creating a contradictory dilemma. In other words, the second embodiment solves the dilemma in which the requirement to guarantee the right to delete information to be deleted and the impossibility of deletion are contradictory. The outline will be explained based on FIG. 14.
図14(A)は削除権を行使していない通常状態を示しており、図14(B)は削除権を行使して情報を解読不能化した状態を示している。図14(A)を参照して、情報保持者(情報主ともいう)40が情報を2つの片割れ共通鍵KAとKBを用いて二重暗号化する。式で表せばEKA(EKB(情報))となる。次に、その暗号化情報であるEKA(EKB(情報))をブロックチェーン等に記録する。なお、片割れ共通鍵KAは秘匿状態で情報保持者40のユーザ端末等に記憶しておく。
FIG. 14(A) shows a normal state in which the deletion right is not exercised, and FIG. 14(B) shows a state in which the deletion right is exercised and the information is rendered indecipherable. Referring to FIG. 14A, an information holder (also referred to as an information owner) 40 double-encrypts information using two common keys KA and KB. Expressed as a formula, it becomes E KA (E KB (information)). Next, the encrypted information E KA (E KB (information)) is recorded on a blockchain or the like. Note that the common key KA is stored in a confidential state in the user terminal of the
この状態で、情報要求者41が情報主40に対し情報を要求したときには、情報主40が、記録している暗号化情報であるEKA(EKB(情報))を鍵KAで復号する。式で表せば、DKA(EKA(EKB(情報))=EKB(情報)となる。そして、このEKB(情報)と片割れ共通鍵KBとを情報主40が情報要求者41へ送信する。
In this state, when the information requester 41 requests information from the
それらを受信した情報要求者41は、受信したEKB(情報)を受信した片割れ共通鍵KBで復号する。式で表せば、DKB(EKB(情報))=情報 となる。これにより、情報要求者41は、平文の情報を得ることができる。 The information requester 41 who has received them decrypts the received EKB (information) using the received half common key KB. Expressed as a formula, D KB (E KB (information))=information. Thereby, the information requester 41 can obtain plaintext information.
次に、削除権を行使して情報を解読不能化した状態を図14(B)に基づいて説明する。情報主40は、解読不能化したい情報の暗号化に用いた片割れ鍵KAとKBとのうちの一方KAを乱数R(≠KA)に更新する。次に、片割れ共通鍵KBを既に記憶している情報要求者41が情報主40に対し情報を要求したときには、情報主40が、記録している暗号化情報であるEKA(EKB(情報))を鍵R(乱数)で復号する。式で表せば、DR(EKA(EKB(情報))となる。そして、このDR(EKA(EKB(情報))を情報主40が情報要求者41へ送信する。
Next, a state in which information is made unreadable by exercising the deletion right will be explained based on FIG. 14(B). The
それを受信した情報要求者41は、既に記憶している片割れ共通鍵KBでDR(EKA(EKB(情報))を復号する。式で表せば、DKB(DR(EKA(EKB(情報))))≠情報 となる。このように、解読不能化状態では、既に片割れ共通鍵KBを記憶している情報要求者41であっても平文の情報を得ることができず、削除したい情報の削除権を保証する要請と削除不可能性とが二律背反するジレンマを解決することができる。なお、ブロックチェーン等に記録する個人情報等の情報をコピー&ペーストできないようにコピー禁止処理を施しておれば、情報の削除権の保証はより完全なものとなる。なお、2つの鍵KA及びKBを用いた二重暗号に限定する必要はなく、3つ以上の鍵(n個の鍵)を用いた多重暗号を用いてもよい。この場合、n個の鍵のうち、少なくともいずれか1つの鍵を乱数Rに置換することにより、解読不能化状態となる。 The information requester 41 who received it decrypts D R (E KA (E KB (information)) using the already stored half common key KB. Expressed in the formula, D KB (D R (E KA ( E KB (information))))≠information.In this way, in the unreadable state, even the information requester 41 who has already memorized the half common key KB cannot obtain the plaintext information. , it is possible to resolve the dilemma where the request to guarantee the right to delete information that you want to delete and the impossibility of deletion are contradictory.In addition, copying is prohibited so that information such as personal information recorded on blockchain etc. cannot be copied and pasted. If processing is carried out, the guarantee of the right to delete information will be more complete.Note that there is no need to limit to double encryption using two keys KA and KB; You may also use multiple encryption using a random number R. In this case, by replacing at least one of the n keys with a random number R, the state becomes unreadable.
以上説明した第2実施形態の概要をより詳細に説明する。第1実施形態との共通点については説明の繰り返しを省略し主に相違点について説明する。図15は第1実施形態における図2に対応するものである。ブロックチェーン内の取引Iを参照し、この第2実施形態では、暗号化個人情報であるEKA(EKB(個人情報))を直接ブロック内に記録している。よって、第2実施形態では認定事業者17は不要である。ここに、KAとKBは片割れ共通鍵である。
The outline of the second embodiment described above will be explained in more detail. Regarding common points with the first embodiment, repeated explanation will be omitted, and differences will be mainly explained. FIG. 15 corresponds to FIG. 2 in the first embodiment. Referring to transaction I in the blockchain, in this second embodiment, encrypted personal information E KA (E KB (personal information)) is directly recorded in the block. Therefore, the certified
次に、図16を参照し、プライベートチェーン2のノード19を構成しているユーザ端末とパブリックチェーン4のノードを構成しているユーザ端末16とのメインルーチンのフローチャートを説明する。このメインルーチンは、第1実施形態で示した動作処理のフローチャートを省略し、第1実施形態で示した動作処理に対し追加または変更する動作処理のフローチャートのみを示している。パブリックチェーン4のノードを構成しているユーザ端末16では、S160によりブロックチェーンへの個人情報記録処理が行われ、S161により記録解読不能処理が行われ、S162により個人情報提供処理が行われる。ライベートチェーン2のノード19を構成しているユーザ端末では、S170により個人情報入手処理が行われる。
Next, with reference to FIG. 16, a flowchart of the main routine of the user terminal configuring the
ブロックチェーンへの個人情報記録処理とは、個人情報をブロックチェーンに記録する処理である。記録解読不能処理とは、削除権を行使して情報を解読不能化にするための処理である。個人情報提供処理とは、パブリックチェーン4のユーザ端末16がプライベートチェーン2のユーザ端末に個人情報を提供する処理である。個人情報入手処理とは、プライベートチェーン2のユーザ端末がパブリックチェーンのユーザ端末16から個人情報を入手する処理である。
The process of recording personal information on the blockchain is the process of recording personal information on the blockchain. Processing to make records unreadable is a process for making information unreadable by exercising the deletion right. The personal information provision process is a process in which the
図17(A)に基づいて、ブロックチェーンへの個人情報記録処理のサブルーチンプログラムのフローチャートを説明する。S174により、2つの乱数を生成する処理が行われる。例えば、DESの場合には、56ビットの乱数を2つ生成して、それら56ビット乱数を片割れ共通鍵KA及びKBとする。ADSの場合には、128ビットの乱数を2つ生成して、それら128ビット乱数を片割れ共通鍵KA及びKBとする。 A flowchart of a subroutine program for personal information recording processing on a blockchain will be described based on FIG. 17(A). In S174, a process of generating two random numbers is performed. For example, in the case of DES, two 56-bit random numbers are generated and these 56-bit random numbers are used as the half common keys KA and KB. In the case of ADS, two 128-bit random numbers are generated and these 128-bit random numbers are used as half common keys KA and KB.
次に、S177において、EKA(EKB(個人情報))とEK2(インデックス+個人情報提供の対価)と暗号文識別子とをブロックチェーンに記録する処理が行われる。この暗号文識別子は、暗号化個人情報であるEKA(EKB(個人情報))を特定するための識別子であり、第1実施形態における電子IDに相当するものである。 Next, in S177, processing is performed to record E KA (E KB (personal information)), E K2 (index + compensation for providing personal information), and a ciphertext identifier on the blockchain. This ciphertext identifier is an identifier for specifying E KA (E KB (personal information)), which is encrypted personal information, and corresponds to the electronic ID in the first embodiment.
次に、S183により、KA及びKBと暗号文識別子とを対応付けてユーザ端末16のHDD12に記憶する。
Next, in S183, the KA and KB and the ciphertext identifier are stored in association with each other in the
次に、図17(B)に基づいて、記録解読不能処理のサブルーチンプログラムのフローチャートを説明する。S190により、ブロックチェーンに記録した暗号文(例えば、EKA(EKB(個人情報))等)のうち解読不能にしたい暗号文があるか否か判定される。ない場合にはリターンするが、解読不能にしたい暗号文がある場合には制御がS191に進み、その暗号文の暗号文識別子に対応付けて記憶している片割れ共通鍵KAをHDD12から検索する処理が行われる。
Next, a flowchart of a subroutine program for recording unreadable processing will be explained based on FIG. 17(B). In S190, it is determined whether or not there is a ciphertext that is desired to be made unreadable among the ciphertexts (for example, EKA ( EKB (personal information)) recorded on the blockchain. If there is no ciphertext, the process returns; however, if there is a ciphertext to be made unreadable, control proceeds to S191, where the process searches the
次に、S192により、乱数Rが生成される。例えば、DESの場合には、56ビットの乱数を生成する。ADSの場合には、128ビットの乱数を生成する。次に、S193により、生成した乱数R=KA であるか否か判定される。生成した乱数RがHDD12に記憶されている片割れ共通鍵KAと同じであれば制御がS192に戻り、再度乱数を生成し直す。S193によりNOと判定されれば制御がS194へ進み、HDD12に記憶されている片割れ共通鍵KAをRに更新する処理が行われる。
Next, in S192, a random number R is generated. For example, in the case of DES, a 56-bit random number is generated. In the case of ADS, a 128-bit random number is generated. Next, in S193, it is determined whether the generated random number R=KA. If the generated random number R is the same as the half common key KA stored in the
次に、図18に基づいて、個人情報提供処理と個人情報入手処理とのサブルーチンプログラムのフローチャートを説明する。プライベートチェーン2のユーザ端末において、S198により、入手希望個人情報の片割れ共通鍵KBが既に記憶されているか否か判定される。パブリックチェーン4のユーザ端末16からプライベートチェーン2のユーザ端末へ、入手希望個人情報の片割れ共通鍵KBが既に配布されておれば、S198により記憶ありと判定されて制御がS203へ進むが、未だに記憶されていない場合には制御がS199へ進む。
Next, a flowchart of a subroutine program for personal information provision processing and personal information acquisition processing will be described based on FIG. 18. In the user terminal of the
S199では、入手希望個人情報の暗号文識別子をパブリックチェーン4のユーザ端末16へ送信して片割れ共通鍵KBを要求する処理が行われる。それをS200で受信したパブリックチェーン4のユーザ端末16では、暗号文識別子で指定された個人情報を提供する取引を行うか否かをスマートコントラクトにより判定し(S16参照)、個人情報を提供する取引を行う場合にはS201により、個人情報の提供に合意する署名と暗号文識別子に対応する片割れ共通鍵KBとが返信される。
In S199, a process of transmitting the ciphertext identifier of the personal information desired to be obtained to the
それをS202で受信したプライベートチェーン2のユーザ端末では、S203により、署名と入手希望個人情報の暗号文識別子とがパブリックチェーン4のユーザ端末16へ送信される。それをS206で受信したパブリックチェーン4のユーザ端末16では、暗号文識別子で指定された個人情報を提供する取引を行うか否かをスマートコントラクトにより判定し(S16参照)、個人情報を提供する取引を行う場合にはS207により、DKA(暗号化個人情報)またはDR(暗号化個人情報)を演算して返信する処理が行われる。具体的には、ユーザ端末16のHDD12に記憶されている片割れ共通鍵KAが既に乱数Rに更新されている場合にはDR(暗号化個人情報)を演算して返信されるが、未だ乱数Rに更新されていない場合にはDKA(暗号化個人情報)を演算して返信する処理が行われる。
The user terminal of the
パブリックチェーン4のユーザ端末16からの返信をS208で受信したプライベートチェーン2のユーザ端末では、S209により、DKB(DKA(暗号化個人情報))=平文 または、DKB(DR(暗号化個人情報))≠平文 を演算する処理が行われる。具体的には、DKA(暗号化個人情報)を受信した場合には、DKB(DKA(暗号化個人情報))=DKB(DKA(EKA(EKB(個人情報))))=平文 を演算して平文の個人情報を得る。一方、(DR(暗号化個人情報))を受信した場合には、DKB(DR(暗号化個人情報))=DKB(DR(EKA(EKB(個人情報))))≠平文 が演算されることになり、平文の個人情報を得ることができない。これにより、削除したい情報の削除権を保証する要請と削除不可能性とが二律背反するジレンマを解決することができる。
[変形例]
The user terminal of the
[Modified example]
(1) 前述の説明では、暗号化個人情報であるEKA(EKB(個人情報)をブロックチェーンに直接記録しており、この大量の暗号化個人情報を各ノード(パブリックチェーン4では全てのノード)に記憶させていたのでは、各ノード(ユーザ端末)が膨大な記憶容量を要求されるという不都合が生じる。これを解決する手段として、分割したデータを複数のコンピュータで保存する秘密分散技術を応用する。データを分割して断片化し、各断片化データを複数のノードに分散保存する。また各ノードに保存されるデータを冗長化して(重複して)記憶させる。十分な冗長性を持たせることにより、断片データの一部が失われても復元に支障はなく、かつ、ブロックチェーンとしての改竄の困難性も担保できる。さらに、断片化データの記憶を担う記憶量を各ノードの意思で決めるように制御し、担う記憶量に応じた対価をトークン等の形で各ノードに付与するように制御してもよい。
(1) In the above explanation, encrypted personal information E KA (E KB (personal information)) is directly recorded on the blockchain, and this large amount of encrypted personal information is stored at each node (in
(2) 前述の説明では、暗号化個人情報であるEKA(EKB(個人情報)をブロックチェーンに直接記録していたが、図19~図23に示す変形例では、暗号化個人情報EKA(EKB(個人情報))を認定事業者17の個人情報DB29に記憶し、その暗号化個人情報のハッシュ値をブロックチェーンに記録するようにしている。図19(A)に示す取引Iには、EKA(EKB(個人情報))のハッシュ値+EK2(インデックス+2.4トークンで提供)+暗号文識別子と電子署名とが記録されている。また、図19(B)に示す認定事業者17の個人情報DB29には、暗号文識別子に対応付けて暗号化個人情報EKA(EKB(個人情報))が記憶されている。
(2) In the above explanation, the encrypted personal information E KA (E KB (personal information)) was directly recorded on the blockchain, but in the modified examples shown in Figures 19 to 23, the encrypted personal information E KA (E KB (personal information)) is stored in the
図20に基づいて、この変形例でのプライベートチェーン2のノード19を構成しているユーザ端末とパブリックチェーン4のノード19を構成しているユーザ端末16と認定事業者17のサーバ18とのメインルーチンのフローチャートを説明する。認定事業者17のサーバ18は、ノード19としてブロックチェーンに参加している。S215によりブロックチェーンへの個人情報記録処理が実行され、S216により記録解読不能処理が実行され、S217により個人情報提供処理が実行され、S220によりハッシュ値記録処理が実行され、S221により暗号文送信処理が実行され、S224により個人情報入手処理が実行される。
Based on FIG. 20, the main connections between the user terminal configuring the
ブロックチェーンへの個人情報記録処理は、パブリックチェーン4のノード19を構成しているユーザ端末16が認定事業者17のサーバ18に対し、暗号化個人情報EKA(EKB(個人情報))を送信する処理である。ハッシュ値記録処理は、暗号化個人情報EKA(EKB(個人情報))等を受信した認定事業者17のサーバ18がそれを記憶すると共にそのハッシュ値を生成してブロックチェーンに記録する処理である。記録解読不能処理は、解読不能にしたい暗号化個人情報EKA(EKB(個人情報))等の暗号文を解読不能にするための処理である。個人情報提供処理は、パブリックチェーン4のノード19を構成しているユーザ端末16がプライベートチェーン2のノード19を構成しているユーザ端末へ個人情報を提供するために実行する処理である。個人情報入手処理は、プライベートチェーン2のノード19を構成しているユーザ端末が個人情報を入手する処理である。暗号文送信処理は、認定事業者17のサーバ18がプライベートチェーン2のノード19を構成しているユーザ端末に対し暗号化個人情報EKA(EKB(個人情報))等の暗号文を送信する処理である。
In the process of recording personal information on the blockchain, the
以下に、各処理の詳細を各サブルーチンプログラムのフローチャートに基づいて説明するが、第2実施形態との相違点について主に説明する。 The details of each process will be explained below based on the flowchart of each subroutine program, and differences from the second embodiment will be mainly explained.
図21に基づいて、ブロックチェーンへの個人情報記録処理とハッシュ値記録処理とのサブルーチンプログラムのフローチャートを説明する。S231により、EKA(EKB(個人情報))とEK2(インデックス+個人情報提供の対価)とが認定事業者17のサーバ18へ送信される。それをS240で受信したサーバ18では、S241により、EKA(EKB(個人情報))のハッシュ値と暗号文識別子とを生成する処理が行われる。次に、S242により、EKA(EKB(個人情報))のハッシュ値とEK2(インデックス+個人情報提供の対価)と暗号文識別子とをブロックチェーンに記録する処理が行われる。
A flowchart of a subroutine program for personal information recording processing and hash value recording processing on the blockchain will be explained based on FIG. 21. In S231, E KA (E KB (personal information)) and E K2 (index + compensation for providing personal information) are transmitted to the
次にS243により、暗号文識別子をパブリックチェーン4のユーザ端末16へ送信する処理が行われる。それをS232で受信したパブリックチェーン4のユーザ端末16では、S233により、片割れ鍵KA及びKBと受信した暗号文識別子とを対応付けてHDD12に記憶する処理が行われる。認定事業者17のサーバ18では、S244により、EKA(EKB(個人情報))と暗号文識別子とを対応付けて個人情報DB29に記憶する処理が行われる。
Next, in S243, a process of transmitting the ciphertext identifier to the
図22に示す記録解読不能処理は、第2実施形態の図17(B)で既に説明したものおと同じであるため、説明の繰り返しを省略する。 The recording undeciphering process shown in FIG. 22 is the same as that already explained in FIG. 17(B) of the second embodiment, and therefore, a repeated explanation will be omitted.
次に、図23に基づいて、個人情報提供処理と個人情報入手処理と暗号文送信処理とのサブルーチンプログラムのフローチャートを説明する。この変形例では、プライベートチェーン2のユーザ端末は、個人情報の提供に合意する署名と暗号文識別子に対応する片割れ共通鍵KBとをパブリックチェーン4のユーザ端末16から受信すると(S264)、S265により、受信した署名と入手希望個人情報の暗号文識別子とを認定事業者17のサーバ18へ送信する。それをS266により受信した認定事業者17のサーバ18では、S267により、署名を確認した上で暗号文識別子に対応する暗号文を個人情報DB29から検索してパブリックチェーン4のユーザ端末16へ送信する処理が行われる。
Next, a flowchart of a subroutine program for personal information providing processing, personal information obtaining processing, and ciphertext transmission processing will be described based on FIG. 23. In this modified example, when the user terminal of the
それをS268で受信したパブリックチェーン4のユーザ端末16では、S269により、DKA(暗号化個人情報)またはDR(暗号化個人情報))を演算してプライベートチェーン2のユーザ端末へ返信する処理が行われる。具体的には、ユーザ端末16のHDD12に記憶されている片割れ共通鍵KAが既にRに更新されている場合にはDR(暗号化個人情報)を演算して返信されるが、未だRに更新されていない場合にはDKA(暗号化個人情報)を演算して返信する処理が行われる。
The
パブリックチェーン4のユーザ端末16からの返信をS270で受信したプライベートチェーン2のユーザ端末では、S271により、DKB(DKA(暗号化個人情報))=平文 または、DKB(DR(暗号化個人情報))≠平文 を演算する処理が行われる。具体的には、DKA(暗号化個人情報)を受信した場合には、DKB(DKA(暗号化個人情報))=DKB(DKA(EKA(EKB(個人情報))))=平文 を演算して平文の個人情報を得る。一方、(DR(暗号化個人情報))を受信した場合には、DKB(DR(暗号化個人情報))=DKB(DR(EKA(EKB(個人情報))))≠平文 が演算されることになり、平文の個人情報を得ることができない。これにより、削除したい情報の削除権を保証する要請と削除不可能性とが二律背反するジレンマを解決することができる。
The user terminal of the
なお、認定事業者17のサーバ18は、ノード19としてブロックチェーンに参加することなくインターネット1を介してプライベートチェーン2のユーザ端末及びパブックチェーン4のユーザ端末に接続されるものであってもよい。
Note that the
(3) 前述の説明では片割れ共通鍵KAを個人情報主が保持(ユーザ端末16のHDD12に記憶)していたが、その代わりに、所定機関(第三者機関)の一例の鍵登録センタ30の鍵DB32に片割れ共通鍵KAを登録しておくようにしてもよい。なお、片割れ共通鍵KAは秘匿状態で鍵DB32に記憶しておく。この変形例を図24~図27に基づいて説明する。
(3) In the above explanation, the personal information owner held the shared key KA (stored in the
図24を参照し、鍵登録センタ30のサーバ31がインターネット1に接続されている。そのサーバ31に接続されている鍵DB32には、パブリックチェーン4の各ノード19であるユーザのアドレス毎に、暗号文識別子と片割れ共通鍵KAとが対応付けられて記憶されている。そして、ユーザから記録解読不能化要求があれば、その要求のあった記録に相当する暗号文識別子に対応付けて記憶されている片割れ共通鍵KAを乱数Rに更新する。図24では、アドレス0x6079ddの暗号文識別子307cd4に対応付けて記憶されている片割れ共通鍵が乱数1R2に更新されており、アドレス0x6080ddの暗号文識別子4arb56に対応付けて記憶されている片割れ共通鍵が乱数2Rnに更新されており、アドレス0x6978ddの暗号文識別子e2c87rに対応付けて記憶されている片割れ共通鍵が乱数mR1に更新されている。
Referring to FIG. 24, a
次に図25に基づいて、パブリックチェーン4のユーザ端末16と鍵登録センタ30のサーバ31とプライベートチェーン2のユーザ端末とのメインルーチンのフローチャートを説明する。第2実施形態との共通点については説明の繰り返しを省略し主に相違点について説明する。
Next, a flowchart of the main routine of the
パブリックチェーン4のユーザ端末16では、S468によりブロックチェーンへの個人情報記録処理が実行され、S469により記録解読不能化要求処理が実行され、S470により復号鍵提供処理が実行される。鍵登録センタ30のサーバ31では、S463により鍵登録処理が実行され、S464により記録解読不能処理が実行され、S465によりデータ復号処理が実行される。プライベートチェーン2のユーザ端末では、S460によりデータ入手処理が実行さる。
In the
次に図26(A)に基づいて、ブロックチェーンへの個人情報記録処理と鍵登録処理とのサブルーチンプログラムのフローチャートを説明する。パブリックチェーン4のユーザ端末16において、S479により、EKA(EKB(個人情報))とEK2(インデックス+個人情報提供の対価)と暗号文識別子とがブロックチェーンに記録され、S480により、片割れ共通鍵KAと暗号文識別子とを鍵登録センタ30へ送信する処理が行われる。
Next, a flowchart of a subroutine program for personal information recording processing and key registration processing on the blockchain will be described based on FIG. 26(A). In the
それをS474で受信した鍵登録センタ30のサーバ31では、S475により、受信した片割れ共通鍵KAと暗号文識別子とを対応付けて鍵DB32に記憶する処理が行われる。
The
次に、図26(B)に基づいて、記録解読不能化要求処理と記録解読不能処理とのサブルーチンプログラムのフローチャートを説明する。パブリックチェーン4のユーザ端末16において、S494により、解読不能にしたい暗号文があるか否か判定され、ない場合にはリターンするが、ある場合には、S495により、解読不能を要求する暗号文識別子を鍵登録センタ30のサーバ31へ送信する処理が行われる。
Next, a flowchart of a subroutine program for the record unreadable request process and the record unreadable process will be described based on FIG. 26(B). In the
それをS485で受信した鍵登録センタ30のサーバ31では、受信した暗号文識別子に対応付けて記憶されている片割れ共通鍵KAを鍵DB32から検索する処理が行われる。次にS487により乱数Rを生成し、S488により、その乱数R=KAであるか否か判定される。R=KAの場合にはS487により再度乱数Rを生成し直し、R≠KAとなった段階でS489により、片割れ共通鍵KAをRに更新する処理が行われる。
The
次に図27により、片割れ共通鍵提供処理とデータ入手処理とデータ復号処理とのサブルーチンプログラムのフローチャートを説明する。プライベートチェーン2のユーザ端末において、S503により、入手希望データの暗号文識別子を鍵登録センタ30のサーバ31へ送信する処理が行われる。それをS504により受信した鍵登録センタ30のサーバ31では、S505により、暗号文識別子に対応する暗号文(暗号化個人情報等)をブロックチェーンから検索する処理が行われる。次にS506により、暗号文識別子に対応する片割れ共通鍵KAまたはRを検索する処理が行われる。
Next, with reference to FIG. 27, a flowchart of a subroutine program of a common key provision process, a data acquisition process, and a data decryption process will be described. In the user terminal of the
次にS507により、DKA(暗号化個人情報)またはDR(暗号化個人情報)をプライベートチェーン2のユーザ端末に返信する処理が行われる。具体的には、鍵登録センタ30の鍵DB32に記憶されている片割れ共通鍵KAが既にRに更新されている場合にはDR(暗号化個人情報)を演算して返信されるが、未だRに更新されていない場合にはDKA(暗号化個人情報)を演算して返信する処理が行われる。
Next, in S507, processing is performed to return D KA (encrypted personal information) or DR (encrypted personal information) to the user terminal of
それをS509で受信したプライベートチェーン2のユーザ端末では、S510により、DKA(DKB(暗号化個人情報))=平文 または、DKA(DR(暗号化個人情報))≠平文 を演算する処理が行われる。具体的には、DKA(暗号化個人情報)を受信した場合には、DKB(DKA(暗号化個人情報))=DKB(DKA(EKA(EKB(個人情報))))=平文 を演算して平文の個人情報を得る。一方、(DR(暗号化個人情報))を受信した場合には、DKB(DR(暗号化個人情報))=DKB(DR(EKA(EKB(個人情報))))≠平文 が演算されることになり、平文の個人情報を得ることができない。これにより、削除したい情報の削除権を保証する要請と削除不可能性とが二律背反するジレンマを解決することができる。しかも、片割れ共通鍵KAをRに更新する処理が鍵登録センタ30において行われるため、KAをRに更新して削除権が保証されたことの信頼性を担保しやすい。例えば、KAのRへの更新を所定機関による監査の元で行ないやすいという利点がある。
The user terminal of
(4) 削除したい情報の削除権を保証する要請と削除不可能性とが二律背反するジレンマを解決する他の方法として、認定事業者17の個人情報DB29に記憶されている暗号化個人情報であるEKA(EKB(個人情報))を個人情報主の要請に応じて削除するようにしてもよい。その場合は、ブロックチェーン上に個人情報のハッシュ値が記録されているにもかかわらずそれに対応する個人情報が個人情報DB29に記憶されていないという矛盾した状態が生じるが、この矛盾を許容することができるのであれば、個人情報の削除も有効な手段となる。
(4) Another way to solve the dilemma of the conflict between the request to guarantee the right to delete information and the impossibility of deletion is to use encrypted personal information stored in the
(5) 削除権を保証する情報は、個人情報に限らず、例えば、SNSやブログへの投稿情報(投稿写真及び投稿動画のデータを含む)、遺言や任意後見契約などの公正証書、私文書や会社等の定款、その他確定日付が必要なもの等、どのような情報であってもよい。また、第2実施形態では削除権を保証する情報をブロックチェーンを利用して記録していたが、ブロックチェーンは一例に過ぎず、他のものを利用して記録してもよい。 (5) Information that guarantees the right to delete is not limited to personal information, but also includes information posted on SNS and blogs (including data on posted photos and videos), notarized documents such as wills and voluntary guardianship contracts, and private documents. It can be any kind of information, such as the articles of incorporation of a company, etc., or other information that requires a fixed date. Further, in the second embodiment, the information that guarantees deletion rights is recorded using a blockchain, but the blockchain is only an example, and other information may be used for recording.
(6) 各ブロックチェーンのノード19を構成するユーザ端末16等及び各種サーバで動作する前述したプログラムは、所定のウェブサイト等からダウンロードしてインストールしてもよいが、例えばCD-ROM99等の記録媒体(非一時的(non-transitory)な記録媒体)に記録させて流通させ、そのCD-ROM99等を購入した者がプログラムをユーザ端末16及び各種サーバにインストールしてもよい(図60参照)。
(6) The aforementioned programs that operate on the
(7) 前述の説明では、片割れ共通鍵KAで1度暗号化したものを片割れ共通鍵KBで再度暗号化するという2度の暗号化を行い、また、片割れ共通鍵KBで1度復号したものを片割れ共通鍵KAで再度復号するという2度の復号により平文にしている。しかし、これに限定されるものだはなく、片割れ共通鍵KAまたはKBでの暗号化を複数回行い、片割れ共通鍵KAまたはKBでの復号を複数回行うものであってもよい。さらに、片割れ共通鍵KA及びKBは2つに限定されるものではなく、3つ以上の片割れ共通鍵を用いてもよい。 (7) In the above explanation, the data is encrypted twice by encrypting it once with the common key KA, then encrypted again with the common key KB, and then decrypted once with the common key KB. is decrypted twice using the common key KA, thereby converting it into plain text. However, the invention is not limited to this, and encryption may be performed multiple times using the shared key KA or KB, and decryption may be performed multiple times using the shared key KA or KB. Further, the number of common keys KA and KB is not limited to two, and three or more common keys may be used.
さらには、片割れ共通鍵KA及びKBの排他的論理和(イクスクルーシブオア)を演算して1つの鍵Kを生成し(KA(+)KB=K)、その鍵Kで個人情報を暗号化し(EK(個人情報))、片割れ共通鍵KAを鍵登録センタ30の鍵DB32に登録すると共に、個人情報の要求者に片割れ共通鍵KBを配布する。個人情報の要求者からの要求を受けた個人情報主は暗号化個人情報を鍵登録センタ30のサーバ31へ送信し、個人情報の要求者は配布された片割れ共通鍵KBを鍵登録センタ30のサーバ31へ送信する。鍵登録センタ30のサーバ31では、受信した片割れ共通鍵KBと鍵DB32に登録されている片割れ共通鍵KAとの排他的論理和(イクスクルーシブオア)を演算して1つの鍵Kを生成し(KA(+)KB=K)、受信した暗号化個人情報(EK(個人情報))をその鍵Kで復号して平文にした上で(DK(EK(個人情報))=平文)、その平文個人情報を個人情報の要求者へ送信するようにしてもよい。上記(+)は排他的論理和(イクスクルーシブオア)を記号で表現したものである。
Furthermore, one key K is generated by calculating the exclusive OR of the common keys KA and KB (KA(+)KB=K), and personal information is encrypted with that key K. (E K (personal information)), one half of the common key KA is registered in the
なお、排他的論理和(イクスクルーシブオア)は一例に過ぎず、片割れ共通鍵KA及びKBから1つの鍵Kを生成するものであればどのようなアルゴリズムを用いてもよい。 Note that the exclusive OR is just one example, and any algorithm may be used as long as it generates one key K from the common keys KA and KB.
また、排他的論理和(イクスクルーシブオア)のような加法群を用いて鍵Kを生成する上記方式の場合には、片割れ共通鍵KA及びKBを定期的に更新してセキュリティを維持できる利点がある。例えば、一方の片割れ共通鍵KAをKCに更新した場合には、他方の片割れ共通鍵KB=K(+)KC となり、演算により求めることができる。このようにして片割れ共通鍵KA及びKBを更新することにより、片割れ共通鍵の漏洩に対抗することができるばかりでなく、1度片割れ共通鍵KBを配布した個人情報要求者が再度ブロックチェーン上の暗号化個人情報を復号できないようにして閲覧を阻止することが可能となる。このような片割れ共通鍵の更新を片割れ共通鍵KBの1度の配布毎に実行することにより、片割れ共通鍵KBの配布を受けた者が他人にその片割れ共通鍵KBを横流ししたとしても、その横流しを受けた者によるブロックチェーン上の暗号化個人情報を復号不能にすることが可能となる。つまり、配布する片割れ共通鍵KBを1度のみ使用可能なワンタイム鍵にすることができる。 In addition, in the case of the above method in which the key K is generated using an additive group such as exclusive OR, the advantage is that security can be maintained by periodically updating the common keys KA and KB. There is. For example, when one half of the common key KA is updated to KC, the other half of the common key KB=K(+)KC, which can be determined by calculation. By updating the shared common keys KA and KB in this way, it is not only possible to prevent the leakage of the shared common keys, but also to ensure that the personal information requester who once distributed the shared common key KB can access the blockchain again. It becomes possible to prevent encrypted personal information from being viewed by making it impossible to decrypt it. By updating the shared common key in this way every time the shared common key KB is distributed, even if the person who received the distributed common key KB misappropriates the shared common key KB to another person, the It becomes possible to make encrypted personal information on the blockchain impossible to decrypt by a person who has been misappropriated. In other words, the distributed common key KB can be made into a one-time key that can be used only once.
また、共通鍵に限定されるものではなく、RSAや楕円暗号等の公開鍵暗号方式を用いてもよい。 Further, the encryption key is not limited to the common key, and a public key cryptosystem such as RSA or elliptic cryptography may be used.
また、上記の鍵の更新を実現するにおいて、以下のような条件を満たす暗号アルゴリズムを採用してもよい。
平文をM、その暗号文をC、暗号鍵をKA、KB、KC及びKDと表し、
EKA(EKB(M))=EKC(EKD(M))=C
の式が成立するアルゴリズム。
Further, in realizing the above-mentioned key update, a cryptographic algorithm that satisfies the following conditions may be adopted.
Denote the plaintext as M, the ciphertext as C, and the encryption keys as KA, KB, KC, and KD,
E KA (E KB (M)) = E KC (E KD (M)) = C
An algorithm that satisfies the formula.
このようなアルゴリズムが共通鍵暗号アルゴリズムの場合には、片割れ共通鍵KA及びKBをKC及びKDに更新した場合に、ブロックチェーンに記録されている暗号文Cを片割れ共通鍵KC及びKDで復号することにより平文Mを得ることができる。一方、公開鍵暗号アルゴリズムの場合には、秘密鍵KA及びKBをKC及びKDに更新した場合に、秘密鍵KC及びKDに対応するペアの公開鍵PKC及びPKDでブロックチェーンに記録されている暗号文Cを復号することにより平文Mを得ることができる。
(8) 前述の説明では、情報保持者が情報要求者に暗号化個人情報(DKA(暗号化個人情報)またはDR(暗号化個人情報))と片割れ共通鍵KBとを送信し(S201、S207)、情報要求者自身が片割れ共通鍵KBを用いて暗号化個人情報を平文にするべく復号していたが(S209)、片割れ共通鍵KBを用いた復号を第三者機関(所定のサービス機関)が担ってもよい。この場合、情報保持者が暗号化個人情報(DKA(暗号化個人情報)またはDR(暗号化個人情報))と片割れ共通鍵KBとを第三者機関(所定のサービス機関)へ送信し、第三者機関(所定のサービス機関)で復号して情報要求者へ送信する。
[開示内容の特徴点]
If such an algorithm is a common key encryption algorithm, when the common keys KA and KB are updated to KC and KD, the ciphertext C recorded in the blockchain is decrypted using the common keys KC and KD. By doing this, plaintext M can be obtained. On the other hand, in the case of a public key cryptographic algorithm, when the private keys KA and KB are updated to KC and KD, the cryptography recorded in the blockchain with the pair of public keys PKC and PKD corresponding to the private keys KC and KD. By decoding sentence C, plaintext M can be obtained.
(8) In the above explanation, the information holder transmits the encrypted personal information (D KA (encrypted personal information) or D R (encrypted personal information)) and the common key KB to the information requester (S201). , S207), the information requester himself used the shared key KB to decrypt the encrypted personal information to plain text (S209), but the decryption using the shared key KB was performed by a third party (a designated service organization) may also be responsible. In this case, the information holder sends the encrypted personal information (D KA (encrypted personal information) or D R (encrypted personal information)) and the common key KB to a third party organization (prescribed service organization). , decrypted by a third-party organization (prescribed service organization) and sent to the information requester.
[Characteristics of disclosure content]
次に、以上説明した実施形態の開示内容の特徴を以下に列挙する。
(特徴1)
[技術分野]
Next, the features of the disclosed contents of the embodiments described above are listed below.
(Feature 1)
[Technical field]
特徴1は、例えば、ブロックチェーン等のような改竄や消去が困難な情報記録方式についての処理システムおよびプログラムに関する。
[背景技術]
[Background technology]
改竄や消去が困難な情報記録方式としてブロックチェーンが従来から一般的に知られている。このブロックチェーンを利用して貨物輸送に関する各種情報を記録しているものとして、例えば、特開2018-128723号がある。
[特徴1の概要]
[特徴1が解決しようとする課題]
Blockchain has been generally known as an information recording method that is difficult to tamper with or erase. For example, Japanese Patent Application Laid-Open No. 2018-128723 records various information related to cargo transportation using this blockchain.
[Summary of feature 1]
[Problem that Feature 1 attempts to solve]
しかし、このようなブロックチェーンを利用した情報の記録は、改竄が困難なばかりでなく消去も困難である(以下「消去不可能性」という)。その結果、一旦ブロックチェーンを利用した個人情報の記録を行った場合には、その個人情報主が個人情報を消去したくなっても消去できず個人情報消去権(いわゆる忘れられる権利)が損なわれるという欠点がある。 However, information records made using such blockchains are not only difficult to falsify, but also difficult to erase (hereinafter referred to as "irresolvability"). As a result, once personal information is recorded using blockchain, even if the owner of the personal information wants to erase it, it cannot be erased, and the right to erase personal information (the so-called right to be forgotten) is impaired. There is a drawback.
つまり、記録された情報の真正の保証とその情報の削除権の保証とが二律背反するジレンマが生じるという欠点が生じる。 In other words, a dilemma arises in which guaranteeing the authenticity of recorded information and guaranteeing the right to delete that information are contradictory.
特徴1は、かかる実情に鑑み考え出されたものであり、その目的は、記録された情報の真正の保証とその情報の削除権の保証とが二律背反するジレンマを解消することである。
[課題を解決するための手段]
[Means to solve the problem]
特徴1の主題は、例えば以下のような項目として示される。
(項目1)
記録対象の情報(例えば、個人情報)を暗号化する暗号化処理を行う暗号化手段(例えば、S174、S177、または、S228、S231、または、S478、S479)と、
前記暗号化処理を経た後の情報を記録する記録手段(例えば、S177及びブロックチェーン、または、S231、S240、S242、S244、ブロックチェーン及び個人情報DB29、または、S479及びブロックチェーン)と、
前記記録手段により記録された情報に対し、第1鍵と第2鍵とを用いて復号処理を行って平文の情報にする復号手段(例えば、S201、S202、S207~S209、または、S263~S271、または、S500~S510)と、
前記記録手段により記録された情報を復号できない復号不能化状態にする復号不能化手段(例えば、S191~S194、または、S250~S254、または、S494、S495、S485~S489)と、を備え、
前記復号手段は、前記第2鍵(例えば、片割れ共通鍵KA)を秘匿して保持する第2鍵秘匿保持手段(例えば、S194、または、S233、または、S475)を含み、
前記復号不能化手段は、前記第2鍵秘匿保持手段により保持されている前記第2鍵を他のもの(例えば、乱数R)に更新することにより復号不能化状態にする(例えば、S190~S194、または、S250~S254、または、S494、S495、S485~S489)、処理システム。
The subject matter of
(Item 1)
An encryption means (for example, S174, S177, or S228, S231, or S478, S479) that performs an encryption process to encode information to be recorded (for example, personal information);
A recording means for recording information after the encryption process (for example, S177 and blockchain, or S231, S240, S242, S244, blockchain and
A decryption means (for example, S201, S202, S207 to S209, or S263 to S271) performs a decryption process on the information recorded by the recording means using a first key and a second key to convert it into plaintext information. , or S500 to S510),
comprising a decoding disabling means (for example, S191 to S194, or S250 to S254, or S494, S495, S485 to S489) that puts the information recorded by the recording means into a decoding disabling state in which the information recorded by the recording means cannot be decoded;
The decryption means includes a second key secrecy holding means (for example, S194, S233, or S475) that keeps the second key (for example, half common key KA) confidential;
The decryption disabling means updates the second key held by the second key secrecy holding means to another key (for example, random number R) to disable decryption (for example, from S190 to S194). , or S250 to S254, or S494, S495, S485 to S489), a processing system.
(項目2)
前記復号手段は、前記第1鍵(例えば、片割れ共通鍵KB)を情報の閲覧希望者に配布する第1鍵配布手段(例えば、S200、S201、または、S2562、S263、または、S500、S501)をさらに含む、項目1に記載の処理システム。
(項目3)
前記記録手段により記録された情報を平文にすることなく検索する検索手段(例えば、S37~S40、S42~S45)をさらに備えている、項目1または2に記載の処理システム。
(Item 2)
The decryption means is a first key distribution means (for example, S200, S201, or S2562, S263, or S500, S501) that distributes the first key (for example, half common key KB) to those who wish to view the information. The processing system according to
(Item 3)
The processing system according to
(項目4)
前記記録手段により記録された情報は個人情報を含み、
前記復号不能化手段は、個人情報主の要求に応じて当該個人情報主の個人情報を前記復号不能化状態にする(例えば、S190~S194、または、S250~S254、または、S494、S495、S485~S489)、項目1~3の何れかに記載の処理システム。
(Item 4)
The information recorded by the recording means includes personal information,
The decoding means disables the decoding of the personal information of the personal information owner in response to a request from the personal information owner (for example, S190 to S194, or S250 to S254, or S494, S495, or S485). ~S489), the processing system according to any one of
(項目5)
記録対象の情報(例えば、個人情報)を暗号化する暗号化処理を行うステップ(例えば、S174、S177、または、S228、S231、または、S478、S479)と、
前記暗号化処理を経た後の情報を記録する記録手段(例えば、S177及びブロックチェーン、または、S231、S240、S242、S244、ブロックチェーン及び個人情報DB29、または、S479及びブロックチェーン)により記録された情報に対し、第1鍵と第2鍵とを用いて復号処理を行って平文の情報にする復号ステップ(例えば、S201、S202、S207~S209、または、S263~S271、または、S500~S510)と、
前記記録手段により記録された情報を復号できない復号不能化状態にするステップ(例えば、S191~S194、または、S250~S254、または、S494、S495、S485~S489)とを、
コンピュータに実行させ、
前記復号ステップは、前記第2鍵(例えば、片割れ共通鍵KA)を秘匿して保持するステップ(例えば、S194、または、S233、または、S475)を含み、
前記復号不能化状態にするステップは、前記保持するステップにより保持されている前記第2鍵を他のもの(例えば、乱数R)に更新することにより復号不能化状態にする(例えば、S190~S194、または、S250~S254、または、S494、S495、S485~S489)、プログラム。
(Item 5)
a step of performing an encryption process (for example, S174, S177, or S228, S231, or S478, S479) to encrypt information to be recorded (for example, personal information);
Recorded by a recording means (for example, S177 and blockchain, or S231, S240, S242, S244, blockchain and personal information DB29, or S479 and blockchain) that records the information after the encryption process. A decryption step in which information is decrypted using a first key and a second key to convert it into plaintext information (for example, S201, S202, S207 to S209, or S263 to S271, or S500 to S510) and,
A step (for example, S191 to S194, or S250 to S254, or S494, S495, or S485 to S489) of rendering the information recorded by the recording means in a decodable state in which it cannot be decoded;
make the computer run
The decryption step includes a step (for example, S194, S233, or S475) of keeping the second key (for example, half common key KA) secret;
The step of making the decryption impossible includes updating the second key held in the holding step to another key (for example, a random number R) to make the decryption impossible (for example, S190 to S194). , or S250 to S254, or S494, S495, S485 to S489), a program.
(特徴1の効果)
特徴1によれば、記録された情報の真正の保証とその情報の削除権の保証とが二律背反するジレンマを極力解消することができる。
(特徴2)
[技術分野]
(Effect of feature 1)
According to
(Feature 2)
[Technical field]
特徴2は、例えば、ブロックチェーン等で用いられているスマートコントラクトに関する。
[背景技術]
[Background technology]
スマートコントラクトは、契約のスムーズな検証、条件確認、執行、実行、交渉を意図したコンピュータプロトコルであり、従来からブロックチェーン等で用いられている。このスマートコントラクトは、契約や取引等を自動化するものとして従来から知られている(例えば、特許第6403177号)。
[特徴2の概要]
[特徴2が解決しようとする課題]
A smart contract is a computer protocol intended for smooth contract verification, condition confirmation, execution, execution, and negotiation, and has traditionally been used in blockchains and other systems. This smart contract has been known for automating contracts, transactions, etc. (for example, Japanese Patent No. 6403177).
[Summary of feature 2]
[Issues that Feature 2 attempts to solve]
このようなスマートコントラクトの分野においては、売買契約及び貸借契約等で代表される各種契約または各種取引等の法律行為をユーザ自身の代理として実行できる高度なスマートコントラクトが望まれている。 In the field of smart contracts, there is a demand for sophisticated smart contracts that can execute legal acts such as various contracts or transactions on behalf of users themselves, such as sales contracts and rental contracts.
係る実情に鑑み考え出された特徴2の目的は、ユーザ自身の代理として法律行為を実行できる高度なスマートコントラクトを提供することである。
[課題を解決するための手段]
特徴2の主題は、例えば以下のような項目として示される。
(項目1)
複数の自然人または法人が行った法律行為に関する情報を機械学習用のデータとして入力し一般的モデルを生成する機械学習手段(例えば、S80~S82)と、
前記一般的なモデルをユーザに適したモデルにパーソナライズ化するための手段であって、当該ユーザが行った法律行為に関する情報に基づいてパーソナライズ化するパーソナライズ化手段(例えば、S86~S88、またはS94~S98)と、
前記パーソナライズ化されたモデルを用いて当該ユーザの代理として法律行為を実行させるためのスマートコントラクトを生成するスマートコントラクト生成手段(例えば、S86~S88、またはS94~S98)と、を備えている、コンピュータシステム。
The purpose of
[Means to solve the problem]
The subject matter of
(Item 1)
Machine learning means (for example, S80 to S82) that inputs information regarding legal acts performed by multiple natural persons or legal entities as data for machine learning and generates a general model;
Means for personalizing the general model into a model suitable for the user, the personalizing means for personalizing based on information regarding legal acts performed by the user (for example, S86 to S88, or S94 to S98) and
A computer comprising: smart contract generation means (for example, S86 to S88, or S94 to S98) for generating a smart contract for executing a legal act on behalf of the user using the personalized model. system.
(項目2)
複数の自然人または法人が行った法律行為に関する情報を機械学習用のデータとして入力して生成された一般的なモデルをユーザに適したモデルにパーソナライズ化するための手段であって、当該ユーザが行った法律行為に関する情報に基づいてパーソナライズ化するパーソナライズ化手段(例えば、S80~S82、S86~S88、またはS94~S98)と、
前記パーソナライズ化されたモデルを用いて当該ユーザの代理として法律行為を実行させるためのスマートコントラクトを生成するスマートコントラクト生成手段(例えば、S86~S88、またはS94~S98)と、を備えている、コンピュータシステム。
(Item 2)
A means for personalizing a general model generated by inputting information about legal acts performed by multiple natural persons or legal entities as data for machine learning into a model suitable for the user, and personalization means (for example, S80 to S82, S86 to S88, or S94 to S98) for personalizing based on information related to legal acts;
A computer comprising: smart contract generation means (for example, S86 to S88, or S94 to S98) for generating a smart contract for executing a legal act on behalf of the user using the personalized model. system.
(項目3)
複数の自然人または法人が行った法律行為に関する情報を機械学習用のデータとして入力して生成された一般的なモデルをユーザに適したモデルにパーソナライズ化するための手段であって、当該ユーザが行った法律行為に関する情報に基づいてパーソナライズ化するパーソナライズ化手段(例えば、S80~S82、S86~S88、またはS94~S98)と、
前記パーソナライズ化されたモデルをスマートコントラクトとして用いて当該ユーザの代理として法律行為を実行させるサービスを提供するサービス提供手段(例えば、S99)と、を備えている、コンピュータシステム。
(Item 3)
A means for personalizing a general model generated by inputting information about legal acts performed by multiple natural persons or legal entities as data for machine learning into a model suitable for the user, and personalization means (for example, S80 to S82, S86 to S88, or S94 to S98) for personalizing based on information related to legal acts;
A computer system comprising: a service providing means (for example, S99) that provides a service for executing a legal act on behalf of the user using the personalized model as a smart contract.
(項目4)
前記サービス提供手段(例えば、S99)によるサービスの提供に伴い実行された法律行為に対する報酬を当該実行したモデルに与えることにより該モデルが前記報酬の累積を最大化する方策を学習する強化学習手段(例えば、S105~S108)をさらに備えた、項目3に記載のコンピュータシステム。
(Item 4)
Reinforcement learning means (for example, S99) for learning a policy for maximizing the accumulation of the reward by giving the model a reward for the legal act performed in connection with the provision of the service by the service providing means (for example, S99). For example, the computer system according to
(項目5)
予め定められたテーマ(例えば、政府が採用しようとしている政策や法律(例えば、消費増税に伴う軽減税率、改正出入国管理法、イギリスのEU(European Union)からの離脱、ベーシックインカムの部分的または全面的採用、日本国憲法9条の改正等)が採用されたと仮定した場合における、株取引や先物取引等の投資市場での取引シミュレーション、会社経営シミュレーション、または消費行動シミュレーション等)のシミュレーションをコンピュータ内で行って強化学習を進行させるコンピュータシステムであって、
前記シミュレーションのテーマにマッチする複数のペルソナに属するユーザ群を選定する選定手段(例えば、S344、S345)と、
前記選定手段により選定されたユーザ群を前記複数のペルソナ毎にグルーピングしてグループ毎にユーザ群が行った法律行為に関する情報を収集する収集手段(例えば、S346)と、
前記取集された法律行為に関する情報を学習データとして機械学習を行ってペルソナ毎に学習済みスマートコントラクトモデル群を生成する生成手段(例えば、S347)と、
前記生成された学習済みスマートコントラクトモデル群同士で法律行為を行うシミュレーションをコンピュータ内で実行するシミュレーション手段(例えば、S336~S339)と、を備え、
前記シミュレーション手段は、実行された法律行為に対する報酬を当該実行した学習済みスマートコントラクトモデルに与えることにより該学習済みスマートコントラクトモデルが前記報酬の累積を最大化する方策を学習する強化学習手段(例えば、S336、S338)を含む、コンピュータシステム。
(Item 5)
Predetermined themes (for example, policies and laws that the government is planning to adopt (for example, reduced tax rates due to consumption tax increase, amended immigration control law, UK's withdrawal from the European Union, partial or full basic income) 9 of the Japanese Constitution) is adopted, simulations of trading in the investment market such as stock trading and futures trading, company management simulation, consumption behavior simulation, etc.) can be performed in a computer. A computer system that advances reinforcement learning by using
selection means (for example, S344, S345) for selecting a group of users belonging to a plurality of personas that match the theme of the simulation;
a collection means (for example, S346) that groups the user group selected by the selection means into the plurality of personas and collects information regarding legal acts performed by the user group for each group;
A generating means (for example, S347) that performs machine learning using the collected information regarding legal acts as learning data to generate a learned smart contract model group for each persona;
a simulation means (for example, S336 to S339) that executes a simulation in a computer of performing a legal act between the generated learned smart contract models;
The simulation means is a reinforcement learning means (for example, S336, S338).
(項目6)
シミュレーションをコンピュータ内で行って強化学習を進行させるコンピュータシステムであって、
機械学習により生成された学習済みスマートコントラクトモデル群同士で法律行為を行うシミュレーションをコンピュータ内で実行し、実行された法律行為に対する報酬を当該実行した学習済みスマートコントラクトモデルに与えることにより該学習済みスマートコントラクトモデルが前記報酬の累積を最大化する方策を学習するシミュレーション強化学習処理を行う強化学習手段(例えば、S336、S338)を備えている、コンピュータシステム。
(Item 6)
A computer system that performs simulation in a computer to advance reinforcement learning,
By running a simulation in a computer in which a group of learned smart contract models generated by machine learning perform a legal act, and giving a reward for the executed legal act to the learned smart contract model, the trained smart contract model A computer system comprising reinforcement learning means (for example, S336, S338) that performs a simulation reinforcement learning process in which a contract model learns a policy that maximizes the accumulation of the reward.
(項目7)
前記学習済みスマートコントラクトモデル群の中から、前記強化学習手段による強化学習結果の成績に基づいて実際に使用する学習済みスマートコントラクトモデルを選抜する選抜手段(例えば、S340)をさらに含む、項目6に記載のコンピュータシステム。
(Item 7)
(注)
上記一般的なモデル生成用の「機械学習用のデータ」及びパーソナライズ化に用いる「機械学習用のデータ」は、「法律行為に関する情報」が含まれていれば事足り、「法律行為に関する情報」以外の情報(例えば、ウェブサイトへのアクセス履歴、GPS位置情報等)も含まれていてもよい。上記「スマートコントラクト生成手段」は、例えば、法律行為に関する情報により機械学習されたパーソナルアシスタント等の人工知能にスマートコントラクトとしての役割を担わせる場合も包含するものである。
(note)
The above-mentioned "machine learning data" for general model generation and "machine learning data" used for personalization only need to include "information related to legal acts," and other than "information related to legal acts." information (for example, access history to websites, GPS location information, etc.) may also be included. The above-mentioned "smart contract generation means" includes, for example, a case where an artificial intelligence such as a personal assistant, which is machine-learned based on information related to legal acts, is made to play the role of a smart contract.
(特徴2の効果)
特徴2によれば、各種の法律行為をユーザ自身の代理として実行できる高度なスマートコントラクトを提供可能となる。
(Effect of feature 2)
According to
(特徴3)
[技術分野]
特徴3は、例えば、政府が採用しようとしている政策や法律(例えば、消費増税に伴う軽減税率、改正出入国管理法、イギリスのEU(European Union)からの離脱、ベーシックインカムの部分的または全面的採用、日本国憲法9条の改正等)、マーケティング関連の条件(例えば、新商品(金融商品や生命保険を含む)や新サービスの価格や対価の設定、各種メディアによるプロモーション効果等)、投資市場関連の条件(例えば、先物取引における気象条件、株式市場における金融引き締め政策等)等の条件を設定し、その条件下でコンピュータ内においてシミュレーションを行い、どのようなシミュレーション結果になるかを事前に予測するコンピュータシステムに関する。
[背景技術]
(Feature 3)
[Technical field]
Characteristic 3 is, for example, the policy or law that the government is trying to adopt (e.g. reduced tax rate due to consumption tax increase, amended immigration control law, the UK's withdrawal from the EU (European Union), partial or full adoption of basic income). , amendments to
[Background technology]
この種のコンピュータシステムとして、国民が将来負担するべき負債や将来利用可能な資源を明確にして、政策レベルの意思決定を支援するために、純資産の変動計算書勘定を新たに設定し、当該年度の政策決定による資産変動を明確にするとともに、将来の国民の負担をシミュレーションできる会計処理方法が提案されている(例えば、特開2006-155233)。
[特徴3の概要]
[特徴3が解決しようとする課題]
As a computer system of this type, a new statement of changes in net assets account has been established to clarify the future debts that the people will have to bear and the resources that will be available in the future, and to support decision-making at the policy level. Accounting methods have been proposed that can clarify changes in assets due to policy decisions and simulate future burdens on citizens (for example, Japanese Patent Laid-Open No. 2006-155233).
[Summary of feature 3]
[Issues that Feature 3 attempts to solve]
このようなシミュレーションの分野においては、実社会における自然人や法人の営みを忠実に模したシミュレーションをコンピュータ内で実行し、現実世界との乖離を極力少なくしたシミュレーション結果を導出し得るコンピュータシステムが望まれる。 In the field of simulation, there is a need for a computer system that can run a simulation on a computer that faithfully imitates the activities of natural persons and corporations in the real world, and can derive simulation results with as little deviation from the real world as possible.
係る実情に鑑み考え出された特徴3の目的は、実社会における自然人や法人の営みを忠実に模したシミュレーションを可能にすることである。
[課題を解決するための手段]
The purpose of
[Means to solve the problem]
特徴3の主題は、例えば以下のような項目として示される。
(項目1)
予め定められた条件(例えば、政府が採用しようとしている政策や法律(例えば、消費増税に伴う軽減税率、改正出入国管理法、イギリスのEU(European Union)からの離脱、ベーシックインカムの部分的または全面的採用、日本国憲法9条の改正等)、マーケティング関連の条件(例えば、新商品(金融商品や生命保険を含む)や新サービスの価格や対価の設定、各種メディアによるプロモーション効果等)、投資市場関連の条件(例えば、先物取引における気象条件、株式市場における金融引き締め政策等)等の条件)の下でのシミュレーションをコンピュータ内で行うコンピュータシステムであって、
前記シミュレーションの条件にマッチする複数のペルソナに属するユーザ群を選定する選定手段(例えば、S144、S145)と、
前記選定手段により選定されたユーザ群を前記複数のペルソナ毎にグルーピングしてグループ毎にユーザ群が行った法律行為に関する情報を収集する収集手段(例えば、S146)と、
前記取集された法律行為に関する情報を学習データとして機械学習を行ってペルソナ毎に学習済みスマートコントラクトモデル群を生成する生成手段(例えば、S147)と、
前記生成された学習済みスマートコントラクトモデル群同士で法律行為を行うシミュレーションをコンピュータ内で実行するシミュレーション手段(例えば、S136~S139)と、
前記シミュレーション手段によるシミュレーションの結果を導出する導出手段(例えば、S140)と、を備え、
前記シミュレーション手段は、実行された法律行為に対する報酬を当該実行した学習済みスマートコントラクトモデルに与えることにより該学習済みスマートコントラクトモデルが前記報酬の累積を最大化する方策を学習する強化学習手段(例えば、S136、S138)を含む、コンピュータシステム。
The subject matter of
(Item 1)
Predetermined conditions (for example, policies or laws that the government is planning to adopt (e.g. reduced tax rate due to consumption tax increase, amended immigration control law, UK's withdrawal from the European Union, partial or full basic income) recruitment, amendments to
selection means (for example, S144, S145) for selecting a group of users belonging to a plurality of personas that match the conditions of the simulation;
a collection means (for example, S146) that groups the user group selected by the selection means into the plurality of personas and collects information regarding legal acts performed by the user group for each group;
a generation unit (for example, S147) that performs machine learning using the collected information regarding legal acts as learning data to generate a learned smart contract model group for each persona;
a simulation means (for example, S136 to S139) that executes a simulation in a computer of performing a legal act between the generated learned smart contract models;
derivation means (for example, S140) for deriving the results of the simulation by the simulation means,
The simulation means is a reinforcement learning means (for example, S136, S138).
(項目2)
シミュレーションをコンピュータ内で行うコンピュータシステムであって、
機械学習(例えば、S144~S146)により生成された学習済みスマートコントラクトモデル群同士で法律行為を行うシミュレーションをコンピュータ内で実行し、実行された法律行為に対する報酬を当該実行した学習済みスマートコントラクトモデルに与えることにより該学習済みスマートコントラクトモデルが前記報酬の累積を最大化する方策を学習する強化学習を進行させる強化学習手段(例えば、S136、S138)と、
前記強化学習手段による強化学習が進行した学習済みスマートコントラクトモデル群同士で法律行為を行うシミュレーションの結果を導出する導出手段(例えば、S140)と、を備えている、コンピュータシステム。
(特徴3の効果)
(Item 2)
A computer system that performs simulation within a computer,
A simulation in which a group of learned smart contract models generated by machine learning (for example, S144 to S146) perform a legal act is executed in a computer, and a reward for the executed legal act is transferred to the learned smart contract model that has been executed. Reinforcement learning means (for example, S136, S138) for proceeding with reinforcement learning in which the learned smart contract model learns a policy that maximizes the accumulation of the reward by giving
A computer system comprising: deriving means (for example, S140) for deriving a result of a simulation in which a group of learned smart contract models perform a legal act with each other through reinforcement learning performed by the reinforcement learning means.
(Effect of feature 3)
特徴3によれば、実社会における自然人や法人の営みを極力忠実に模したシミュレーションが可能になる。
[第3実施形態]
According to
[Third embodiment]
次に、第3実施形態を説明する。この第3実施形態は、リアルワールド(現実世界)のデジタルツインから構成されるミラーワールド(サイバー空間)内をシミュレーション環境にしてシミュレーションを行うことにより、例えば、未来を予測した最適解を導き出したり、DAO(Decentralized Autonomous Organization)におけるインセンティブ設計の最適解を導き出したり、AIの機械学習(例えば強化学習)を行ったりするシステムに関する。 Next, a third embodiment will be described. In this third embodiment, by performing a simulation in a mirror world (cyber space) consisting of a digital twin of the real world (real world) as a simulation environment, for example, an optimal solution that predicts the future can be derived, It relates to a system that derives the optimal solution for incentive design in a DAO (Decentralized Autonomous Organization) and performs AI machine learning (for example, reinforcement learning).
デジタルツインとは、現実世界の実体やシステムをデジタルで表現したものである。ミラーワールドとは、現実の国家、都市、社会、地方自治体、会社等の組織、人々といった、物理世界(リアルワールド)の情報がすべてデジタル化されたデジタルツインで構成される鏡像世界のことである。具体的には、人のデジタルツインを、例えば、当該人の行動(リアルとバーチャル両方の行動)等のライフログを知識として習得し当該人にとって最適な行為をアシスタントするための機械学習(例えばエージェントによる強化学習)を行ったアシスタントAI(以下「パーソナルAI」という)で構成する。この強化学習は、複数のパーソナルAIが協調して強化学習を行うマルチエージェント強化学習である。リアル世界の会社等の組織を構成している人々のパーソナルAIにより当該組織のデジタルツインを構成し、リアル世界の地方自治体を構成している人々のパーソナルAIにより当該地方自治体のデジタルツインを構成し、リアル世界の都市を構成している人々のパーソナルAIにより当該都市のデジタルツインを構成し、リアル世界の国家を構成している人々のパーソナルAIにより当該国家のデジタルツインを構成する。 A digital twin is a digital representation of a real-world entity or system. A mirror world is a mirror image world made up of digital twins in which all information from the physical world (real world), such as real countries, cities, societies, local governments, companies, and other organizations and people, is digitized. . Specifically, we will develop a digital twin of a person, such as machine learning (e.g., agent It consists of an assistant AI (hereinafter referred to as "personal AI") that has undergone reinforcement learning (reinforcement learning). This reinforcement learning is multi-agent reinforcement learning in which multiple personal AIs cooperate to perform reinforcement learning. The personal AI of the people who make up an organization such as a company in the real world constitutes the digital twin of the organization, and the personal AI of the people who make up the local government in the real world constitutes the digital twin of the local government. , the personal AI of the people who make up a city in the real world constitutes a digital twin of that city, and the personal AI of the people who make up a country in the real world constitutes a digital twin of that country.
この第3実施形態では、シミュレーション環境としてのミラーワールドの構築を、リアルワールドにおける現実の国家、都市、社会、地方自治体、会社等の組織及び人々等が自ら率先して参加して構築に協力する仕組みを用意する。具体的には、ミラーワールド内での各種シミュレーションを行うことによって、そのシミュレーションに参加しているデジタルツインのパーソナルAIを機械学習(例えば強化学習)させ、より高度に学習した学習済みパーソナルAIをリアル世界に還元(フィードバック)させる。このメリットの享受をインセンティブとして、リアルワールドの国家、都市、社会、地方自治体、会社等の組織及び人々等が自ら率先して参加してミラーワールドの構築に協力するように仕向ける。 In this third embodiment, real countries, cities, societies, local governments, companies, and other organizations and people in the real world take the initiative to participate and cooperate in building a mirror world as a simulation environment. Prepare a system. Specifically, by performing various simulations within the mirror world, the personal AI of the digital twin participating in the simulation is subjected to machine learning (e.g. reinforcement learning), and the trained personal AI that has learned to a higher level is made real. Give back (feedback) to the world. With the enjoyment of this benefit as an incentive, real world nations, cities, societies, local governments, companies, and other organizations and people are encouraged to take the initiative to participate and cooperate in building the mirror world.
図28を参照し、複数台のミラーワールドサーバ(ストレージサーバを含む)46が設置されたデータセンタ45において、ミラーワールドのデータが記憶されている。ミラーワールドサーバ46のハードウェア構成は、図1に示したユーザ端末16のハードウェア構成と同様であるため、ここではその図示及び説明の繰り返しを省略する。リアルワールド47における現実の国家(例えば日本国49)、都市50、社会、地方自治体、会社等の組織、人々及び地球48の情報がすべてデジタル化されたデジタルツイン(現実の国家デジタルツイン(例えば日本国デジタルツイン53)、都市デジタルツイン54、社会、地方自治体、会社等の組織、人々及び地球デジタルツイン52)で構成されたミラーワールド51全体が、デジタルデータとしてデータセンタ45に記憶されている。
Referring to FIG. 28, mirror world data is stored in a data center 45 in which a plurality of mirror world servers (including storage servers) 46 are installed. The hardware configuration of the
データセンタ45では、このミラーワールド51をシミュレーション環境としてシミュレーションを行い、例えば、シミュレーション最適化により未来を予見した最適解を導き出す。シミュレーションとしては、例えば、前述した、政府が採用しようとしている政策や法律(例えば、消費増税に伴う軽減税率、改正出入国管理法、イギリスのEU(European Union)からの離脱、ベーシックインカムの部分的または全面的採用、日本国憲法9条の改正等)が採用されたと仮定した場合における、株取引や先物取引等の投資市場での取引シミュレーション、会社経営シミュレーション、または消費行動シミュレーション等が考えられる。さらには、新商品(金融商品や生命保険を含む)や新サービスの各種メディアによるプロモーションのシミュレーション等でもよい。シミュレーション最適化によって導き出された最適解をリアルワールドにフィードバック(還元)し、最適解の恩恵をリアルワールドに提供する。また、シミュレーションにより機械学習(例えば強化学習)された学習済みパーソナルAIをリアルワールドに還元し、より高度な学習済みパーソナルAIによるタスクを遂行できるようにする。
The data center 45 performs a simulation using the
このパーソナルAIとスマートコントラクトとが連携することにより、前述した連携タイプのAIスマートコントラクトが構成される。なお、このデータセンタ45は、図1や図24に示したインターネット1に接続されている。図28では、各種ブロックチェーン2、3、4、SNS19、鍵登録センタ30等は図示を省略している。
By linking this personal AI and a smart contract, the above-mentioned linked type AI smart contract is configured. Note that this data center 45 is connected to the
図29は、ミラーワールド51における都市デジタルツイン54の具体例を示している。リアルワールド47の都市50内には、株式会社ABC56、人である太郎55及び太郎の一家56等がある。それらに対応する都市デジタルツイン54にも、株式会社ABCデジタルツイン59、太郎デジタルツイン(太郎のパーソナルAI)57及び太郎の一家デジタルツイン58等がある。これらのデータからなる都市デジタルツインデータがミラーワールドサーバ46に記憶されている。リアルワールド49での株式会社ABC56、人である太郎55及び太郎の一家56等の各種オブジェクトに変更(例えば、会社での人事異動や就職や退職、人についての結婚や出産等)があれば、対応する各種デジタルツインが変更後の内容にアップデートされる。このような都市デジタルツインデータが全ての都市毎にデータセンタ45に記憶されて日本国家49のデジタルツイン53のデータとなり、各国における都市デジタルツインデータが全ての都市毎にデータセンタ45に記憶されて各国国家のデジタルツインデータとなり、それら全てのデジタルツインデータにより、地球48のデジタルツイン52のデータとなる。
FIG. 29 shows a specific example of the city
具体例として、ミラーワールドサーバ46には、太郎デジタルツイン(太郎のパーソナルAI)57として、氏名:太郎、AI識別番号:82km9、パーソナルAIデータ、太郎のパーソナルデータ(例えば、ライフログ、プロフィール、嗜好データ、電子カルテデータ、バイタルデータ等)が記憶されている。太郎の一家デジタルツイン58として、氏名:太郎、桜、志郎、家族構成:夫、妻、長男、AI識別番号:82km9、11zk9、gf43yが記憶されている。株式会社ABCデジタルツイン59として、氏名:太郎、花子・・・三郎、役職:代表取締役、専務、部長・・・平社員、AI識別番号:82km9、ba935、2es14、・・・9w1c2が記憶されている。
As a specific example, the
ユーザ端末16とミラーワールドサーバ46とのメインルーチンプログラムのフローチャートを、図30~図33に基づいて説明する。図30Aを参照し、ユーザ端末16のCPU10は、シミュレーション環境としてのミラーワールド51への参加登録を依頼するメンバー登録依頼処理S555、シミュレーション準備応答処理S556、シミュレーション応答処理S557を実行する。ミラーワールドサーバ46のCPU10は、メンバー登録処理550、シミュレーション準備処理S551、シミュレーション処理S552を実行する。
A flowchart of the main routine program between the
メンバー登録処理とメンバー登録依頼処理とを図30Bに基づいて説明する。これら両処理は、ミラーワールド51をシミュレーション環境としたシミュレーションにデジタルツインとして参加したいメンバーを登録するためのものである。ユーザ端末16のCPU10は、メンバー登録依頼処理において、S560により登録申し込みを行うか否か判定し、登録申し込みを行わないと判定すればこのメンバー登録処理が終了してリターンする。登録申し込みを行うと判定すれば、S561において、登録申し込みに必要な所定事項をミラーワールドサーバ46へ送信すると共に、パーソナルAIを有していない人がいる場合はその旨とその人のブロックチェーンアドレスもミラーワールドサーバ46へ送信する。登録申し込みに必要な所定事項とは、具体的には、人のデジタルツインにおいては、当該人のパーソナルAIのAI識別番号とパーソナルAIデータ、家族のデジタルツインにおいては家族の氏名と家族構成とそれぞれのAI識別番号、会社のデジタルツインにおいては従業員の氏名、役職、それぞれのAI識別番号等である。
The member registration process and the member registration request process will be explained based on FIG. 30B. Both of these processes are for registering members who wish to participate as digital twins in a simulation using the
それをS565により受信したミラーワールドサーバ46のCPU10は、S566において、パーソナルAIを所有済みか否か判定する。S561により送信されてきた情報中に「パーソナルAIを有していない旨」の情報が含まれていた場合には制御がS567に進み、パーソナルAIの生成販売処理を行うが、「パーソナルAIを有していない旨」の情報が含まれていない場合には、制御がS568に進み、S562により送られてきたAI識別番号を含む所定事項をミラーワールド51に登録する。
The
S567に示されたパーソナルAIの生成販売処理を図31に基づいて説明する。ミラーワールドサーバ46のCPU10は、S573において、S565により受信したブロックチェーンアドレス(パーソナルAIを有していないユーザのブロックチェーンアドレス)に記録されている取引データ及びSNS等の投稿データを、ブロッチェーンから収集する。次に、S574において、取引データ及びSNS等の投稿データを学習データとして機械学習を行って学習済みのパーソナルAIを生成する。次に、S575において、その学習済みのパーソナルAIを対応するユーザに販売する。
The personal AI generation and sales process shown in S567 will be explained based on FIG. 31. In S573, the
S551に示されたシミュレーション準備処理及びS555に示されたシミュレーション準備応答処理を、図32に基づいて説明する。ミラーワールドサーバ46のCPU10は、S577において、シミュレーションの依頼を受けたか否か判定する。受けていないと判定した場合には、このシミュレーション準備処理が終了してリターンする。シミュレーションの依頼を受けたと判定した場合には制御がS578に進み、依頼されたシミュレーションにマッチするパーソナルAI群及びデジタルツインを割出す処理を行う。例えば、前述の消費増税に伴う軽減税率下での消費行動シミュレーションの場合には、一般消費者に相当するパーソナルAI群であって、性別、年代別、地域別、年収別等の人口統計に従った割合でパーソナルAI群、及び、軽減税率の対象となる消費財のメーカデジタルツインや販売店デジタルツイン等を割出す。次に、その割出されたパーソナルAI群及びデジタルツイン宛にシミュレーションの同意を求める処理を行う。具体的には、割出されたパーソナルAI群及びデジタルツインに対応するユーザ群各々のユーザ端末16へ、シミュレーションの内容を送信して同意するか否かを問う。
The simulation preparation process shown in S551 and the simulation preparation response process shown in S555 will be explained based on FIG. 32. In S577, the
割出されたパーソナルAI群及びデジタルツインに対応するユーザ群各々のユーザ端末16のCPU10は、送信されてきたシミュレーションの内容をS580で受信し、S581において、そのシミュレーションの実行メンバーへの参加に同意するか否か判定する。この判定は、パーソナルAIが判定してもよいが、ユーザ自身が判定してもよい。同意しないと判定した場合には、このシミュレーション準備応答処理が終了してリターンするが、同意すると判定した場合には、S582において、同意する旨をミラーワールドサーバ46へ返信する。
The
それをS583により受信したミラーワールドサーバ46のCPU10は、依頼されたシミュレーションを実行するのに必要な量の同意が得られたか否か判定する。得られたと判定した場合にはS584において、同意が得られたAI群及びデジタルツインをコピーしてシミュレーション対象としてミラーワールド51に登録する。その登録された状態が前述の図29に示されている。
The
一方、必要なパーソナルAI群及びデジタルツインから同意が得られていないと判定した場合には制御がS585に進み、不足しているパーソナルAI群及びデジタルツインにマッチするペルソナ群(メーカや販売店のデジタルツインに対応するペルソナを含む)を設定する処理を行い、S586において、各ペルソナに属するユーザ群(メーカや販売店に従事するユーザ群を含む)を選定し、S587において、ペルソナ毎に属するユーザ群をグループピングしてグループ毎にユーザ群の取引データ(メーカや販売店としての取引データを含む)をブロッチェーンから収集し、S588において、取引データを学習データとして機械学習を行ってペルソナ毎に学習済みのパーソナルAI群及びデジタルツインを生成して補充した上で、S584に進む。このS585~S588は、図9(B)のS344~S347と同様の処理であり、ここでは詳細な説明の繰り返しを省略する。 On the other hand, if it is determined that consent has not been obtained from the necessary personal AI group and digital twin, control proceeds to S585, and the persona group (manufacturer or retailer) that matches the missing personal AI group and digital twin In S586, a group of users belonging to each persona (including a group of users working at manufacturers and retailers) is selected, and in S587, users belonging to each persona are set. The groups are grouped and the transaction data of the user group (including transaction data as manufacturers and retailers) is collected from the blockchain for each group, and in S588, machine learning is performed using the transaction data as learning data to create a system for each persona. After generating and replenishing the learned personal AI group and digital twin, the process advances to S584. These steps S585 to S588 are the same processes as steps S344 to S347 in FIG. 9(B), and detailed description thereof will not be repeated here.
次に、S552に示したシミュレーション処理及びS557に示したシミュレーション応答処理の具体的制御を図33に基づいて説明する。S593~S595は、前述した図9のS336、S338、S339、図12のS136、S138、S139と同様の処理であり、ここでは詳細な説明を省略する。S596において、シミュレーション結果をシミュレーションの依頼者に通知する。具体的には、シミュレーション結果をシミュレーション依頼者のユーザ端末16に送信する。次に、S597において、シミュレーションに用いた各パーソナルAI(会社組織等のデジタルツインに従事するパーソナルAIを含む)を各々の所持者のユーザ端末16に送信する。
Next, specific control of the simulation process shown in S552 and the simulation response process shown in S557 will be explained based on FIG. 33. S593 to S595 are the same processes as S336, S338, and S339 in FIG. 9 and S136, S138, and S139 in FIG. 12 described above, and detailed description thereof will be omitted here. In S596, the simulation result is notified to the simulation requester. Specifically, the simulation results are transmitted to the
それをS598で受信したユーザ端末16のCPU10は、S599において、受信したパーソナルAIを消去するか否か判定する。受信したパーソナルAIは、シミュレーションに参加して強化学習(機械学習)された学習済みAIであり、その分性能がアップしており高度なタスク処理を実行することが可能である。しかし、シミュレーションの内容によっては、ユーザが望まない強化学習(機械学習)を受けている場合もあるため、そのような場合には、S599によりYESと判定し、S601において、受信したパーソナルAIを消去する。一方、シミュレーションがユーザの望む内容であり、受信したパーソナルAIが望ましい強化学習(機械学習)を受けていると認定した場合には、制御がS600に進み、受信した学習済みパーソナルAIを上書き保存する。その結果、ユーザは、望ましい強化学習(機械学習)を受けて性能がアップしたパーソナルAIを得ることができる利点がある。この利点の享受をインセンティブとして、リアルワールドの国家、都市、社会、地方自治体、会社等の組織及び人々等が自ら率先して参加してミラーワールドの構築に協力するように仕向けることができる。このS600によりパーソナルAIを上書き保存することにより、ミラーワールドサーバ46において、上書き保存された後の新たなパーソナルAIのデジタルツイン及び新たなパーソナルAIからなる組織のデジタルツインにデータがアップデートされる(図29参照)。なお、上書き保存ではなく、既存のパーソナルAIと学習済みパーソナルAIとの両者を共に記憶しておき、必要に応じて使い分けるようにしてもよい。
The
次に、ミラーワールド内をシミュレーション環境にしてシミュレーションを行うことにより、DAOにおけるインセンティブ設計の最適解を導き出すシステムを、図34~図59に基づいて説明する。図34(A)は、マルチ役務DAO構築システムの概略図である。例えば、ビットコインはDAOの一種であるが、ノード(マイナー)がマイニング(記帳権の競争)という1種類の役務のみを担っており、マイニングに成功した者にビットコインを付与するといインセンティブを与えることによりブロックが追加され、ビットコインのシステムが自律的に継続される。これに対し、役務が複数種類存在するDAOをマルチ役務DAOという。例えば、会社組織のDAOの場合、資材調達、組立、宣伝、販売等の複数の役務が存在し、それら複数の役務を実行したノードに対しどのような割合でどの程度の報酬を分配すれば最適なインセンティブ設計となるのかが困難な問題となる。このようなマルチ役務DAOにおけるインセンティブ設計の最適解を導き出すシステムを説明する。 Next, a system for deriving an optimal solution for incentive design in a DAO by performing a simulation using the mirror world as a simulation environment will be described based on FIGS. 34 to 59. FIG. 34(A) is a schematic diagram of a multi-service DAO construction system. For example, Bitcoin is a type of DAO, but nodes (miners) only perform one type of service: mining (competing for bookkeeping rights), and those who succeed in mining are given an incentive to receive Bitcoin. This allows blocks to be added and the Bitcoin system to continue autonomously. On the other hand, a DAO in which multiple types of services exist is called a multi-service DAO. For example, in the case of a DAO of a company organization, there are multiple services such as material procurement, assembly, advertising, sales, etc., and what is the optimal ratio and how much reward should be distributed to the nodes that performed these multiple services? The difficult question is whether the incentive design will be appropriate. A system for deriving an optimal solution for incentive design in such a multi-service DAO will be described.
図34(A)を参照し、マルチ役務DAOデータを記憶しているミラーワールドサーバ46が、DAOエージェント61、役務1を行うペルソナエージェント群62、役務2を行うペルソナエージェント群63、・・・役務nを行うペルソナエージェント群64のデータを記憶している。さらに、ミラーワールドサーバ46は、強化学習に伴って各ペルソナエージェント群に与えられる報酬r1、r2、・・・rnの種類も記憶している。
Referring to FIG. 34(A), the
マルチ役務DAO構築業者の端末16が、DAOエージェント61と、必要なペルソナエージェント群と、報酬r1、r2、・・・rnの種類とを、ミラーワールドサーバ46からダウンロードしてインストールする。端末16は、パブリックチェーン4を構成する各ノード19である。この各ノード19で構成されたパブリックチェーン4で運用されるマルチ役務DAO65のデジタルツイン66を、ミラーワールド51内でシミュレーション強化学習を行い、マルチ役務DAOにおけるインセンティブ設計の最適解を導き出す。そのインセンティブ設計の最適解を、リアルワールド47における実際のマルチ役務DAO65に適用し、最適なインセンティブ設計のマルチ役務DAO65を作り上げる。このミラーワールド51内でのシミュレーション強化学習は、ミラーワールドサーバ46において実行される。その制御を以下に説明する。
The terminal 16 of the multi-service DAO construction company downloads and installs the
図34(B)を参照し、端末16のCPU10は、S606においてシミュレーション強化学習準備応答処理を行い、S607においてシミュレーション強化学習応答処理を行う。
Referring to FIG. 34(B), the
ミラーワールドサーバ46のCPU10は、S611においてシミュレーション強化学習準備処理を行い、S612においてシミュレーション強化学習処理を行い、S613においてDAOエージェント強化学習処理を行う。
The
S611に示したシミュレーション強化学習準備処理及びS606に示したシミュレーション強化学習準備応答処理の具体的制御を図35に基づいて説明する。シミュレーション強化学習準備応答処理において、端末16のCPU10は、S615において、シミュレーション強化学習を依頼するか否か判定する。依頼しない場合にはこのシミュレーション学習準備応強化答処理が終了してリターンする。依頼する場合は制御がS616に進み、マルチ役務DAOデータをミラーワールドサーバ46へ送信して依頼する。このマルチ役務DAOデータには、役務の種類が含まれている。例えば、図36~図42において後述するイノベーション誘発DAOの場合は、役務が、アイデア発案、改良発案、事業化、侵害発見、トークン購入の5種類存在し、それらの役務を送信する。
Specific control of the simulation reinforcement learning preparation process shown in S611 and the simulation reinforcement learning preparation response process shown in S606 will be explained based on FIG. 35. In the simulation reinforcement learning preparation response process, the
それをS620で受信したミラーワールドサーバ46のCPU10は、S621により、マルチ役務の各々にマッチするペルソナ群を設定する。例えば、上記イノベーション誘発DAOの場合は、アイデア発案及び改良発案のペルソナ群として発明をよく考え出す人々、事業化のペルソナ群として事業化に興味のある人々、侵害発見のペルソナ群として特許法や著作権法に詳しい人々、トークン購入のペルソナ群として投資に興味のある人々等が考えられる。
The
次に、S622において、各ペルソナに属するユーザ群を選定する。例えば、上記イノベーション誘発DAOの場合は、アイデア発案及び改良発案のペルソナ群に属するユーザ群として特許出願の発明者として掲載されているユーザ群、事業化のペルソナ群に属するユーザ群として会社の経営者のユーザ群、侵害発見のペルソナ群に属するユーザ群として弁理士や弁護士のユーザ群、トークン購入のペルソナ群に属するユーザ群としてビットコイン等の仮想通貨を購入したことのあるユーザ群等が考えられる。 Next, in S622, a user group belonging to each persona is selected. For example, in the case of the above-mentioned innovation-inducing DAO, users who are listed as inventors of patent applications belong to the persona group of idea generation and improvement proposals, and company managers belong to the persona group of commercialization. The user group that belongs to the infringement discovery persona group is a user group of patent attorneys and lawyers, and the user group that belongs to the token purchase persona group is a user group that has purchased virtual currencies such as Bitcoin. .
次に、S623において、ペルソナ毎に属するユーザ群をグループピングしてグループ毎にユーザ群の取引データをブロッチェーンから収集し、S624において、取引データを学習データとして機械学習を行ってペルソナ毎に学習済みのペルソナエージェント群を生成する。これら両制御は、前述した図9(B)のS346、S347と同様の処理であり、ここでは詳細な説明の繰り返しを省略する。次に、S625において、ペルソナエージェント群をマルチ役務DAO65内に配備してマルチ役務DAOデジタルツイン66を生成し、シミュレーション対象としてミラーワールド51に登録する。その状態が図36に示されている。
Next, in S623, users belonging to each persona are grouped and transaction data of the user group is collected from the blockchain for each group, and in S624, machine learning is performed using the transaction data as learning data to learn for each persona. Generate a set of completed persona agents. These two controls are the same processes as S346 and S347 in FIG. 9(B) described above, and repeated detailed explanations will be omitted here. Next, in S625, a group of persona agents is deployed in the
図36を参照し、パブリックチェーンからなるマルチ役務DAO65のデジタルツイン66をミラーワールド51に構築する。マルチ役務DAOデジタルツイン66には、上記S625においてペルソナエージェント群が配備されて各ノード毎に1つずつペルソナエージェントが配備された状態となっている。それらペルソナエージェントの識別番号が、各役務(アイデア発案、改良発案、事業化、侵害発見、トークン購入)毎に分類されてミラーワールドサーバ46に記憶されている。例えば、アイデア発案役務のペルソナエージェントの識別番号として、kc29m,1w13a,・・・9nad8がミラーワールドサーバ46に記憶されている。このマルチ役務DAO65は、前述したイノベーション誘発DAOであり、以降、イノベーション誘発DAOを例としてマルチ役務DAOを説明する。
Referring to FIG. 36, a
さらに、ミラーワールドサーバ46には、各ペルソナエージェントの行為に対し報酬(インセンティブ)を与えるDAOエージェントも記憶されている。このDAOエージェントが、与える報酬の分配割合や報酬額を強化学習(機械学習)することにより、インセンティブ設計の最適解を導き出す。その強化学習(機械学習)の概略システムを図37に示す。
Furthermore, the
図37を参照し、ペルソナエージェント群がオリジンのアイデア投稿をアクションa11、a12、・・・a1nとして行えば、環境の状態S1がDAOエージェント61に入力され、それらアイデア発案役務を行ったペルソナエージェント群67に対し報酬r11、r12、・・・r1nが与えられる。このアイデア発案役務は、夢やアイデア、ビジネスプラン、技術思想、著作物等の発案を包含する広い概念である。環境の状態S1は、アイデア発案役務を行ったペルソナエージェント群67にも与えられる。この環境の状態S1は、例えば、オリジンアイデア投稿内容、アイデア発案役務を行ったペルソナエージェント68各々に報酬として与えられたトークンA1の変動相場の価格等である。
Referring to FIG. 37, when a group of persona agents posts an origin idea as actions a11, a12, . Rewards r11, r12, . . . r1n are given to 67. This idea generation service is a broad concept that includes ideas such as dreams, ideas, business plans, technical ideas, and copyrighted works. The environmental state S1 is also given to the
上記オリジンのアイデアに対しペルソナエージェント群68が改良案の投稿等のアクションa21、a22、・・・a2を行えば、環境の状態S2がDAOエージェント61に入力され、それら改良案役務を行ったペルソナエージェント群68に対し報酬r21、r22、・・・r2nが与えられる。環境の状態S1は、改良案役務を行ったペルソナエージェント群68にも与えられる。この環境の状態S2は、例えば、改良案投稿内容、改良案投稿に付与された「いいね!」の数等である。この「いいね!」を付与する主体は、例えば上記オリジンアイデアの投稿に対し報酬として付与されたトークンA1を購入した者(ペルソナエージェント群71)のみに限定している。このように、「いいね!」の付与主体を利害関係人(ステークフォルダ)に限定(制限)する理由は、不正行為を防止するためである。「いいね!」の付与主体を無制限に広げた場合、例えば、改良案の投稿を行った者(ペルソナエージェント群68)が多数の者(ペルソナエージェント)と結託して多数の「いいね!」を付けてもらう等の不正行為を防止するためである。事業化役務を行ったペルソナエージェント群69及び侵害対処役務を行ったペルソナエージェント群70への「いいね!」の付与主体も、同様の理由により、トークンA1を購入した者(ペルソナエージェント群71)のみに限定している。 When the persona agent group 68 performs actions a21, a22, . Rewards r21, r22, . . . r2n are given to the agent group 68. The environmental state S1 is also given to the persona agent group 68 that performed the improvement plan service. The state S2 of this environment is, for example, the content of the improvement proposal posting, the number of "likes" given to the improvement proposal posting, and the like. The entities that give this "Like!" are limited to, for example, those who purchased the token A1 given as a reward for posting the origin idea (persona agent group 71). In this way, the reason for limiting (restricting) who gives "Likes" to interested parties (stakeholders) is to prevent fraudulent acts. If the parties that give likes are unlimited, for example, the person who posted the improvement proposal (persona agent group 68) colludes with many people (persona agents) and receives a large number of likes. This is to prevent fraudulent acts such as asking someone to attach a . The person who gave "Like" to the persona agent group 69 who performed commercialization services and the persona agent group 70 who performed infringement handling services was also the person who purchased token A1 for the same reason (persona agent group 71). It is limited to only.
上記オリジンのアイデアに対し事業化役務を行ったペルソナエージェント群69がアクションa31、a32、・・・a3nを行えば、環境の状態S3がDAOエージェント61に入力され、それら事業化役務を行ったペルソナエージェント群69に対し報酬r31、r32、・・・r3nが与えられる。ペルソナエージェント群69のアクションa31、a32、・・・a3nとしては、例えば、事業計画書の投稿、事業化の進行状況の投稿、実際の事業化遂行の状況の投稿、事業化された事業による収益額の投稿等が考えられる。環境の状態S3は、事業化役務を行ったペルソナエージェント群69にも与えられる。この環境の状態S3は、例えば、事業計画書の投稿や事業化の進行状況の投稿、事業化された事業による収益額の投稿等に付与された「いいね!」の数等である。
When the persona agent group 69 who performed commercialization services for the above-mentioned origin idea performs actions a31, a32, ... a3n, the environmental state S3 is input to the
上記オリジンのアイデアに対し侵害対処役務を行ったペルソナエージェント群70がアクションa41、a42、・・・a4nを行えば、環境の状態S4がDAOエージェント61に入力され、それら侵害対処役務を行ったペルソナエージェント群70に対し報酬r41、r42、・・・r4nが与えられる。ペルソナエージェント群70のアクションa31、a32、・・・a3nとしては、例えば、侵害発見の報告投稿、侵害対処報告投稿、ライセンス交渉報告投稿等が考えられる。さらには、これら役務の前提となる特許出願の報告投稿やその権利化の報告投稿役務も含めてもよい。環境の状態S4は、侵害対処役務を行ったペルソナエージェント群70にも与えられる。この環境の状態S4は、例えば、侵害発見の報告投稿、侵害対処報告投稿、ライセンス交渉報告投稿等に付与された「いいね!」の数等である。
When the persona agent group 70 that performed infringement handling services for the above-mentioned origin idea performs actions a41, a42, ... a4n, the environmental state S4 is input to the
ペルソナエージェント群が上記オリジンのアイデア発案役務に対し付与されたトークンA1を購入する役務をアクションa51、a52、・・・a5nとして行えば、環境の状態S5がDAOエージェント61に入力され、それらトークン購入役務を行ったペルソナエージェント群71に対し報酬r51、r52、・・・r5nが与えられる。環境の状態S5は、トークン購入役務を行ったペルソナエージェント群71にも与えられる。この環境の状態S5は、例えば、トークンの購入数(または購入金額)等である。ペルソナエージェント群71は、仮想通貨(例えばEthereumのETH等)を消費してトークンA1を購入する。なお、購入したトークンは、変動相場での価格に従って仮想通貨に変換(換金)でき、その仮想通貨は、変動相場での価格に従って円やドル等の法定通貨に変換(換金)できる。
When the persona agents perform the service of purchasing the token A1 granted for the idea generation service of the origin as actions a51, a52, ... a5n, the environmental state S5 is input to the
各ペルソナエージェント群に付与する報酬r1~r5は、DAOエージェント61が報酬テーブル(図39(A)参照)に基づいて決定する。アイデア発案役務を行ったペルソナエージェントに対しては、r1=A1+B1・b+G1・g、改良役務を行ったペルソナエージェンに対しては、r2=A2・e+B2・b+G2・g、事業化役務を行ったペルソナエージェントに対しては、r3=A3・e+B3・b、侵害対処役務を行ったペルソナエージェントに対しては、r4=A4・e+B4・b+G4・g、トークン購入役務を行ったペルソナエージェントに対しては、r5=B5・b+G5・gと、決定する。
The rewards r1 to r5 to be given to each persona agent group are determined by the
ここに、A2~A4,B1~B5,G1,G2,G4,G5は、係数であり、DAOエージェント61が強化学習により最適なものに収束させる。A1はトークン、gはライセンス収入、eは「いいね!」の数、bは事業化収益である。
Here, A2 to A4, B1 to B5, G1, G2, G4, and G5 are coefficients, and the
なお、各ペルソナエージェント群68~71が役務を行った後に発生したライセンス収入gまたは事業化収益bのみが報酬r2~r5として考慮される。ライセンス収入gまたは事業化収益bが既に発生しているオリジンアイデアに対し後から改良役務やトークン購入役務を行うという不正行為を防止するためである。 Note that only the license income g or commercialization income b generated after each persona agent group 68 to 71 performs the service is considered as the remuneration r2 to r5. This is to prevent fraudulent activity in which improvement services or token purchase services are later performed on an origin idea for which license income g or commercialization income b has already been generated.
また、改良役務、事業化役務、または侵害対処役務を行ったペルソナエージェント群が併せてトークン購入役務を行ってもよい。さらに、アイデア発案役務を行ったペルソナエージェント群67が、併せて改良役務、事業化役務、または侵害対処役務を行ってもよい。
Furthermore, a group of persona agents that have performed improvement services, commercialization services, or infringement response services may also perform token purchase services. Furthermore, the
S613に示したDAOエージェント強化学習処理の詳細を図38に基づいて説明する。この処理は、DAOエージェント61が自ら強化学習を行い報酬r1~r5の最適化を図るものである。DAOエージェント61は、S630において、ペルソナエージェント群の各行為aを受信したか否か判定する。受信していない場合はS632へ進むが、受信していると判定した場合には制御がS631へ進み、受信した各行為aを記憶する。
Details of the DAO agent reinforcement learning process shown in S613 will be explained based on FIG. 38. In this process, the
S632において、「いいね!」が付与されたか否か判定し、付与されていない場合にはS634へ進むが、付与されていると判定した場合にはS633において、ペルソナエージェント毎にいいね!eを記憶する。S634において、事業化収益があったか否か判定し、ない場合にはS636へ進むが、あったと判定した場合にはS635において、事業化収益bを記憶する。S636において、ライセンス利益gがあったか否か判定し、ない場合にはS638に進むが、あったと判定した場合には、S637において、ライセンス利益gを記憶する。 In S632, it is determined whether or not "Like" has been given. If "Like" has not been given, the process proceeds to S634, but if it is determined that "Like" has been given, in S633, a "Like" has been given for each persona agent. Remember e. In S634, it is determined whether or not there is commercialization profit. If there is not, the process proceeds to S636, but if it is determined that there is, commercialization profit b is stored in S635. In S636, it is determined whether or not there is a license profit g. If there is not, the process proceeds to S638, but if it is determined that there is, the license profit g is stored in S637.
S638において、報酬算出時期になったか否か判定し、なっていない場合にはS640に進むがなったと判定した場合には、S639において、報酬テーブル(図39(A))を参照して各報酬r1~r5を算出して該当するペルソナエージェントへ付与する。S640において、学習更新時期になったか否か判定し、なっていない場合にはこのDAOエージェント強化学習処理が終了してリターンする。学習更新時期になったと判定した場合にはS641において、報酬として付与したトークンA1のトータル付与価格TTと付与したトークンの変動相場における現時点のトータル価格TBとを算出し、S642において、TB/TTの値からDAOエージェントの報酬Rを算出する。例えば、前回の学習更新時におけるTB/TTの値と今回の学習更新時におけるTB/TTの値とを比較し、今回の学習更新時におけるTB/TTの値の方が大きい場合に大きな報酬Rにし、小さい場合に小さな報酬Rにする。その結果、DAOエージェント61が得ることのできる報酬Rは、トークンの変動相場におけるトータル価格TBが高騰すれば大きくなり、トークンの変動相場におけるトータル価格TBが下落すれば小さくなる。
In S638, it is determined whether or not the remuneration calculation time has come. If it is not, the process proceeds to S640. If it is determined that the time has come, in S639, each remuneration is calculated with reference to the remuneration table (FIG. 39(A)). Calculate r1 to r5 and give it to the corresponding persona agent. In S640, it is determined whether the learning update time has come, and if it has not, the DAO agent reinforcement learning process ends and returns. If it is determined that it is time to update the learning, in S641, the total given price TT of the token A1 given as a reward and the current total price TB in the fluctuating market of the given token are calculated, and in S642, the TB/TT is calculated. Calculate the DAO agent's reward R from the value. For example, compare the value of TB/TT at the time of the previous learning update and the value of TB/TT at the time of the current learning update, and if the value of TB/TT at the time of the current learning update is larger, the reward R will be larger. and if the reward R is small, the reward R is small. As a result, the reward R that the
次に、S643において、報酬Rに基づいて、TD学習により最適政策π*に従った行為A1~A4,B1~B5,G1,G2,G4,G5を求める処理が行われ、S644において、報酬テーブルのA1~A4,B1~B5,G1,G2,G4,G5を、求められた行為A1~A4,B1~B5,G1,G2,G4,G5に更新する。その結果、DAOエージェント61は、トークンの変動相場におけるトータル価格TBを高騰させるための最適な行為A1~A4,B1~B5,G1,G2,G4,G5を学習することになる。なお、この学習目標は一例に過ぎず、学習目標としては、他に、オリジンアイデアの投稿数を増加させること、オリジンアイデアと改良案との投稿合計数を増加させること、事業化件数を増加させること、事業化収益合計を増加させること等であってもよい。
Next, in S643, based on the reward R, TD learning is performed to obtain the actions A1 to A4, B1 to B5, G1, G2, G4, and G5 according to the optimal policy π * , and in S644, the reward table is Update A1-A4, B1-B5, G1, G2, G4, G5 to the requested actions A1-A4, B1-B5, G1, G2, G4, G5. As a result, the
次に、S645において、強化学習が完了したか否か判定し、未だ完了していない場合はリターンする。完了したと判定した場合にはS646において、シミュレーション強化学習の依頼者に学習済みマルチ役務DAOを送信する。 Next, in S645, it is determined whether the reinforcement learning has been completed, and if it has not been completed, the process returns. If it is determined that the process has been completed, the learned multi-service DAO is transmitted to the simulation reinforcement learning requester in S646.
シミュレーション強化学習の依頼者は、インセンティブ設計が最適化された学習済みのマルチ役務DAO(イノベーション誘発DAO)65をリアルワールド47で運用することができる。その結果、このマルチ役務DAO(イノベーション誘発DAO)65では、図37に示した「各ペルソナエージェント群67~71」が、実際のユーザ群となり、各役務を行うユーザ群に対し、学習済みDAOエージェント61により最適設計された報酬(インセンティブ)が分配される。このリアルワールド47での実際の運用の段階では、各投稿内容等の役務やトークンの売買取引内容等をブロックチェーンにタイムスタンプ付きで記録させる。その結果、ブロックチェーンが、オリジンアイデア投稿内容や改良案投稿内容に対する公証人の役目を果たしてくれ、新規性喪失の例外適用(特許法30条)や冒認出願対策(特許法49条1項7行、74条、123条1項2号)も行いやすくなる。
A requester of simulation reinforcement learning can operate a trained multi-service DAO (innovation-inducing DAO) 65 with an optimized incentive design in the
また、マルチ役務DAO(イノベーション誘発DAO)65をリアルワールド47で運用する段階においても、DAOエージェント61により引き続き機械学習(強化学習)を続行させ、自際の運用状況にマッチしたより一層最適にインセンティブ設計されたものになるようにしてもよい。なお、学習済みの各ペルソナエージェント群67~71(図40(A)(B)及び図41(A)(B)による学習済みのペルソナエージェント群)もマルチ役務DAO(イノベーション誘発DAO)65に含めてシミュレーション強化学習の依頼者に送信し、各役務を行うユーザ群に対し各ペルソナエージェント群67~71が相談役として機能させてもよい。さらには、マルチ役務DAO(イノベーション誘発DAO)65をリアルワールド47で運用する段階において、各役務をユーザ群と各ペルソナエージェント群67~71との両者が実行する混在型のマルチ役務DAO65にしてもよく、また、各役務を各ペルソナエージェント群67~71のみが実行するペルソナエージェント運用型のマルチ役務DAO(イノベーション誘発DAO)65にしてもよい。なお、このイノベーション誘発DAOは、前述のミラーワールドでのシミュレーション強化学習を経て生成されるものに限定されず、他の方法、例えば人為的な設計に基づいて人為的に生成されるものであってもよく、さらには、DAOに限らず、特定の管理者や主体を持った組織(例えば通常の株式会社等)であってもよい。
In addition, even at the stage of operating a multi-service DAO (innovation-inducing DAO) 65 in the
次に、図39(B)に基づいてペルソナエージェントが強化学習を行う処理のメインルーチンを説明する。S648において、アイデア発案役務実行処理が行われ、S649において、改良役務実行処理が行われ、S650において、事業化役務実行処理が行われ、S651において、侵害対処役務実行処理が行われ、S652において、トークン購入役務実行処理が行われる。 Next, the main routine of the process in which the persona agent performs reinforcement learning will be explained based on FIG. 39(B). In S648, an idea generation service execution process is performed, in S649, an improvement service execution process is performed, in S650, a commercialization service execution process is performed, in S651, an infringement response service execution process is performed, and in S652, Token purchase service execution processing is performed.
S648に示したアイデア発案役務実行処理の詳細を図40(A)に基づいて説明する。S655において、アイデア発案を行うか否か判定し行わない場合にはリターンする。行うと判定した場合には、S656において、アイデアを創出する処理を行う。このアイデアの創出は、例えばDABUSというAIを利用する。例えば、ペルソナエージェント67とDABUSとが協働してアイデアの創出を行う。S657において、アイデア発案の投稿内容を生成し、S658において、アイデア発案投稿行為a1iを実行する。
Details of the idea generation service execution process shown in S648 will be explained based on FIG. 40(A). In S655, it is determined whether or not to generate an idea, and if not, the process returns. If it is determined to do so, in S656, a process of creating an idea is performed. The creation of this idea uses an AI called DABUS, for example. For example,
S659において、DAOエージェント61から報酬r1iを受信したか否か判定し、受信していない場合にはリターンする。受信したと判定した場合には、S660において、報酬r1iに基づいて、TD学習により最適政策π*に従った行為aを求める。この行為aは、受け取った報酬r1iが満足できるものであればアイデア発案の行為を繰り返し継続することになるが、報酬r1iが満足できるものでなければ、他の行為(例えば、改良役務、事業化役務、侵害対処役務、トークン購入役務、あるいはなにも役務を行わない)を選択することとなる。
In S659, it is determined whether the reward r1i has been received from the
S649に示された改良役務実行処理の詳細を図40(B)に基づいて説明する。S664において、改良案を投稿するか否か判定し、投稿しない場合にはリターンする。投稿すると判定した場合にはS665において改良案を創出する処理を行う。改良案の創出は、例えばDABUSというAIを利用する。例えば、ペルソナエージェント68とDABUSとが協働して改良案を創出する処理を行う。S666において改良案投稿内容を生成し、S667において、改良案投稿行為a2iを実行する。 Details of the improved service execution process shown in S649 will be explained based on FIG. 40(B). In S664, it is determined whether or not to post the improvement proposal, and if it is not posted, the process returns. If it is determined to post, a process of creating an improvement plan is performed in S665. For example, an AI called DABUS is used to create improvement plans. For example, the persona agent 68 and DABUS collaborate to create an improvement plan. In S666, the content of the improvement proposal posting is generated, and in S667, the improvement proposal posting action a2i is executed.
S668において、DAOエージェント61から報酬r2iを受信したか否か判定し、受信していない場合にはリターンする。受信したと判定した場合には、S669において、報酬r2iに基づいて、TD学習により最適政策π*に従った行為aを求める。この行為aは、受け取った報酬r2iが満足できるものであれば改良案投稿の行為を繰り返し継続することになるが、報酬r2iが満足できるものでなければ、他の行為(例えば、アイデア発案役務、事業化役務、侵害対処役務、トークン購入役務、あるいはなにも役務を行わない)を選択することとなる。
In S668, it is determined whether the reward r2i has been received from the
S650に示された事業化役務実行処理の詳細を図41(A)に基づいて説明する。S674において、事業化するか否か判定し、事業化しない場合はリターンする。事業化すると判定した場合は、S675において、事業計画書を生成し、S676において、事業計画書の投稿行為a3iを実行し、S677において、事業化役務を遂行し、S678において、遂行状況投稿行為a3iを実行する。この遂行状況投稿行為a3iには、前述した事業化により得た収益の投稿等も含まれる。 Details of the commercialization service execution process shown in S650 will be explained based on FIG. 41(A). In S674, it is determined whether or not to commercialize the process, and if the process is not commercialized, the process returns. If it is determined to be commercialized, a business plan is generated in S675, a business plan posting act a3i is executed in S676, a commercialization service is performed in S677, and an execution status posting act a3i is executed in S678. Execute. This performance status posting act a3i also includes posting of profits obtained from commercialization as described above.
S679において、DAOエージェント61から報酬r3iを受信したか否か判定し、受信していない場合はリターンする。受信していると判定した場合はS680において、受信した報酬r3iに基づいて、TD学習により最適政策π*に従った行為aを求める。この行為aは、受け取った報酬r3iが満足できるものであれば事業化役務の行為を繰り返し継続することになるが、報酬r3iが満足できるものでなければ、他の行為(例えば、アイデア発案役務、改良役務、侵害対処役務、トークン購入役務、あるいはなにも役務を行わない)を選択することとなる。
In S679, it is determined whether the reward r3i has been received from the
S651に示した侵害対処役務実行処理の詳細を図41(B)に基づいて説明する。S684において、侵害対処役務を実行するか否か判定する。実行しない場合にはリターンするが、実行すると判定した場合にはS685において、侵害行為の捜査を行い、S686において、侵害行為を発見したか否か判定する。なお、侵害行為の捜査を行う前に、前述したように、特許出願やその権利化の行為を行ってもよい。侵害行為を発見しなかった場合にはリターンするが、侵害行為を発見したと判定した場合には、S687において、被疑侵害者への警告書を生成し、S688において、警告書投稿行為a4iを実行し、S689において、被疑侵害者との交渉等、侵害対処行為a4iを遂行し、S690において、遂行状況投稿行為a4iを実行する。 Details of the infringement countermeasure service execution process shown in S651 will be explained based on FIG. 41(B). In S684, it is determined whether or not to execute the infringement handling service. If it is not to be carried out, the process returns; however, if it is determined to be carried out, an investigation into the infringement is carried out in S685, and it is determined in S686 whether or not an infringement has been discovered. Note that, as described above, before conducting an investigation into infringement, it is also possible to apply for a patent or obtain rights therefor. If no infringing act is found, return is made, but if it is determined that infringing act is found, a warning letter is generated to the suspected infringer in S687, and a warning letter posting act a4i is executed in S688. Then, in S689, the infringement countermeasure action a4i, such as negotiation with the suspected infringer, is carried out, and in S690, the execution status posting action a4i is carried out.
次に、S691において、DAOエージェント61から報酬r4iを受信したか否か判定し、受信していない場合はリターンする。受信していると判定した場合はS692において、受信した報酬r4iに基づいて、TD学習により最適政策π*に従った行為aを求める。この行為aは、受け取った報酬r4iが満足できるものであれば事業化役務の行為を繰り返し継続することになるが、報酬r4iが満足できるものでなければ、他の行為(例えば、アイデア発案役務、改良役務、事業化役務、トークン購入役務、あるいはなにも役務を行わない)を選択することとなる。
Next, in S691, it is determined whether the reward r4i has been received from the
次に、S652に示されたトークン購入役務実行処理の詳細を図42(A)に基づいて説明する。S969において、トークンを購入するか否か判定し、購入しない場合にはリターンする。購入すると判定した場合には、S697において、トークン購入行為a5iを実行する。次に、S698において、DAOエージェント61から報酬r5iを受信したか否か判定し、受信していない場合はリターンする。受信していると判定した場合はS699において、受信した報酬r5iに基づいて、TD学習により最適政策π*に従った行為aを求める。この行為aは、受け取った報酬r5iが満足できるものであれば事業化役務の行為を繰り返し継続することになるが、報酬r5iが満足できるものでなければ、他の行為(例えば、アイデア発案役務、改良役務、事業化役務、侵害対処役務、あるいはなにも役務を行わない)を選択することとなる。
Next, details of the token purchase service execution process shown in S652 will be explained based on FIG. 42(A). In S969, it is determined whether or not to purchase the token, and if the token is not purchased, the process returns. If it is determined that the token is to be purchased, the token purchase action a5i is executed in S697. Next, in S698, it is determined whether the reward r5i has been received from the
図42(B)に基づいて、ペルソナエージェント群71によるトークン購入に伴うトークン72の変動相場での価格変動を説明する。アイデア発案役務を行ったペルソナエージェント67に報酬A1として50トークン(時価総額5万円)72が付与されており、そのトークン72の一部(10トークン)を1万円相当の仮想通貨を支払ってペルソナエージェント71aが購入した。次に、その10トークンを1万5千円相当の仮想通貨を支払ってペルソナエージェント71bが購入した。その結果、10トークンが1万5千円に価値が高騰する。それをペルソナエージェント71cが2万円相当の仮想通貨を支払って購入した。その結果、10トークンが2万円に価値が高騰する。それをペルソナエージェント71dが2万5千円相当の仮想通貨を支払って購入した。その結果、10トークンが2万5千円に価値が高騰する。それをペルソナエージェント71eが3万円相当の仮想通貨を支払って購入した。その結果、10トークンが3万円に価値が高騰する。
Based on FIG. 42(B), the price fluctuation of the token 72 in the fluctuating market due to the token purchase by the persona agent group 71 will be explained.
これにより、ペルソナエージェント67の手持ちの40トークン(時価総額4万円)が時価総額12万円に高騰する。このトークンは期待値に正比例して高騰するのであり、人気のあるオリジンアイデアほど高くなり、人気のある(いいね!の多い)改良案が投稿されるほど高くなり、人気のある(いいね!の多い)事業化が投稿されるほど高くなり、人気のある(いいね!の多い)侵害対処が投稿されるほど高くなる。 As a result, the 40 tokens held by Persona Agent 67 (market capitalization: 40,000 yen) will soar to a market capitalization of 120,000 yen. The value of this token rises in direct proportion to the expected value; the more popular the origin idea is, the more expensive it becomes; the more popular (more likes) improvements are posted, the more expensive it becomes; The more businesses are posted (with more likes), the higher it becomes, and the more popular (more likes) anti-infringement measures are posted, the higher it becomes.
マルチ役務DAO65をリアルワールド47で実際に運用する段階では、前述したように、図37の「各ペルソナエージェント群67~71」がリアルワールドにおけるユーザ群となる。その場合に、アイデア発案役務を行ったユーザ群に与えられたトークン72ばかりでなく、各種役務を行うユーザ自身のトークン(以下「マイトークン」という)も売買させてもよい。その投稿された役務内容を閲覧した他のユーザが当該投稿者に期待して当該投稿者自身のマイトークンを購入することにより、変動相場でのマイトークンの価格が高騰する。この場合に、投稿者の所得の一部を、マイトークン購入者に購入量に応じた割合で配当してもよい。このマイトークンは、マルチ役務DAO65内で発行してもよいが、マイトークンを発行・流通させる専門業者がユーザに対し発行したマイトークンとリンクさせ、その専門業者発行のマイトークンをマルチ役務DAO65のユーザが売買できるようにしてもよい。マイトークンを発行・流通させる専門業者としては、現在、株式会社VALUがある。
At the stage of actually operating the
次に、複数の機能エレメントが協働して統制のとれた1つのDAOを構築するシステムを図43~図59に基づいて説明する。このようなDAOを以下「エレメント統合DAO」と称する。 Next, a system in which a plurality of functional elements cooperate to construct one well-controlled DAO will be described based on FIGS. 43 to 59. Such a DAO is hereinafter referred to as an "element integrated DAO."
図43を参照し、このエレメント統合DAOは、リアルワールド47において既に存在する会社組織等をDAOで簡単に構築できるようにするものであり、その機能エレメント毎に予めエレメントDAOが生成され用意されている。つまり、機能エレメント毎にモジュール化されたエレメントDAOが用意されており、必要となるエレメントDAOを選んで組み合わせることにより、簡単に所望のエレメント統合DAOを構築できるように構成されている。エレメントDAO提供業者73には、サーバ74とエレメントDAOプロトコルDB75とが設けられている。エレメントDAOプロトコルDB75には、例えば、会社関係に必要な機能エレメント毎に用意されたエレメントDAO、NPO(Nonprofit Organization)関係に必要な機能エレメント毎に用意されたエレメントDAO、地方自治体に必要な機能エレメント毎に用意されたエレメントDAO等が記憶されている。
Referring to FIG. 43, this element-integrated DAO makes it possible to easily construct a company organization, etc. that already exists in the
エレメント統合DAO構築業者は、依頼者からエレメント統合DAO構築の注文を受けて、必要となる機能エレメントに相当するエレメントDAOを、サーバ74を経由してPC端末76にインストールする。図43の例では、A1エレメントDAO(A1エレメントエージェント含む)、A2エレメントDAO(A2エレメントエージェント含む)、A5エレメントDAO(A5エレメントエージェント含む)、A9エレメントDAO(A9エレメントエージェント含む)がインストールされている。A1~A9の各エレメントエージェントとは、対応する各エレメントDAOが最高のパフォーマンスを発揮できるように強化学習(機械学習)するためのAIである。
The element integrated DAO construction vendor receives an order for element integrated DAO construction from the client and installs the element DAO corresponding to the required functional element into the
また、PC端末76には、統括エージェントもインストールされる。この統括エージェントは、各エレメントDAOのエレメントエージェントを統括してエレメント統合DAO全体が最適化されるように制御するものであり、統括エージェント自身も強化学習(機械学習)を行って全体最適化を達成する。各エレメントエージェントは、担当するエレメントDAOのパフォーマンスを最大化するためのものであるため、エレメントエージェントのみでは部分最適化に陥り、エレメント統合DAOの全体最適化が達成できない虞がある。そこで、エレメント統合DAO全体が最適化されるように制御する統括エージェントが必要となる。これは、例えば、不完全情報ゲームにおけるパレート最適解探しと同じといえる。
A supervising agent is also installed on the
PC67にインストールされたエレメント統合DAOを、ミラーワールド51をシミュレーション環境としてシミュレーション強化学習を行うために、複数の端末16にインストールし、それら端末16をノード19とするプライベートチェーン2からなるブロックチェーンのデジタルツイン2Tを、ミラーワールド51内に生成する。
The element integrated DAO installed on the
このエレメント統合DAOのシミュレーション強化学習のメインルーチンを図44(A)に基づいて説明する。エレメント統合DAOのシミュレーション強化学習を依頼する依頼者のユーザ端末16のCPU10は、S674においてシミュレーション強化学習準備応答処理を行い、S675においてシミュレーション強化学習応答処理を行う。ミラーワールドサーバ46のCPU10は、S679においてシミュレーション強化学習準備処理を行い、S680においてシミュレーション強化学習処理を行う。
The main routine of simulation reinforcement learning of this element integrated DAO will be explained based on FIG. 44(A). The
S674に示されたシミュレーション強化学習準備応答処理及びS679に示されたシミュレーション強化学習準備処理の詳細を、図44(B)に基づいて説明する。シミュレーション強化学習準備応答処理においてユーザ端末16のCPU10は、S679において、シミュレーション強化学習を依頼するか否か判定し、依頼しない場合はリターンする。依頼すると判定した場合は、S680において、DAOデータとパーソナルAI群とを送信して依頼する。DAOデータとは、シミュレーション強化学習してもらいたい組織の機能エレメントである。例えば、家具組立販売会社の場合は、資材調達エレメント、組立エレメント、宣伝エレメント、販売エレメントである。パーソナルAI群とは、リアルワールド47において実際にエレメント統合DAOに従事する人々のパーソナルAIである。パーソナルAIを有していない従事者がいる場合、及び、未だに従事者が決まっていない場合には、前述のS561、S565~S568、S562、S573~S575に基づいて説明したように、シミュレーション強化学習対象のエレメント統合DAOにマッチするパーソナルAIを生成して準備する。
Details of the simulation reinforcement learning preparation response process shown in S674 and the simulation reinforcement learning preparation process shown in S679 will be explained based on FIG. 44(B). In the simulation reinforcement learning preparation response process, the
シミュレーション強化学習準備処理において、ミラーワールドサーバ46のCPU10は、S683において、シミュレーション強化学習の依頼があったか否か判定し、ない場合にはリターンする。シミュレーション強化学習の依頼があったと判定した場合には、S684において、パーソナルAI群をコピーしてエレメント統合DAO内に配備してエレメント統合DAOデジタルツインを生成し、シミュレーション対象としてミラーワールド51に登録する。
In the simulation reinforcement learning preparation process, the
その状態を図45に示している。リアルワールド47のエレメント統合DAO77のデジタルツイン78がミラーワールド51に登録されている。図45に示すエレメント統合DAOデジタルツイン78は、例えば家具組立販売会社のエレメント統合DAOデジタルツイン78であり、資材調達、組立、宣伝、販売の、各機能エレメントを有し、その各機能エレメントに従事する者たちのパーソナルAI群の識別番号が、ミラーワールドサーバ46に記憶されている。
The state is shown in FIG. The
このエレメント統合DAOデジタルツイン78について、シミュレーション強化学習により最適なインセンティブ設計を導き出す。その強化学習(機械学習)の概略システムを図46に示す。
For this element-integrated DAO
図46を参照し、エレメント統合DAOデジタルツイン78では、資材調達、組立、宣伝、販売の、各機能エレメントに対応して、資材調達エレメントエージェント80及び資材調達担当のパーソナルAI群84、組立エレメントエージェント81及び組立担当のパーソナルAI群85、宣伝エレメントエージェント82及び宣伝担当のパーソナルAI群86、資材調達エレメントエージェント80及び資材調達担当のパーソナルAI群84、販売エレメントエージェント83及び販売担当のパーソナルAI群87が、形成されている。それら各エレメントエージェント80~83を統括エージェント79が統括する。
Referring to FIG. 46, in the element integrated DAO
資材調達担当のパーソナルAI群84が内部打合せにおいて提案等の行為a11,a12,・・・a1nを行い、最終的にまとまった行為a1を資材提供業者のデジタルツイン群88に対して実行する。その行為a1に対する資材提供業者のデジタルツイン群88の状態S1が資材調達エレメントエージェント80及び資材調達担当のパーソナルAI群84に入力される。この状態S1は、例えば、資材要求数及び価格交渉の行為a1に対しての返答資材数及び返答価格等である。なお、資材調達担当のパーソナルAI群84の各行為a11,a12,・・・a1nは資材調達エレメントエージェント80にも入力され、まとまった行為a1は、統括エージェント79及び資材調達エレメントエージェント80にも入力される。
The
資材調達エレメントエージェント80は、行為a1及び状態S1に基づいて、資材調達担当のパーソナルAI群84によるパフォーマンスp1を算出し、そのパフォーマンスp1を統括エージェント79に送信する。統括エージェント79は、そのパフォーマンスp1に基づいて報酬r1を決定し、その報酬r1を資材調達エレメントエージェント80へ送信する。資材調達エレメントエージェント80は、資材調達担当のパーソナルAI群84の各行為a11,a12,・・・a1nに基づいて報酬分配率を決定し、その報酬分配率に従って報酬r1を各資材調達担当のパーソナルAI84に分配する。
The material
組立担当のパーソナルAI群85が内部打合せにおいて提案等の行為a21,a22,・・・a2iを行い、最終的にまとまった行為a2を組立設備のデジタルツイン群89に対して実行する。その行為a2に対する組立設備のデジタルツイン群89の状態S2が組立エレメントエージェント81及び組立担当のパーソナルAI群85に入力される。この状態S1は、例えば、組立設備デジタルツイン群89の消費電力及び組立設備デジタルツイン群89に従事した組立担当のパーソナルAI群85の総労働時間等である。なお、組立担当のパーソナルAI群84の各行為a21,a22,・・・a2iは組立エレメントエージェント81にも入力され、まとまった行為a2は、統括エージェント79及び組立エレメントエージェント81にも入力される。
The personal AI group 85 in charge of assembly performs actions a21, a22, . The state S2 of the
組立エレメントエージェント81は、行為a2及び状態S2に基づいて、組立担当のパーソナルAI群85によるパフォーマンスp2を算出し、そのパフォーマンスp2を統括エージェント79に送信する。統括エージェント79は、そのパフォーマンスp2に基づいて報酬r2を決定し、その報酬r2を組立エレメントエージェント81へ送信する。組立エレメントエージェント81は、組立担当のパーソナルAI群85の各行為a21,a22,・・・a2iに基づいて報酬分配率を決定し、その報酬分配率に従って報酬r2を組立担当のパーソナルAI85に分配する。
The
宣伝担当のパーソナルAI群86が内部打合せにおいて提案等の行為a51,a52,・・・a5jを行い、最終的にまとまった行為a5を消費者のパーソナルAI群90に対して実行する。その行為a5に対する消費者のパーソナルAI群90の状態S5が宣伝エレメントエージェント82及び宣伝担当のパーソナルAI群86に入力される。この状態S5は、例えば、消費者への商品レコメンド行為a5に対しての当該消費者の当該商品購入の有無や購入金額等である。なお、宣伝担当のパーソナルAI群86の各行為a51,a52,・・・a5jは宣伝エレメントエージェント82にも入力され、まとまった行為a5は、統括エージェント79及び宣伝エレメントエージェント82にも入力される。
The
宣伝エレメントエージェント82は、行為a5及び状態S5に基づいて、宣伝担当のパーソナルAI群86によるパフォーマンスp5を算出し、そのパフォーマンスp5を統括エージェント79に送信する。統括エージェント79は、そのパフォーマンスp5に基づいて報酬r5を決定し、その報酬r5を宣伝エレメントエージェント82へ送信する。宣伝エレメントエージェント82は、宣伝担当のパーソナルAI群86の各行為a51,a52,・・・a5jに基づいて報酬分配率を決定し、その報酬分配率に従って報酬r5を宣伝担当のパーソナルAI86に分配する。
The
販売担当のパーソナルAI群87が内部打合せにおいて提案等の行為a91,a92,・・・a9mを行い、最終的にまとまった行為a9を店舗及び消費者のデジタルツイン群91に対して実行する。その行為a9に対する店舗及び消費者のデジタルツイン群91の状態S9が販売エレメントエージェント83及び販売担当のパーソナルAI群87に入力される。この状態S9は、例えば、店舗での総販売金額等である。販売エレメントエージェント83には、上記行為a5に対する資材提供業者のデジタルツイン88の状態S5も入力される。なお、販売担当のパーソナルAI群87の各行為a91,a92,・・・a9mは販売エレメントエージェント83にも入力され、まとまった行為a9は、統括エージェント79及び販売エレメントエージェント83にも入力される。
The
販売エレメントエージェント83は、行為a9及び状態S5,S9に基づいて、販売担当のパーソナルAI群87によるパフォーマンスp9を算出し、そのパフォーマンスp9を統括エージェント79に送信する。統括エージェント79は、そのパフォーマンスp9に基づいて報酬r9を決定し、その報酬r9を販売エレメントエージェント83へ送信する。販売エレメントエージェント83は、販売担当のパーソナルAI群87の各行為a91,a92,・・・a9mに基づいて報酬分配率を決定し、その報酬分配率に従って報酬r9を販売担当のパーソナルAI87に分配する。
The
上記各パフォーマンスp1~p9と各報酬分配率との算出方法を、図47(A)(B)(C)、図48(A)に基づいて説明する。資材調達エレメントエージェント80は、パフォーマンスp1と分配率との算出アルゴリズムを知識として記憶している。このパフォーマンスp1と分配率との算出アルゴリズムを図47(A)に基づいて説明する。資材調達エレメントエージェント80は、今回(S689による前回のYES時点から今回のYES時点までの間)の資材購入金額uと現在の在庫数zとを状態S1とし、パフォーマンスp1={2(平均購入金額/u)+(z/平均在庫数)}/3 の計算式でパフォーマンスp1を算出する。平均購入金額とは、シミュレーション強化学習開始時点から現在までの資材の平均購入金額である。平均在庫数とは、シミュレーション強化学習開始時点から現在までの資材の平均購在庫数である。この計算式の結果、今回の資材購入金額uが安くなればパフォーマンスp1が大きくなり、現在の在庫数zが多くなればパフォーマンスp1が小さくなる。
A method of calculating each of the performances p1 to p9 and each reward distribution rate will be explained based on FIGS. 47(A), (B), and (C) and FIG. 48(A). The material
また、報酬分配率は、p1≧1の場合、まとまった行為a1への賛成度合いに比例して算出し、逆に、p1<1の場合は、まとまった行為a1への賛成度合いに反比例して算出する。ここに、「賛成度合い」の一乗に比例または反比例するものに限らず、「賛成度合い」のn乗に比例または反比例するもの等も含まれ、最適な比例関数または反比例関数を資材調達エレメントエージェント80が強化学習(機械学習)を行うことにより求める。また、「賛成度合い」は、まとまった行為a1自体を提案したパーソナルAIが1番高い賛成度合いとなり、パーソナルAIの各行為a11,a12,・・・a1nに基づいて資材調達エレメントエージェント80が各パーソナルAIの賛成度合いを判断する(算出する)。
In addition, when p1≧1, the reward distribution rate is calculated in proportion to the degree of approval for the collective action a1, and conversely, when p1<1, the reward distribution rate is calculated in inverse proportion to the degree of approval for the collective action a1. calculate. This includes not only those that are proportional or inversely proportional to the first power of the "degree of approval" but also those that are proportional or inversely proportional to the nth power of the "degree of approval", and the material
組立エレメントエージェント81が知識として記憶しているパフォーマンスp2と分配率との算出アルゴリズムを、図47(B)に基づいて説明する。組立エレメントエージェント81は、組立設備の今回(S710による前回のYES時点から今回のYES時点までの間)の消費電力eと今回の組立作業員総動労時間tとを状態S2とし、パフォーマンスp2={(平均消費電力/e)+(平均総労働時間/t)}/2 の計算式でパフォーマンスp2を算出する。今回の組立作業員総動労時間tとは、今回の組立設備デジタルツイン群89に従事した組立担当のパーソナルAI群85の総労働時間である。平均消費電力とは、シミュレーション強化学習開始時点から現在までの組立設備の消費電力の平均である。平均総労働時間とは、シミュレーション強化学習開始時点から現在までの組立作業員総動労時間の平均である。この計算式の結果、組立設備の今回の消費電力eが少なくなればパフォーマンスp2が大きくなり、今回の組立作業員総動労時間tが多くなればパフォーマンスp2が小さくなる。
The algorithm for calculating the performance p2 and the distribution ratio, which is stored as knowledge by the
また、報酬分配率は、p2≧1の場合、まとまった行為a2への賛成度合いに比例して算出し、逆に、p2<1の場合は、まとまった行為a2への賛成度合いに反比例して算出する。ここに、「賛成度合い」の一乗に比例または反比例するものに限らず、「賛成度合い」のn乗に比例または反比例するもの等も含まれ、最適な比例関数または反比例関数を組立エレメントエージェント81が強化学習(機械学習)を行うことにより求める。また、「賛成度合い」は、まとまった行為a2自体を提案したパーソナルAIが1番高い賛成度合いとなり、パーソナルAIの各行為a21,a22,・・・a2iに基づいて組立エレメントエージェント81が各パーソナルAIの賛成度合いを判断する(算出する)。
In addition, when p2≧1, the reward distribution rate is calculated in proportion to the degree of approval for the collective action a2, and conversely, when p2<1, the reward distribution rate is calculated in inverse proportion to the degree of approval for the collective action a2. calculate. This includes not only those that are proportional or inversely proportional to the first power of the "degree of approval," but also those that are proportional or inversely proportional to the nth power of the "degree of approval," and the
宣伝エレメントエージェント82が知識として記憶しているパフォーマンスp5と分配率との算出アルゴリズムを、図47(C)に基づいて説明する。宣伝エレメントエージェント82は、レコメンドした消費者パーソナルAIの今回(S728による前回のYES時点から今回のYES時点までの間)の総購入金額kを状態S5とし、パフォーマンスp5=k/レコメンドした消費者パーソナルAIの平均総購入金額K の計算式でパフォーマンスp5を算出する。平均総購入金額Kとは、シミュレーション強化学習開始時点から現在までのレコメンドした消費者パーソナルAI群90の総購入金額の平均である。この計算式の結果、レコメンドした消費者パーソナルAIの今回の総購入金額k今が高くなればパフォーマンスp5が大きくなる。
The algorithm for calculating the performance p5 and the distribution rate, which is stored as knowledge by the
また、報酬分配率は、p5≧1の場合、まとまった行為a5への賛成度合いに比例して算出し、逆に、p5<1の場合は、まとまった行為a5への賛成度合いに反比例して算出する。ここに、「賛成度合い」の一乗に比例または反比例するものに限らず、「賛成度合い」のn乗に比例または反比例するもの等も含まれ、最適な比例関数または反比例関数を宣伝エレメントエージェント82が強化学習(機械学習)を行うことにより求める。また、「賛成度合い」は、まとまった行為a5自体を提案したパーソナルAIが1番高い賛成度合いとなり、パーソナルAIの各行為a51,a52,・・・a5jに基づいて宣伝エレメントエージェント82が各パーソナルAIの賛成度合いを判断する(算出する)。
In addition, when p5≧1, the reward distribution rate is calculated in proportion to the degree of approval for the collective action a5, and conversely, when p5<1, the reward distribution rate is calculated in inverse proportion to the degree of approval for the collective action a5. calculate. This includes not only those that are proportional or inversely proportional to the first power of the "degree of approval," but also those that are proportional or inversely proportional to the nth power of the "degree of approval," and the
販売エレメントエージェント83が知識として記憶しているパフォーマンスp5と分配率との算出アルゴリズムを、図48(A)に基づいて説明する。販売エレメントエージェント83は、店舗での今回(S749による前回のYES時点から今回のYES時点までの間)の総販売金額hと平均総販売金額Hを状態S9とし、この状態S9と上記状態S5とにより、パフォーマンスp9=(h-k)/(H-K) の計算式でパフォーマンスp9を算出する。平均総販売金額Hとは、シミュレーション強化学習開始時点から現在までの店舗での総販売金額の平均である。また、kは、レコメンドした消費者パーソナルAIの今回の総購入金額であり、Kは、シミュレーション強化学習開始時点から現在までのレコメンドした消費者パーソナルAI群90の総購入金額の平均である(図47(C)及びその説明参照)。この計算式の結果、店舗での今回の総販売金額hからレコメンドした消費者パーソナルAIの今回の総購入金額kを減算した値が大きくなればパフォーマンスp9が大きくなる。レコメンドした消費者パーソナルAIの今回の総購入金額kは、宣伝担当のパーソナルAI群86の手柄であり、販売担当のパーソナルAI群87のみの手柄は、店舗での今回の総販売金額hからレコメンドした消費者パーソナルAIの今回の総購入金額kを減算した値となるためである。
The algorithm for calculating the performance p5 and the distribution rate, which is stored as knowledge by the
また、報酬分配率は、p9≧1の場合、まとまった行為a9への賛成度合いに比例して算出し、逆に、p9<1の場合は、まとまった行為a9への賛成度合いに反比例して算出する。ここに、「賛成度合い」の一乗に比例または反比例するものに限らず、「賛成度合い」のn乗に比例または反比例するもの等も含まれ、最適な比例関数または反比例関数を宣伝エレメントエージェント83が強化学習(機械学習)を行うことにより求める。また、「賛成度合い」は、まとまった行為a9自体を提案したパーソナルAIが1番高い賛成度合いとなり、パーソナルAIの各行為a91,a92,・・・a9mに基づいて販売エレメントエージェント83が各パーソナルAIの賛成度合いを判断する(算出する)。
In addition, when p9≧1, the reward distribution rate is calculated in proportion to the degree of approval for the collective action a9, and conversely, when p9<1, the reward distribution rate is calculated in inverse proportion to the degree of approval for the collective action a9. calculate. This includes not only those that are proportional or inversely proportional to the first power of the "degree of approval" but also those that are proportional or inversely proportional to the nth power of the "degree of approval", and the
次に、統括エージェント79が知識として記憶している報酬テーブル92を、図48(B)に基づいて説明する。この報酬テーブル92には、統括エージェント79が各エレメントエージェント80~83に分配する報酬の算出式が記憶されている。分配する報酬は、係数×(今期の利益)×(対象のエレメントエージェントから送られてきたパフォーマンス)÷(全エレメントエージェントから送られてきたパフォーマンスの合計) で算出される。ここに、「今期」とは、S675による前回のYES時点から今回のYES時点までの間のことである。
Next, the remuneration table 92 stored as knowledge by the supervising
具体的には、資材調達エレメントエージェント80に分配する報酬r1は、r1=A1・Lt・p1/(p1+p2+p5+p9)。組立エレメントエージェント81に分配する報酬r2は、r2=A2・Lt・p2/(p1+p2+p5+p9)。宣伝エレメントエージェント82に分配する報酬r5は、r5=A5・Lt・p5/(p1+p2+p5+p9)。販売エレメントエージェント83に分配する報酬r9は、r9=A9・Lt・p9/(p1+p2+p5+p9)である。ここに、Ltは今期の利益、A1,A2,A5,A9は、統括エージェント79が決定した行為としての係数である。
Specifically, the reward r1 to be distributed to the material
次に、S680に示したシミュレーション強化学習処理の具体的内容を図49に基づいて説明する。S687により統括エージェント強化学習処理を実行し、S688により資材調達エレメントエージェント強化学習処理を実行し、S689により組立エレメントエージェント強化学習処理を実行し、S690により宣伝エレメントエージェント強化学習処理を実行し、S691により販売エージェント強化学習処理を実行し、S692により資材調達担当パーソナルAI強化学習処理を実行し、S693により組立担当パーソナルAI強化学習処理を実行し、S694により宣伝担当パーソナルAI強化学習処理を実行し、S695により販売担当パーソナルAI強化学習処理を実行する。 Next, the specific content of the simulation reinforcement learning process shown in S680 will be explained based on FIG. 49. S687 executes the supervising agent reinforcement learning process, S688 executes the material procurement element agent reinforcement learning process, S689 executes the assembly element agent reinforcement learning process, S690 executes the promotion element agent reinforcement learning process, and S691 executes the reinforcement learning process for the advertising element agent. Sales agent reinforcement learning processing is executed, material procurement personnel personal AI reinforcement learning processing is executed in S692, assembly personnel personal AI reinforcement learning processing is executed in S693, advertising personnel personal AI reinforcement learning processing is executed in S694, and S695 Executes the sales person's personal AI reinforcement learning process.
S687に示した統括エージェント強化学習処理の詳細を図50に基づいて説明する。統括エージェント79は、S699において、各エレメントエージェント80~83から送られてくる各パフォーマンスpを受信したか否か判定する。受信していない場合には制御がS671に進むが、受信していると判定した場合はS670において、受信した各パフォーマンスpを記憶する。
The details of the supervising agent reinforcement learning process shown in S687 will be explained based on FIG. 50. In S699, the supervising
次に、S671において、各行為a1~a9を受信したか否か判定し、受信していない場合は制御がS673に進む。受信していると判定した場合にはS672において、受信した各行為a1~a9を記憶する。次に、S673において、店舗及び消費者のパーソナルAI群91から送られてくる状態S9の入力があったか否か判定し、ない場合には制御がS675に進む。入力があったと判定した場合にはS674において、売上=ΣS9 を算出する。
Next, in S671, it is determined whether or not each of the actions a1 to a9 has been received. If not, control proceeds to S673. If it is determined that the received actions have been received, each of the received actions a1 to a9 is stored in S672. Next, in S673, it is determined whether or not there is an input of status S9 sent from the store and consumer's
次に、S675において、報酬算出時期になったか否か判定し、なっていない場合には制御がS677に進むが、なっていると判定した場合には、S676において、報酬テーブル92を参照して報酬r1,r2,r3,r5,r9を算出して該当するエレメントエージェント80~83へ送信する。
Next, in S675, it is determined whether the remuneration calculation time has come, and if it has not, the control proceeds to S677, but if it is determined that it has come, the remuneration table 92 is referred to in S676. Rewards r1, r2, r3, r5, r9 are calculated and sent to the
次に、S677において、強化学習(機械学習)の更新時期になったか否か判定し、なっていない場合にはリターンする。更新時期になったと判定した場合にはS687において、今期の利益Lt=売上-経費 を算出する。次に、S679において、各報酬r1,r2,r5,r9を算出して対応するエレメントエージェント80~83に配布する。 Next, in S677, it is determined whether it is time to update reinforcement learning (machine learning), and if it is not, the process returns. If it is determined that it is time for renewal, in S687, the current term's profit Lt = sales - expenses is calculated. Next, in S679, each reward r1, r2, r5, r9 is calculated and distributed to the corresponding element agents 80-83.
次に、S680において、利益Ltから統括エージェント79の報酬Rを算出する。この報酬Rは、利益Ltに比例する。次に、S681において、上記報酬Rに基づいて、TD学習により最適政策π*に従った行為(係数)A1,A2,A5,A9を求める。次にS682において、報酬テーブル92のA1,A2,A5,A9を、S681で求めた行為(係数)A1,A2,A5,A9に更新する。この結果、統括エージェント79は、利益Ltが最大となる行為(係数)A1,A2,A5,A9を学習することになる。
Next, in S680, the remuneration R of the supervising
S688に示した資材調達エレメントエージェント強化学習処理の詳細を図51に基づいて説明する。資材調達エレメントエージェント80は、S684において、クローラによる情報収集処理を行う。クローラとは、ウェブ上の文書や画像などを周期的に取得し、自動的にデータベース化するプログラムである。「ボット(Bot)」、「スパイダー」、「ロボット」などとも呼ばれる。
Details of the material procurement element agent reinforcement learning process shown in S688 will be explained based on FIG. 51. In S684, the material
このクローラによる情報収集処理の詳細を図52(A)に基づいて説明する。資材調達エレメントエージェント80は、S702において、クローラがネット上を巡回して収集した情報を受信する。次に、S703において、その受信した情報を資材調達DB93に格納する。
Details of the information collection process by this crawler will be explained based on FIG. 52(A). In S702, the material
その資材調達DB93に格納された情報を図52(B)に示す。資材調達DB93には、図示するように、経済情報、社会情報、気象情報、在庫情報、市場情報、・・・仕入先情報等の、資材調達業務に必要となる各種情報が格納されている。 The information stored in the material procurement DB 93 is shown in FIG. 52(B). As shown in the figure, the material procurement DB 93 stores various information necessary for material procurement operations, such as economic information, social information, weather information, inventory information, market information, ... supplier information. .
図51に戻り、資材調達エレメントエージェント80は、S685において、パーソナルAI群84からの行為a11,a12,・・・a1nを受信したか否か判定する。受信していない場合には制御がS687に進むが、受信したと判定した場合にはS686において、受信した各行為a11,a12,・・・a1nを記憶する。S687において、資材供給業者のデジタルツイン群88からの状態S1を受信したか否か判定し、受信していない場合は制御がS689に進む。受信したと判定した場合はS688において、受信したS1を記憶する。
Returning to FIG. 51, the material
S689において、パフォーマンスp1の算出時期であるか否か判定し、算出時期でない場合には制御がS692に進む。算出時期と判定した場合には、S690において、パフォーマンスp1={2(平均購入金額/u)+(z/平均在庫数)}/3 を算出する。そのパフォーマンスp1を統括エージェント79へ送信する(S691)。 In S689, it is determined whether it is time to calculate performance p1, and if it is not time to calculate performance p1, control proceeds to S692. If it is determined that it is time to calculate, in S690, performance p1={2(average purchase price/u)+(z/average quantity in stock)}/3 is calculated. The performance p1 is transmitted to the supervising agent 79 (S691).
S692において、統括エージェント79から送信された報酬r1を受信したか否か判定し、受信していない場合にはリターンする。受信したと判定した場合には、図47(A)に示した報酬分配率のアルゴリズムに基づいて報酬分配率を算出する(S693)。S694において、報酬に各分配率を乗じて各報酬r11,r12…r1nを算出し、S695において、各報酬r11,r12…r1nを各資材調達担当パーソナルAI群84に付与する。S696において、受信した報酬r1にもとづいて、TD学習により最適政策π*に従った行為(比例関数または反比例関数)を求める。S697において、比例関数または反比例関数を、S696で求めたものに更新する。その結果、資材調達エレメントエージェント80は、上記パフォーマンスp1を最大にする比例関数または反比例関数を学習することになる。
In S692, it is determined whether the reward r1 sent from the
次に、S689に示した組立エレメントエージェント強化学習処理の詳細を図53に基づいて説明する。組立エレメントエージェント81は、S706において、パーソナルAI群85からの行為a21,a22,・・・a2nを受信したか否か判定する。受信していない場合には制御がS708に進むが、受信したと判定した場合にはS707において、受信した各行為a21,a22,・・・a2nを記憶する。S708において、組立設備のデジタルツイン群89からの状態S2を受信したか否か判定し、受信していない場合は制御がS710に進む。受信したと判定した場合はS709において、受信した状態S2を記憶する。
Next, details of the assembly element agent reinforcement learning process shown in S689 will be explained based on FIG. 53. In S706, the
S710において、パフォーマンスp2の算出時期であるか否か判定し、算出時期でない場合には制御がS713に進む。算出時期と判定した場合には、S711において、パフォーマンスp2={(平均消費電力/e)+(平均総労働時間/t)}/2 を算出する。そのパフォーマンスp2を統括エージェント79へ送信する(S712)。 In S710, it is determined whether it is time to calculate performance p2, and if it is not time to calculate performance p2, control proceeds to S713. If it is determined that it is time to calculate, in S711, performance p2={(average power consumption/e)+(average total working hours/t)}/2 is calculated. The performance p2 is transmitted to the supervising agent 79 (S712).
S713において、統括エージェント79から送られてくる報酬r2を受信したか否か判定し、受信していない場合にはリターンする。受信したと判定した場合には、図47(B)に示した報酬分配率のアルゴリズムに基づいて報酬分配率を算出する(S714)。S715において、報酬に各分配率を乗じて各報酬r11,r12…r1nを算出し、S695において、各報酬r21,r22…r2iを組立て担当パーソナルAI群86に付与する。S717において、受信した報酬r2にもとづいて、TD学習により最適政策π*に従った行為(比例関数または反比例関数)を求める。S718において、比例関数または反比例関数を、S717で求めたものに更新する。その結果、組立エレメントエージェント81は、上記パフォーマンスp2を最大にする比例関数または反比例関数を学習することになる。
In S713, it is determined whether the reward r2 sent from the
S690に示した宣伝エレメントエージェント強化学習処理の詳細を図54に基づいて説明する。宣伝エレメントエージェント83は、S723において、クローラによる情報収集処理を行う。この処理の詳細を図55(A)に基づいて説明する。宣伝エレメントエージェント83は、S740において、クローラがネット上を巡回して収集した情報を受信し、S741において、受信した情報を宣伝DB94に格納する。
Details of the promotion element agent reinforcement learning process shown in S690 will be explained based on FIG. 54. In S723, the
その宣伝DB94に格納された収集データを図55(B)に示す。宣伝DB94には、消費者である太郎、次郎、・・・花子等の各種行動データが格納されている。例えば太郎の場合、「一戸建てを注文した」という情報から家具を購入する可能性が高いと判断し、太郎に対し家具の宣伝を行う。次郎の場合、「夫婦じゃわん購入」という情報から、近々結婚するために新居で家具を購入する可能性が高いと判断し、次郎に対し家具の宣伝を行う。
The collected data stored in the
図54に戻り、宣伝エレメントエージェント83は、S742において、各パーソナルAI群86からの行為を受信したか否か判定する。受信していない場合は制御がS726に進むが、受信していると判定した場合にはS725において、受信した各行為を記憶する。S726において、消費者のパーソナルAI群90から送られてくる状態S5を受信したか否か判定し、未だ受信していない場合には制御がS728に進む。受信したと判定した場合にはS727において、受信した状態S5を記憶する。
Returning to FIG. 54, the
S728において、パフォーマンスp5の算出時期であるか否か判定し、パフォーマンスp5の算出時期でない場合には制御がS731に進む。パフォーマンスp5の算出時期であると判定した場合にはS729において、パフォーマンスp5=k/レコメンドした消費者パーソナルAIの平均総購入金額K を算出する。次にS730において、パフォーマンスP5を統括エージェント79へ送信する。
In S728, it is determined whether or not it is time to calculate the performance p5, and if it is not the time to calculate the performance p5, control proceeds to S731. If it is determined that it is time to calculate the performance p5, then in S729, the performance p5=k/average total purchase price K of the recommended consumer personal AI is calculated. Next, in S730, the performance P5 is sent to the supervising
S731において、統括エージェント79から送られてくる報酬r5を受信したか否か判定し、未だ受信していない場合はリターンする。受信したと判定した場合にはS732において、図47(C)に示した報酬分配率のアルゴリズムに基づいて報酬分配率を算出する(S732)。S733において、報酬に各分配率を乗じて各報酬r51,r52…r5jを算出し、S734において、各報酬r51,r52…r5jを宣伝担当パーソナルAI群87に付与する。S735において、受信した報酬r5にもとづいて、TD学習により最適政策π*に従った行為(比例関数または反比例関数)を求める。S736において、比例関数または反比例関数を、S735で求めたものに更新する。その結果、宣伝エレメントエージェント82は、上記パフォーマンスp5を最大にする比例関数または反比例関数を学習することになる。
In S731, it is determined whether the reward r5 sent from the
次に、S691に示した販売エレメントエージェント強化学習処理の詳細を図56にもとづいて説明する。販売エレメントエージェント84は、S744において、クローラによる情報収集処理を行う。この処理の詳細を図57(A)に基づいて説明する。販売エレメントエージェント84は、S760において、クローラがネット上を巡回して収集した情報を受信し、S761において、受信した情報を販売DB95に格納する。さらに、S762において、店舗におけるPOSデータを販売DB95に格納する。
Next, details of the sales element agent reinforcement learning process shown in S691 will be explained based on FIG. 56. In S744, the
その販売DB95に格納された収集データを図57(B)に示す。販売DB95には、気象データやPOSデータ等の各種データが格納されている。気象情報における「日付別」とは、曜日別を含む概念である。気象情報(日付別時間別天候気温データ)とPOSデータ(日付別時間別販売商品データ)とに基づいて、例えば、曜日と時間と気象状況とを考慮した陳列商品の配置替え等を行うことができる。
The collected data stored in the
図56に戻り、販売エレメントエージェント84は、S745において、各パーソナルAI群87からの行為を受信したか否か判定する。受信していない場合は制御がS747に進むが、受信していると判定した場合にはS746において、受信した各行為を記憶する。S747において、販売店及び消費者のパーソナルAI群91から送られてくる状態S9を受信したか否か判定し、未だ受信していない場合には制御がS749に進む。受信したと判定した場合にはS748において、受信した状態S9を記憶する。
Returning to FIG. 56, the
S749において、パフォーマンスp9の算出時期であるか否か判定し、パフォーマンスp9の算出時期でない場合には制御がS752に進む。パフォーマンスp9の算出時期であると判定した場合にはS750において、パフォーマンスp9=(h-k)/(H-K) を算出する。次にS751において、パフォーマンスp9を統括エージェント79へ送信する。
In S749, it is determined whether or not it is time to calculate performance p9, and if it is not time to calculate performance p9, control proceeds to S752. If it is determined that it is time to calculate the performance p9, the performance p9=(h−k)/(HK) is calculated in S750. Next, in S751, the performance p9 is sent to the supervising
S752において、統括エージェント79から送られてくる報酬r9を受信したか否か判定し、未だ受信していない場合はリターンする。受信したと判定した場合にはS753において、図48(A)に示した報酬分配率のアルゴリズムに基づいて報酬分配率を算出する(S753)。S754において、報酬に各分配率を乗じて各報酬r91,r92…r9mを算出し、S755において、各報酬r91,r92…r9mを販売担当パーソナルAI群88に付与する。S756において、受信した報酬r9にもとづいて、TD学習により最適政策π*に従った行為(比例関数または反比例関数)を求める。S757において、比例関数または反比例関数を、S756で求めたものに更新する。その結果、販売エレメントエージェント83は、上記パフォーマンスp9を最大にする比例関数または反比例関数を学習することになる。
In S752, it is determined whether the reward r9 sent from the
次に、S692に示した資材調達担当パーソナルAI強化学習処理の詳細を図58(A)に基づいて説明する。資材調達担当パーソナルAI群84は、S765において、資材供給業者のデジタルツイン群88と交渉するか否か判定し、交渉しない場合は制御がS770に進む。交渉すると判定した場合はS766において、資金調達DB93の格納データを閲覧し、格納データを参考にして内部打合せを行いながら行為a1を決定し(S767)、資材供給業者のデジタルツイン群88と交渉する(S768)。S769において、交渉が終了いたか否か判定し、未だ終了していない場合にはS766に戻り、S767→S768→S769→S766のループを巡回する。S769において交渉が終了したと判定した段階で制御がS770に進む。
Next, details of the material procurement personal AI reinforcement learning process shown in S692 will be explained based on FIG. 58(A). In S765, the
S770において、資材調達エレメントエージェント80から報酬r11,r12・・・r1nを受信したか否か判定し、受信していない場合にはリターンする。報酬を受信したと判定した場合にはS771において、受信した報酬に基づいて、TD学習により最適政策π*に従った行為(a11,a12・・・a1n)を求める。この行為a1iは、受け取った報酬r1iが満足できるものでなければ、他の会社DAOデジタルツイン(例えば、図45の株式会社ABCのDAOデジタルツイン59)に移る(転職する)ものも含む。この強化学習の結果、資材調達担当パーソナルAIの各々は、前述のパフォーマンスp1を増加させる行為を学習することになる。
In S770, it is determined whether the rewards r11, r12, . . . r1n have been received from the material
次に、S693に示した組立担当パーソナルAI強化学習処理の詳細を図58(B)に基づいて説明する。組立担当パーソナルAI群85は、S775において、内部打合せするか否か判定し、しない場合は制御がS779に進む。打合せすると判定した場合はS776において、各組立担当パーソナルAIが内部打合せを行いながら行為a2を決定する。次に、S777において、行為a2に従って、組立設備デジタルツイン群89を試運転し、行為a2の妥当性を検証する。S778において、打合せが終了いたか否か判定し、未だ終了していない場合にはS776に戻り、S777→S778→S776のループを巡回する。S777の試運転の結果行為a2が妥当である場合にはS778により打合せ終了と判定され、制御がS779に進む。
Next, details of the assembling personal AI reinforcement learning process shown in S693 will be explained based on FIG. 58(B). In S775, the assembly personal AI group 85 determines whether or not to hold an internal meeting, and if not, the control proceeds to S779. If it is determined that a meeting is to be held, in S776, each personal AI in charge of assembly determines the action a2 while holding an internal meeting. Next, in S777, the assembly equipment
S779において、組立エレメントエージェント81から報酬r21,r22・・・r2nを受信したか否か判定し、受信していない場合にはリターンする。報酬を受信したと判定した場合にはS780において、受信した報酬に基づいて、TD学習により最適政策π*に従った行為(a21,a22・・・a2i)を求める。この行為a2iは、受け取った報酬r2iが満足できるものでなければ、他の会社DAOデジタルツイン(例えば、図45の株式会社ABCのDAOデジタルツイン59)に移る(転職する)ものも含む。この強化学習の結果、組立担当パーソナルAIの各々は、前述のパフォーマンスp2を増加させる行為を学習することになる。
In S779, it is determined whether or not rewards r21, r22, . . . r2n have been received from the
次に、S694に示した宣伝担当パーソナルAI強化学習処理の詳細を図59(A)に基づいて説明する。宣伝担当パーソナルAI群86は、S784において、内部打合せするか否か判定し、しない場合は制御がS789に進む。打合せすると判定した場合はS785において、各宣伝担当パーソナルAIが内部打合せを行いながら行為a5を決定する。次に、S787において、消費者への行為a2を実行する。S788において、打合せが終了いたか否か判定し、未だ終了していない場合にはS785に戻り、S786→S787→S788のループを巡回する。S788により打合せ終了と判定された段階で制御がS789に進む。
Next, details of the advertising personal AI reinforcement learning process shown in S694 will be explained based on FIG. 59(A). The advertising
S789において、宣伝エレメントエージェント82から報酬r51,r52・・・r5jを受信したか否か判定し、受信していない場合にはリターンする。報酬を受信したと判定した場合にはS790において、受信した報酬に基づいて、TD学習により最適政策π*に従った行為(a51,a52・・・a5j)を求める。この行為a5iは、受け取った報酬r5iが満足できるものでなければ、他の会社DAOデジタルツイン(例えば、図45の株式会社ABCのDAOデジタルツイン59)に移る(転職する)ものも含む。この強化学習の結果、宣伝担当パーソナルAIの各々は、前述のパフォーマンスp5を増加させる行為を学習することになる。
In S789, it is determined whether the rewards r51, r52, . . . r5j have been received from the
次に、S695に示した販売担当パーソナルAI強化学習処理の詳細を図59(B)に基づいて説明する。販売担当パーソナルAI群87は、S791において、内部打合せするか否か判定し、しない場合は制御がS795に進む。打合せすると判定した場合はS792において、各販売担当パーソナルAIが内部打合せを行いながら行為a9を決定する。次に、S793において打合せが終了いたか否か判定し、未だ終了していない場合にはS792に戻り、S792→S793→S792のループを巡回する。S793により打合せ終了と判定された段階で制御がS794に進む。S794において、上記打合せで決定された行為を消費者及び店舗に対し実行する。
Next, details of the salesperson personal AI reinforcement learning process shown in S695 will be explained based on FIG. 59(B). In S791, the sales
次に、S795において、販売エレメントエージェント83から報酬r91,r92・・・r9mを受信したか否か判定し、受信していない場合にはリターンする。報酬を受信したと判定した場合にはS796において、受信した報酬に基づいて、TD学習により最適政策π*に従った行為(a91,a92・・・a9m)を求める。この行為a9iは、受け取った報酬r9iが満足できるものでなければ、他の会社DAOデジタルツイン(例えば、図45の株式会社ABCのDAOデジタルツイン59)に移る(転職する)ものも含む。この強化学習の結果、販売担当パーソナルAIの各々は、前述のパフォーマンスp9を増加させる行為を学習することになる。
Next, in S795, it is determined whether or not the rewards r91, r92, . . . r9m have been received from the
シミュレーション強化学習が終了したエレメント統合DAOは、リアルワールド47において実際の組織として運用される。その段階では、図46の「各パーソナルAI群84~87」をリアルワールドにおける実際の人間(ユーザ)が担当することとなる。その際に、シミュレーション強化学習済みの各パーソナルAI群84~87が実際の人間(ユーザ)の相談役となり、シミュレーション強化学習によって得た知識・経験・ノウハウを実際の人間(ユーザ)に提供することができる。
The element integrated DAO that has undergone simulation reinforcement learning is operated as an actual organization in the
以上説明したエレメント統合DAOの構築は、会社やNPOや地方自治体等の組織全体を、機能別のエレメントDAOの組み合わせで作成するものを示したが、組織全体ではなく組織の一部(例えば資材調達)のみをエレメントDAOで構築するようにしてもよい。 The construction of an element integrated DAO explained above shows that the entire organization such as a company, NPO, or local government is created by combining element DAOs according to functions. ) may be constructed using element DAO.
ユーザ端末16等及び各種サーバで動作する前述したプログラムは、所定のウェブサイト等からダウンロードしてインストールしてもよいが、例えばCD-ROM99等の記録媒体(非一時的(non-transitory)な記録媒体)に記録させて流通させ、そのCD-ROM99等を購入した者がプログラムをユーザ端末16及び各種サーバにインストールしてもよい(図60参照)。
[変形例]
The aforementioned programs that run on the
[Modified example]
(1) 例えば、図29に示したデジタルツインデータにおける太郎、次郎、桜、三郎等の氏名は、個人情報保護の観点から仮名(匿名)を用い、同一人物であるとの同定はできるが特定の個人を特定できないようにしてもよい。その場合に、AI識別番号またはブロックチェーンアドレスを仮名(匿名)として用いてもよい。同様に、株式会社ABC等のデジタルツインも、会社名(組織名)に仮名(匿名)を用い、同一会社(同一組織)であるとの同定はできるが特定の会社(組織)を特定できないようにしてもよい。また、人間のデジタルツインは、1人の人間に対し複数のパーソナルAIによる複数のデジタルツインを用意してもよい。さらには、1人の人間における1つのデジタルツインを複数のパーソナルAIの集合(例えば、各種分野における専門的パーソナルAIの集合等)で構成してもよい。 (1) For example, the names of Taro, Jiro, Sakura, Saburo, etc. in the digital twin data shown in Figure 29 are pseudonyms (anonymous) from the perspective of protecting personal information, and although it is possible to identify them as the same person, they are not specific. It may be possible to make it impossible to identify individuals. In that case, the AI identification number or blockchain address may be used as a pseudonym (anonymous). Similarly, digital twins such as ABC Co., Ltd. use pseudonyms (anonymous) for the company name (organization name), and although it is possible to identify the same company (same organization), it is difficult to identify a specific company (organization). You can also do this. Furthermore, for a human being, a plurality of digital twins may be prepared by a plurality of personal AIs for one person. Furthermore, one digital twin of one person may be composed of a set of multiple personal AIs (for example, a set of professional personal AIs in various fields, etc.).
(2) 図34~図59では、役務が複数種類存在するマルチ役務DAOを例にしてシミュレーションを行うことにより、DAOにおけるインセンティブ設計の最適解を導き出すシステムを説明したが、マルチ役務DAOに限らず、役務が1種類しか存在しないDAOについて、シミュレーションによるインセンティブ設計の最適解を導き出すシステムであってもよい。 (2) In Figures 34 to 59, we have explained a system that derives the optimal solution for incentive design in a DAO by performing simulations using a multi-service DAO where multiple types of services exist as an example, but it is not limited to multi-service DAOs. , it may be a system that derives an optimal solution for incentive design through simulation for a DAO in which only one type of service exists.
(3) 図35では、ペルソナ毎に学習済みのペルソナエージェント群を生成しているが、ペルソナ毎に属するユーザ群の各のパーソナルAIを、ミラーワールド51に登録されている既存のパーソナルAI群の中から選んでペルソナエージェント群として用いてもよい。この場合は、ペルソナ毎に属するユーザ群に対し、パーソナルAIをシミュレーションに用いてもよいか否か問合わせ、用いてもよいとの承諾を得ておく必要がある。承諾を得たユーザ群の各パーソナルAIをコピーしてシミュレーションに用い、シミュレーション完了後の学習済みパーソナルAI群を該当する各ユーザに送信する。それを受信した各ユーザは、学習済みパーソナルAIが有用(必要)であると判断した場合に、既存のパーソナルAIに対し学習済みパーソナルAIを上書き保存する。なお、既存のパーソナルAIと学習済みパーソナルAIとの両者を共に記憶しておき、必要に応じて使い分けるようにしてもよい。 (3) In FIG. 35, a trained persona agent group is generated for each persona, but each personal AI of the user group belonging to each persona is You may choose one from among them and use it as a group of persona agents. In this case, it is necessary to inquire of the user group belonging to each persona whether or not personal AI may be used in the simulation, and to obtain consent to use the personal AI. Each personal AI of the user group for which consent has been obtained is copied and used in the simulation, and the learned personal AI group after the simulation is completed is sent to each corresponding user. When each user who receives the learned personal AI determines that the learned personal AI is useful (necessary), the learned personal AI is overwritten and saved on the existing personal AI. Note that both the existing personal AI and the learned personal AI may be stored together and used separately as necessary.
(4) マルチエージェント強化学習として、全体最適化を担う統括エージェント(マスターエージェント)が各エージェントに報酬の配分を行うと共に統括エージェント自身も強化学習を行って報酬配分の行為を最適なものに収束させるマスターエージェント方式を示した。しかし、マルチエージェント強化学習としては、これに限定されるものではなく、例えば、マルコフ決定過程の下で最適解に収束することができるD-learning、あるいは、Classifier Systemにおける強化学習アルゴリズムとしてのBucket BrigadeやProfit Sharingを用いてもよい。 (4) As multi-agent reinforcement learning, a supervising agent (master agent) responsible for overall optimization allocates rewards to each agent, and the supervising agent itself also performs reinforcement learning to converge the reward distribution behavior to the optimal one. The master agent method was demonstrated. However, multi-agent reinforcement learning is not limited to this, for example, D-learning that can converge to an optimal solution under a Markov decision process, or Bucket Brigade as a reinforcement learning algorithm in a classifier system. or Profit Sharing may be used.
(5) デジタルツインを用いたシミュレーションとしては、人または人によって構成された組織(例えば株式会社やNPO等)のデジタルツインに限定されない。例えば、AI搭載の機械や電気製品等のオブジェクト(例えばAI搭載掃除機)において、当該オブジェクトが動作する環境(例えば、自立して移動するAI搭載掃除機が動作するユーザ宅の室内)のデジタルツインをサイバー空間内に生成し、その環境デジタルツイン内でオブジェクトに搭載されているAIを事前にシミュレーションして強化学習(機械学習)させ、そのカスタマイズ(パーソナライズ)された学習済みAI搭載のオブジェクトを該当するユーザに提供するようにしてもよい。 (5) Simulations using digital twins are not limited to digital twins of people or organizations made up of people (for example, corporations, NPOs, etc.). For example, for an object such as an AI-equipped machine or electrical product (e.g., an AI-equipped vacuum cleaner), a digital twin of the environment in which the object operates (e.g., the room in the user's home where an independently moving AI-equipped vacuum cleaner operates) is generated in cyberspace, the AI installed on the object is simulated in advance in the digital twin environment, subjected to reinforcement learning (machine learning), and the customized (personalized) object equipped with the learned AI is applied to the object. It may also be provided to users who do so.
記録された情報の真正の保証とその情報の削除権の保証とが二律背反するジレンマを極力解消することができるため、ブロックチェーン等の消去不可能性を有する情報記録方式に対し利用できる。 Since it is possible to eliminate as much as possible the dilemma in which guaranteeing the authenticity of recorded information and guaranteeing the right to delete that information are contradictory, it can be used for information recording systems that cannot be erased, such as blockchain.
1 インターネット
2 プライベートチェーン
3 コンソーシアムチェーン
4 パブリックチェーン
12 HDD
16 ユーザ端末
19 ノード
30 鍵登録センタ
32 鍵DB
46 ミラーワールドサーバ
51 ミラーワールド
52 地球デジタルツイン
53 日本デジタルツイン
54 町デジタルツイン
57 太郎デジタルツイン
58 太郎一家デジタルツイン
59 株式会社ABCデジタルツイン
61 DAOエージェント
72 トークン
78 DAOデジタルツイン
79 統括エージェント。
1
16
46
Claims (2)
ユーザの個人情報を暗号化した暗号化個人情報を格納している個人情報格納手段と、
前記暗号化個人情報を暗号化したまま検索を可能にするための検索可能化手段と、
前記検索可能化手段による検索の結果希望する個人情報がある場合に、当該個人情報の希望者と当該個人情報を提供する本人との間での合意のもと取引を成立させて当該個人情報を希望者に提供する取引実行手段と、を備え、
前記検索可能化手段は、
前記暗号化個人情報をキーワード検索するための索引であるインデックスを共通鍵により暗号化する暗号化処理が施された暗号化インデックスをブロックチェーンに記録する暗号化インデックス記録手段と、
検索に用いるキーワードである検索クエリを前記共通鍵により暗号化する暗号化処理が施された暗号化検索クエリを用いて、前記暗号化インデックスを検索する検索手段と、を含み、
前記取引実行手段は、
希望者に提供した個人情報を希望者が閲覧可能にする閲覧可能化手段と、
前記個人情報を提供する本人の意思に従った取引条件が満たされた場合に当該個人情報の取引をスマートコントラクトを用いて行うスマートコントラクト処理手段と、を含み、
前記スマートコントラクト処理手段により行われた取引をブロックチェーンに記録する記録手段をさらに備える、個人情報処理システム。 A computer system that processes personal information,
a personal information storage means storing encrypted personal information obtained by encrypting the user's personal information;
search enablement means for making the encrypted personal information searchable while encrypted;
If the desired personal information is found as a result of the search using the search enablement means, a transaction is concluded between the person requesting the personal information and the person providing the personal information, and the personal information is transferred. A transaction execution means provided to those who wish to do so;
The search enablement means includes:
an encrypted index recording means for recording on a blockchain an encrypted index that has been subjected to an encryption process of encrypting an index for keyword searching the encrypted personal information using a common key;
a search means for searching the encrypted index using an encrypted search query that has been subjected to an encryption process of encrypting a search query that is a keyword used for the search with the common key,
The transaction execution means is
A means for making personal information provided to the applicant available for viewing by the applicant;
a smart contract processing means that uses a smart contract to transact the personal information when transaction conditions according to the intention of the person providing the personal information are satisfied;
A personal information processing system further comprising recording means for recording transactions performed by the smart contract processing means on a blockchain.
ユーザの個人情報を暗号化した暗号化個人情報を格納するステップと、
前記暗号化個人情報を暗号化したまま検索を可能にするための検索可能化ステップと、
該検索可能化ステップによる検索の結果希望する個人情報がある場合に、当該個人情報の希望者と当該個人情報を提供する本人との間での合意のもと取引を成立させて当該個人情報を希望者に提供する取引実行ステップと、を含み、
前記検索可能化ステップは、
前記暗号化個人情報をキーワード検索するための索引であるインデックスを共通鍵により暗号化する暗号化処理が施された暗号化インデックスをブロックチェーンに記録する暗号化インデックス記録ステップと、
検索に用いるキーワードである検索クエリを前記共通鍵により暗号化する暗号化処理が施された暗号化検索クエリを用いて前記暗号化インデックスを検索する検索ステップと、を有し、
前記取引実行ステップは、
希望者に提供した個人情報を希望者が閲覧可能にする閲覧可能化ステップと、
前記個人情報を提供する本人の意思に従った取引条件が満たされた場合に当該個人情報の取引をスマートコントラクトを用いて行うスマートコントラクト処理ステップと、を有し、
前記スマートコントラクト処理ステップにより行われた取引をブロックチェーンに記録する記録ステップをさらに含む、個人情報提供方法。 A method of providing personal information using a computer,
storing encrypted personal information obtained by encrypting the user's personal information;
a search enablement step for making the encrypted personal information searchable while encrypted;
If the desired personal information is found as a result of the search in the search enablement step, a transaction is concluded between the person requesting the personal information and the person providing the personal information, and the personal information is transferred. A transaction execution step provided to a person who wishes to do so;
The searchability step includes:
an encrypted index recording step of recording on a blockchain an encrypted index that has been subjected to an encryption process of encrypting an index for keyword searching the encrypted personal information using a common key;
a search step of searching the encrypted index using an encrypted search query that has been subjected to an encryption process of encrypting a search query that is a keyword used for the search with the common key,
The transaction execution step includes:
a viewing enablement step for allowing the applicant to view the personal information provided to the applicant;
a smart contract processing step for performing a transaction of the personal information using a smart contract when transaction conditions according to the intention of the person providing the personal information are satisfied;
A method for providing personal information, further comprising a recording step of recording transactions performed by the smart contract processing step on a blockchain.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2024023394A JP2024045636A (en) | 2019-01-06 | 2024-02-20 | Processing system and program |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019000371 | 2019-01-06 | ||
JP2019000371 | 2019-01-06 | ||
PCT/JP2019/047339 WO2020141584A1 (en) | 2019-01-06 | 2019-12-04 | Management system and program |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2024023394A Division JP2024045636A (en) | 2019-01-06 | 2024-02-20 | Processing system and program |
Publications (3)
Publication Number | Publication Date |
---|---|
JPWO2020141584A1 JPWO2020141584A1 (en) | 2021-11-11 |
JPWO2020141584A5 JPWO2020141584A5 (en) | 2022-07-05 |
JP7446621B2 true JP7446621B2 (en) | 2024-03-11 |
Family
ID=71406834
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020563862A Active JP7446621B2 (en) | 2019-01-06 | 2019-12-04 | Computer system and personal information provision method |
JP2024023394A Pending JP2024045636A (en) | 2019-01-06 | 2024-02-20 | Processing system and program |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2024023394A Pending JP2024045636A (en) | 2019-01-06 | 2024-02-20 | Processing system and program |
Country Status (2)
Country | Link |
---|---|
JP (2) | JP7446621B2 (en) |
WO (1) | WO2020141584A1 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022102106A1 (en) * | 2020-11-13 | 2022-05-19 | 日本電信電話株式会社 | Optimization device, optimization method, and optimization program |
CN112559627B (en) * | 2020-12-11 | 2023-08-04 | 东北大学 | Method for sharing electronic medical record data in cooperation with each other on chain and under chain based on alliance chain |
WO2022230177A1 (en) * | 2021-04-30 | 2022-11-03 | 株式会社KPMG Ignition Tokyo | Management device and management method |
JP7108765B1 (en) * | 2021-08-10 | 2022-07-28 | 金子 賢一 | Information processing method, information processing device, information processing system, and program |
JPWO2023058132A1 (en) * | 2021-10-05 | 2023-04-13 | ||
JP7079539B1 (en) | 2022-01-05 | 2022-06-02 | 株式会社Fuel Hash | Information processing methods, information processing equipment and programs |
CN117521114B (en) * | 2024-01-04 | 2024-05-10 | 金网络(北京)数字科技有限公司 | Data transaction method, system and computer readable storage medium |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003316965A (en) | 2002-04-19 | 2003-11-07 | Omron Corp | Information collecting system, information providing system, intermediary processor, information anomyzing device, program for information providing process and program for information relaying process |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5870477A (en) * | 1993-09-29 | 1999-02-09 | Pumpkin House Incorporated | Enciphering/deciphering device and method, and encryption/decryption communication system |
-
2019
- 2019-12-04 WO PCT/JP2019/047339 patent/WO2020141584A1/en active Application Filing
- 2019-12-04 JP JP2020563862A patent/JP7446621B2/en active Active
-
2024
- 2024-02-20 JP JP2024023394A patent/JP2024045636A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003316965A (en) | 2002-04-19 | 2003-11-07 | Omron Corp | Information collecting system, information providing system, intermediary processor, information anomyzing device, program for information providing process and program for information relaying process |
Non-Patent Citations (1)
Title |
---|
BANERJEE, P. et al.,Blockchain Enabled Data Marketplace - Design and Challenges,arXiv:1811.11462v2 [cs.CR],2018年,pp.1-7,[online], [retrieved on 2023-02-14], Retrieved from <https://arxiv.org/abs/1811.11462v2>,<doi: 10.48550/arXiv.1811.11462> |
Also Published As
Publication number | Publication date |
---|---|
WO2020141584A1 (en) | 2020-07-09 |
JP2024045636A (en) | 2024-04-02 |
JPWO2020141584A1 (en) | 2021-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7446621B2 (en) | Computer system and personal information provision method | |
Zamani et al. | With a little help from the miners: distributed ledger technology and market disintermediation | |
Liu et al. | A blockchain-based framework of cross-border e-commerce supply chain | |
Zhang et al. | The IoT electric business model: Using blockchain technology for the internet of things | |
Brophy | Blockchain and insurance: a review for operations and regulation | |
Shen et al. | Secure sharing of big digital twin data for smart manufacturing based on blockchain | |
Ismanto et al. | Blockchain as E-commerce platform in Indonesia | |
WO2019100084A1 (en) | Decentralized autonomous evaluation engine for intellectual property assets | |
US20200250780A1 (en) | Decentralized Autonomous Evaluation Engine for Intellectual Property Assets | |
CN102870086A (en) | Digital profile system of personal attributes, tendencies, recommended actions, and historical events with privacy preserving controls | |
WO2020177298A1 (en) | Digital asset value management and operation method and apparatus, medium, and computing device | |
CN111936994A (en) | Block chain based document registration for customs clearance | |
Barkel et al. | Blockchain in the hospitality and tourism industry | |
Thakur | A reputation management mechanism that incorporates accountability in online ratings | |
Del Castillo | Foresight Brief | |
Putra et al. | Blockchain for trust and reputation management in cyber-physical systems | |
Aljohani et al. | A framework for a blockchain-based decentralized data marketplace | |
Szabo | Winning strategies for Smart contracts | |
US12032513B2 (en) | Data control, management, and perpetual monetization control methods and systems | |
Yang et al. | Accountancy for E-Business Enterprises based on cyber security | |
Li et al. | Blockchain-based credible and privacy-preserving QoS-aware web service recommendation | |
Sharma et al. | Blockchain-based Feedback System using NFT in e-Commerce | |
Mattarocci et al. | The evolution of proptech | |
Kadir et al. | Getting to know Non-Fungible Tokens (NFT) and Decentralized Finance (DeFi) In The Era of Society 5.0 | |
KR102648915B1 (en) | System for trading asset based on blockchain and control method therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211228 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220623 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220624 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230220 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230414 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230601 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230907 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20231101 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240104 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240123 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240123 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240220 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7446621 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |