Python NumPyで三角関数の合成

正弦関数と余弦関数の合成のグラフも簡単に作れます。

 

荒ぶる正接関数のグラフ

 

sin(x)同士でかけ合わせることで、-同士の掛け算だから-がなくなります。
周期も1/2になっているね。

 

sinxとcosxの積は1/2sin2xになりました、
sinxと比べて、振幅が1/2で、周期は2倍早くなっています。

 

一見複雑ですが、広く見ると周期しています。

 

 

 

 

 

 

 

PowerPointマクロ 総スライド

 

会社のパワポのひな形に入っているマクロ
たまにマクロが消えていたりするのでバックアップとしてメモ

 

テイラー展開+マクローリン展開で近似

 

テイラー展開

元の式 = 1階微分+2階微分 + ・・・ n階微分した総和

 

数があまりに小さい時に近似として使える。
物理学・統計学、三角関数等を簡単な近似の式にする。

 

 

exp)
(1.008)^20

 

0次近似


1.008^20はほとんど1と同じという考え

1.008^20
≒ 1^20
≒ 1

 

1次近似

(1.008)^20 = (1 + 0.008)^20
≒ (1 + x)^20とします。

近似にする手段として接線の公式を利用します。
f(x) = f'(a)/1!(x-a) + f(a)

(1 + x)^20 = 20(1 + a)^19/1! × (x -a) + (1 + a)^20

 

 

 

マクローリン展開

計算を簡単にする為にaが0の時で計算してみる、
原点周りでの展開で簡単にすること=マクローリン展開

a=0とすると、
20(1 + 0)^19 × (x – 0) + (1 + 0)^20
= 20×1^19 × x + 1
= 20x +1

 

xが0.008だから、

= 20 × 0.008 + 1
= 0.16 + 1
=1.16

(1.008)^20の0の周りのテイラー展開での1次近似は1.16

(1.008)^20をまともに計算すると下記
1.17276404348

1.1727… ≒ 1.16

 

 

また、高次の導関数を考慮すると、近似はより近くなる。

 

 

2次近似

 

f(x) = f'(a)/1!(x-a) + f'(a)/2!(x-a)^2 + f(a)

(1 + x)^20 = 20(1 + a)^19/1! × (x -a) + 20 × 19(1 + a)^18/2! × (x -a) + (1 + a)^20

 

マクローリン展開
(1 + x)^20 = 20(1 + 0)^19/1! × (x – 0) + 19(1 + 0)^18/2! × (x -0)^2 + (1 + 0)^20
= 20x + 19/2! × x + 1
= 20x + 9.5x^2 + 1

f(0.008) = 20 × 0.008 + 9.5 × 0.008^2 + 1
=1.160608

 

 

 

隠す方法

 

  • 忘れる
    忘れる、記憶を消す。記憶しない。
    解除方法を自身では記憶せず、時限式のメールなどでリマインドさせる
  • 意味ありげなブラフ
    ばれても良い真実を分かりやすい嘘で隠しておくことで、そちらに注意を向け、本当に隠したい真実に目を向けさせないことで隠ぺいする。
  • アカウント
    ID+パスワード1+パスワード2
  • 暗号
    手紙であるなら、書体の止め跳ねに暗号を仕込む。
  • 暗号化+ツール
    複合ツールを通すことで解読
    コンパイル、QRコード…etc
  • 難読化
    解読に時間をかかる形式にする。プログラム。シュレッダー。
  • 多数
    木を森に隠す、ダミーであふれさせる。
  • 秘密キー
    コンピュータの総当たりでは破れない鍵で管理する。+IDマネージャ。
  • 条件の指定
    生体認証、IPアドレス…etc
  • 複数の手順や認証
    2重、3重の手順や認証を踏まないと解除されないようにする
  • 物理的な末梢
    溶かす、燃やす。刻む、埋める、腐らせる。風化。壊す。
  • 視覚のトリック
    透かす、炙る、目を細めたり、距離、一定の角度からしか見せたいものを見えないようにする
  • 委託
    銀行の貸金庫など、セキュリティの高いサービスを利用し外部保管
  • 埋める
    床下、山、深海、砂漠、工事現場、埋め立て、ごみ山、宇宙。
  • 履う
    ファンデーション、壁に隠す。
  • ピース化+散布
    パズル。ドラゴンボール, 刺青囚人
  • 隠れんぼ
    隠したい対象が人であるなら、本人に隠れて貰う、こちらは情報を操作する。
    あるいは、第三者に金銭を渡して隠したいものを託し逃げて貰う。

 

 

 

 

 

交渉戦略マトリクス

 

交渉する時に意識する利害

 

  • 共通利害
    特に共通する利害に着目して考える、Win-Winを目指した交渉がしやすくなる。
    戦略的交渉ではこれが重要
  • 対立利害

 

手順

  1. 共通する利害と、対立する利害について箇条書きで分類する
  2. 相手との関係性を見極める

 

 

 

対人ゲームのコツ

 

  • すべての対人ゲームは、相手のことをいかに想い愛するか。
    相手の立場になって相手に憑依したように予想する、愛の深さが問われる。相手がしたいことを理解して、それに勝つ手を繰り出す。
  • 相手の思考を1秒1秒感じること、その時点からゲームのスタートラインに立てる
    自分がしたいこと、自分の利益を考えるだけではゲームには勝てない、それでは相手に読まれる。
  • 相手の手札を操作する
    実際のゲームはじゃんけんのように3すくみの確率ゲームではなくて、相手にパーしか出させない、パーを出させるといった誘導が出来る。

 

 

戦略マトリクス

契約失敗リスク  高 関係性重視
Lose-Win
戦略的交渉
Win-Win
契約失敗リスク 低 自動更新
(交渉しない)
Lose-Lose
利益重視
Win-Lose
利益 小 利益 大

 

  • 関係性重視
    こちらが折れて、利益が少なくとも関係性を維持する
  • 自動更新
    交渉自体しない、現状維持。
  • 戦略的交渉
    共通利害に着目して、戦略的にWin-Winになるような提案を行い交渉を進める
  • 利益重視
    相手がこちらに依存しなければいけない状態
    この場合は利益重視の強気の交渉が可能
    ただし、相手の弱みに付け込むやり方は控える、恨みを買うのは避けなければいけない。Win-Winに近い形で、提供する付加価値に対して対価を気持ちよく払って貰うように努める、花を持たせる。関係の有利さにいわせてその場で相手に「YES」と言わせても、長期的に良い関係は築けない、それは意味がない。

 

相手との共通利害/対立利害、関係の強弱やケースにより、
交渉スタイルの場合分けが大切。

 

 

最低ラインを引く

 

交渉の前に、交渉のゴールを明確にし絶対に譲れない最低ラインを引く。
最低ラインに達した場合は交渉自体から降りるようにする。

最低ラインを決めておけば、相手との交渉に一喜一憂しないで冷静でいられる。
どんなに相手がやり手の交渉相手だったとしても、最低ラインまでは譲歩を行うことが出来る。

 

 

 

@see https://www.youtube.com/watch?v=qAcCdv5PlGU

PHP+Redis ランキング作成

Redis+PHPでランキングを簡単作成

寄稿しました。

 

 

必要なものをインストール

 

 

ranking.php

 

 

実行結果

 

 

n回試行し続けた時の成功確率

 

10%しかない成功確率でも、10回挑戦してすべて失敗する確率は34.86%

全事象からすべて失敗する確率を引くと、
n回試行した時に1度は成功する確率が63.22%

 

n回試行し続ける限り、63%の確率で1度は成功する。
試行する限り常に成功する可能性の方が大きい(۶•̀ᴗ•́)۶

 

  • 試行回数を増やすこと
  • 試行回数を増やすには
    小さくたくさん失敗して、小さな成功から成功を大きくする。

 

 

PHP Cache_Lite

PHP Cache_Lite オブジェクトキャッシュでデータベースによろしく

寄稿しました。

 

 

NoSQLのRedis等もありますが、小~中規模なものだと静的なキャッシュの方が、お客様も扱いやすいかと考えています。

 

環境

  • CentOS7

 

環境を整えよう

 

WEB+DB+PHPのインストール

 

文字化け防止設定をしようね

 

MariaDBを起動させよう。

 

DBとDBユーザ、テーブルを作ろう。

 

 

データのインサート

 

レコードの確認をしようね。

きちんと、レコードが入っていますね。

 

用事は済んだからログアウトしよう

バイ!

 

 

Composerの導入

 

 

Cache Liteを導入しよう

 

Composerからインストールしようね

 

状況確認しよう

Composerのファイルがあるし、大丈夫そうだね。

 

キャッシュ格納ディレクトリを作ろう

 

 

実際にCache Liteを使ってみよう!

 

staff.php

 

 

 

 

 

二分探索(バイナリーサーチ) PHP

 

binarySearch.php

 

 

 

表示結果

 

 

 

ブレスト 発散と収束

 

はじめに、

 

複数人でのブレストの有効性は懐疑的です、会議にかける人件費やリソースとして考えると贅沢ですよね。お酒の肴として盛り上がるには良いかと思いますけども。情報を集めて、データを精査して、一人で机に向かって集中して考えた方が質の良いアイデアが出てくると考えています。

つまり、議題を周知して事前に各自で1人ブレストを行い、企画にするのがおすすめです。その上で、会議で出来上がった企画を発表し、ぶつけあった上で精査して仕上げるほうが効率的で良いと考えています。そうすれば会議の時間を大幅に短縮でき、より価値のあることに会議の時間を使えます。

 

発散

  • 初めに会議の要点を周知する
    目的ゴールを共有しよう、
  • 時間を設定する
    だらだら行うのを予防する

 

『これから、○○についての売上アップについてのアイデア出しを1時間行います、その後に休憩を挟み、1時間でエバリュエーションを行い、アイデアを3本に絞ります。』

  • 付箋を配ってアイデアを書いて貰う(KJ法)
  • アイデアを発表する
  • 質より量で発散させる、未完成のアイデアで良い
  • 出たアイデアを互いに褒め合い、発展させることに努める

@see KJ法

質より量でアイデア出しを行う、アイデアをこの時にアイデアの批判はNG。いいねっと盛り上げていく。アイデアの駄目出しについてはエバリューエーション(収束)で行う。

 

出たアイデアは付箋とし、
小、大とグルーピングしたり、優先順位や位置関係を変化させて、連携、出たアイデアを掛け算して飛躍させる。

 

アイデアの出し方は、KJ法だけでなく、5行大義を使ったものや、色々な方法を試すと良い。

 

 

発散の後の収束を行う前に休憩を必ず挟むこと。

 

収束(エバリュエーション)

 

それぞれのアイデアを論じて、時間内に採用するアイデアを決める。

付箋をホワイトボードに張って、収束させる。

 

『採用するアイデアはこの3本に決定します、発案者の3人はそれぞれのアイデアを企画書にして6月18日までに提出して下さい。お疲れ様です。』

 

プリントサーバについて今言えること

 

結論

 

結論として、

ローカルのネットワークプリンタで良い
クライントPC追加時にドライバ配布の手間はかかるけれども、
これはマニュアル作成してお客さんに配布すれば良いですね。

 

根拠

 

根拠は2点あります。

  1. サーバ管理をなくすことが出来る
  2. プリンタの利用が出来ない障害は意外にクリティカルな為

 

だから、ローカルのネットワークプリンタで良いと考えています。

 

場合別け

 

  • 社内に管理者がいて、利用人数が少ない
    ⇒プリントサーバもあり
  • 拠点間接続あり
    ⇒ローカルのネットワークプリンタ

単一拠点かつ、Windows Server管理者が社内にいる場合は導入もあり。

 

 

 

プリントサーバのメリット

 

  • サーバ1つにドライバーを入れれば、配布出来る
    手間がかからない。

 

 

プリントサーバのデメリット

 

  • 大きいデータを印刷すると遅くなる
  • サーバが死ぬと即時にプリンターが社内で使えなくなる
  • サーバ管理が増える

 

 

ゲーム理論 囚人のジレンマ 非協力ゲーム

 

状況

  • 強盗での共犯容疑がかかっている囚人2人に、司法取引を使い自白をさせる。
  • 強盗容疑は状況証拠のみで、一切決定的な証拠が見つかっていない、
    囚人2人に黙秘されると不法侵入でしか立件できない、それは囚人もわかっている。
  • 囚人はそれぞれの部屋で隔離して収監され、囚人同士は互いに連絡を取ることは出来ないとする。

 

司法取引の条件

  • 相手が黙秘し、お前が自白すれば無罪
  • 相手が自白し、お前が黙秘したら懲役20年
  • 二人とも黙秘で、証拠不十分により懲役1年
  • 二人とも自白したら懲役3年

 

自分が囚人Aとして考える

囚人A↓/ 囚人B → 黙秘する 自白する
黙秘する ベター
囚人A
ベター
囚人B
囚人A
×
囚人B
自白する 囚人A
囚人B
×
合理的選択
囚人A

(ここに落ち着く)
合理的選択
囚人B

(ここに落ち着く)

 

囚人Aにとって、最悪なパターンは自分が黙秘して相手が自白し懲役20年になること。
最悪を避ける行動、利己を考えると裏切って自白するのが合理的選択になる。
⇒譲歩の取引条件を囚人につけた上で、囚人に自白を誘導することができる

 

ジレンマを避けるには?

 

囚人同士で事前に黙秘する取り決めを行っておく、
それなら黙秘するという選択肢を取ることが出来る。

 

囚人のジレンマが教えてくれること

 

黙秘することが最適であることにも関わらず相手の意思決定が不確実な場合に互いに他の選択肢、ベターな選択肢を取れないことが、現実社会には多々あるということ。

 

パレート最適
exp)黙秘 × 黙秘 = 懲役1年
他社を犠牲にせずに、利己にも良い。最適化された状態

 

ナッシュ均衡
exp)自白 × 自白 = 懲役3年
お互いの利益を損ねない為に、他の選択肢を取れない均衡した状態

 

 

マーケティングへの応用

応用①

 

企業間で付加価値が近い商品において、より廉価であることは競争において重要です。

原料費の高騰でライバル会社達は、商品価格を引き上げることがわかった。
自社は値段を据え置きとする。
他社を出し抜き、販売数やシェアを取れる

 

応用②

 

出版業界と本屋は再販制度を結んで、ベターな選択肢を取ることが出来ている

 

 

応用③

 

某携帯会社3社の競争
値下げなどで過度な競争を行わず3社間で利益の最大化を行っている。